Feed of "Polyphony"https://codeberg.org/polyphony2026-05-11T21:40:54Z<p dir="auto">Providing free, open source communications technology and standards</p>
ava pushed to flori/oidc-introduction at polyphony/polyproto-rs2026-05-09T19:27:23Z135495435: https://codeberg.org/polyphony/polyproto-rs/commit/56d326c5cb9576b5bc8c6fdca638361208840d56<a href="https://codeberg.org/polyphony/polyproto-rs/commit/56d326c5cb9576b5bc8c6fdca638361208840d56" rel="nofollow">56d326c5cb9576b5bc8c6fdca638361208840d56</a>
chore: update reqwest, add openid<a href="https://codeberg.org/polyphony/polyproto-rs/commit/56d326c5cb9576b5bc8c6fdca638361208840d56">56d326c5cb9576b5bc8c6fdca638361208840d56</a>
chore: update reqwest, add openidava[email protected]ava created branch flori/oidc-introduction in polyphony/polyproto-rs2026-05-09T19:27:23Z135495432: https://codeberg.org/polyphony/polyproto-rs/src/branch/flori/oidc-introductionava[email protected]ava pushed to feature/oidc at polyphony/polyproto-rs2026-05-09T16:29:56Z135419031: https://codeberg.org/polyphony/polyproto-rs/src/branch/feature/oidcava[email protected]ava created branch feature/oidc in polyphony/polyproto-rs2026-05-09T16:29:56Z135419004: https://codeberg.org/polyphony/polyproto-rs/src/branch/feature/oidcava[email protected]ava opened issue polyphony/polyproto-dot-org#1752026-05-09T14:39:59Z135377472: https://codeberg.org/polyphony/polyproto-dot-org/issues/175<p dir="auto">Compression + encryption is potentially a very tricky thing to get right. Handling these operations incorrectly, or not considering them further at all, can lead to encrypted ciphertext being vulnerable to the BREACH and/or CRIME attacks.</p>
<p dir="auto">polyproto-core does deal with encryption somewhat, and polyproto-mls most definitely will. It must be figured out how to proceed with these things in mind.</p>
175#BREACH and CRIME and DEATH and PESTILENCE#ava[email protected]ava opened issue polyphony/typespec-openapi#1862026-05-09T14:01:58Z135365556: https://codeberg.org/polyphony/typespec-openapi/issues/186<p dir="auto">This nix-based CI does not yet have attic configured for it. As such, it doesn't benefit from any sort of additional caching.</p>
186#CI: Add attic cache#ava[email protected]cyrneko commented on issue polyphony/polyproto-rs#1032026-05-09T08:48:27Z135248793: https://codeberg.org/polyphony/polyproto-rs/issues/103#issuecomment-14542773PAW-2026-0008: Capabilities
<p dir="auto">am working on it, typespec hardd,</p>
PAW-2026-0008: Capabilities
<p dir="auto">am working on it, typespec hardd,</p>
cyrneko[email protected]ava closed issue polyphony/polyproto-rs#902026-05-09T00:19:47Z135110451: https://codeberg.org/polyphony/polyproto-rs/issues/90#issuecomment-14520228So long: Take `Constrained` out backSo long: Take `Constrained` out backava[email protected]ava closed issue polyphony/polyproto-rs#582026-05-09T00:19:46Z135110421: https://codeberg.org/polyphony/polyproto-rs/issues/58#issuecomment-14520225`Constrained` impl for `Name` allows common name for `Target::HomeServer``Constrained` impl for `Name` allows common name for `Target::HomeServer`ava[email protected]ava opened issue polyphony/polyproto-rs#1112026-05-09T00:15:29Z135109293: https://codeberg.org/polyphony/polyproto-rs/issues/111<p dir="auto">Acquire and validate OAuth2 opaque tokens</p>
111#Opaque Token Validation#ava[email protected]ava commented on issue polyphony/polyproto-rs#1032026-05-09T00:12:46Z135106182: https://codeberg.org/polyphony/polyproto-rs/issues/103#issuecomment-14520069PAW-2026-0008: Capabilities
<p dir="auto">Needs more info: API unclear <a href="/cyrneko" class="mention" rel="nofollow">@cyrneko</a></p>
PAW-2026-0008: Capabilities
<p dir="auto">Needs more info: API unclear <a href="/cyrneko" class="mention" rel="nofollow">@cyrneko</a></p>
ava[email protected]ava opened issue polyphony/polyproto-rs#1102026-05-09T00:06:37Z135100866: https://codeberg.org/polyphony/polyproto-rs/issues/110<p dir="auto">Parse OAuth2 JWTs (ID tokens and auth tokens) and validate them securely</p>
110#JWT Parsing & Validating#ava[email protected]ava opened issue polyphony/polyproto-rs#1092026-05-09T00:03:27Z135099510: https://codeberg.org/polyphony/polyproto-rs/issues/109<p dir="auto"><a href="https://polyproto.org/docs/protocols/core/#412-oidc-scopes" rel="nofollow">https://polyproto.org/docs/protocols/core/#412-oidc-scopes</a></p>
109#OIDC Scopes#ava[email protected]ava opened issue polyphony/symfonia#1032026-05-08T13:29:26Z134889048: https://codeberg.org/polyphony/symfonia/issues/103103#PAW-2026-0001: Authenticate to own home server with OIDC and SCIM #80#103#PAW-2026-0001: Authenticate to own home server with OIDC and SCIM #80#ava[email protected]doesnm commented on issue polyphony/sonata#802026-05-08T06:10:55Z134750427: https://codeberg.org/polyphony/sonata/issues/80#issuecomment-14480052PAW-2026-0001: Authenticate to own home server with OIDC and SCIM
<p dir="auto">there is already a PR for this PAW: <a href="/polyphony/sonata/issues/45" class="ref-issue" rel="nofollow">#45</a></p>
PAW-2026-0001: Authenticate to own home server with OIDC and SCIM
<p dir="auto">there is already a PR for this PAW: <a href="/polyphony/sonata/issues/45" class="ref-issue" rel="nofollow">#45</a></p>
doesnm[email protected]ava opened issue polyphony/sonata#802026-05-07T22:37:06Z134622278: https://codeberg.org/polyphony/sonata/issues/80<p dir="auto">Blocked by <a href="https://codeberg.org/polyphony/polyproto-rs/issues/108" rel="nofollow">https://codeberg.org/polyphony/polyproto-rs/issues/108</a></p>
80#PAW-2026-0001: Authenticate to own home server with OIDC and SCIM#ava[email protected]ava opened issue polyphony/polyproto-rs#1082026-05-07T22:36:56Z134622242: https://codeberg.org/polyphony/polyproto-rs/issues/108<ul dir="auto">
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="2"/><a href="https://codeberg.org/polyphony/polyproto-rs/issues/109" rel="nofollow">OIDC Scopes</a></li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="78"/><a href="https://codeberg.org/polyphony/polyproto-rs/issues/110" rel="nofollow">JWT Parsing & Validating</a></li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="167"/><a href="https://codeberg.org/polyphony/polyproto-rs/issues/111" rel="nofollow">Opaque Token Validation</a></li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="255"/>Login on OIDC IdP: Basic</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="286"/>SCIM Server Primitives</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="315"/>Login on OIDC IdP: Full Login to ID-Cert Flow</li>
</ul>
108#PAW-2026-0001: Authenticate to own home server with OIDC and SCIM#ava[email protected]ava deleted branch flori/draft/oidc from polyphony/polyproto-dot-org2026-05-07T22:32:36Z134620049: https://codeberg.org/polyphony/polyproto-dot-orgava[email protected]ava pushed to main at polyphony/polyproto-dot-org2026-05-07T22:32:35Z134620022: https://codeberg.org/polyphony/polyproto-dot-org/compare/d5a4407fd3b7eeaa68d15cc21853b19f4095aac4...96fad1435aba6f065b54463568988456a9e40d6f<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/96fad1435aba6f065b54463568988456a9e40d6f" rel="nofollow">96fad1435aba6f065b54463568988456a9e40d6f</a>
Merge pull request 'PURR-2026-0001: OIDC+SCIM for home server auth and actor lifecycle management: Ground work' (#104) from flori/draft/oidc into main
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/6e2886d89ad47a8099765d70f28e127f0e9eabef" rel="nofollow">6e2886d89ad47a8099765d70f28e127f0e9eabef</a>
fix: errata, typos, grammatical mistakes
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4" rel="nofollow">c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4</a>
feat(oidc): "sensitive-solution" replacement, based on oidc
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/2996bd5b34f378ddcd1cb487dd65cc175d4d7c67" rel="nofollow">2996bd5b34f378ddcd1cb487dd65cc175d4d7c67</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116" rel="nofollow">37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116</a>
feat(oidc): add note about backchannel logout<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/96fad1435aba6f065b54463568988456a9e40d6f">96fad1435aba6f065b54463568988456a9e40d6f</a>
Merge pull request 'PURR-2026-0001: OIDC+SCIM for home server auth and actor lifecycle management: Ground work' (#104) from flori/draft/oidc into main
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/6e2886d89ad47a8099765d70f28e127f0e9eabef">6e2886d89ad47a8099765d70f28e127f0e9eabef</a>
fix: errata, typos, grammatical mistakes
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4">c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4</a>
feat(oidc): "sensitive-solution" replacement, based on oidc
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/2996bd5b34f378ddcd1cb487dd65cc175d4d7c67">2996bd5b34f378ddcd1cb487dd65cc175d4d7c67</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116">37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116</a>
feat(oidc): add note about backchannel logoutava[email protected]ava merged pull request polyphony/polyproto-dot-org#1042026-05-07T22:32:35Z134619992: https://codeberg.org/polyphony/polyproto-dot-org/pulls/104PURR-2026-0001: OIDC+SCIM for home server auth and actor lifecycle management: Ground workPURR-2026-0001: OIDC+SCIM for home server auth and actor lifecycle management: Ground workava[email protected]ava pushed to flori/draft/oidc at polyphony/polyproto-dot-org2026-05-07T22:24:42Z134618348: https://codeberg.org/polyphony/polyproto-dot-org/commit/6e2886d89ad47a8099765d70f28e127f0e9eabef<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/6e2886d89ad47a8099765d70f28e127f0e9eabef" rel="nofollow">6e2886d89ad47a8099765d70f28e127f0e9eabef</a>
fix: errata, typos, grammatical mistakes<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/6e2886d89ad47a8099765d70f28e127f0e9eabef">6e2886d89ad47a8099765d70f28e127f0e9eabef</a>
fix: errata, typos, grammatical mistakesava[email protected]ava opened issue polyphony/polyproto-dot-org#1742026-05-07T22:08:24Z134612720: https://codeberg.org/polyphony/polyproto-dot-org/issues/174<p dir="auto">Remove the need for a bespoke <code>polyproto-auth</code> protocol extension by mandating OIDC (OpenID Connect) for authentication and SCIM (System for Cross-domain Identity Management) for account lifecycle management on a polyproto home server.</p>
<p dir="auto"><code>polyproto-auth</code> <em>was</em> going to be a separate spec that reinvented a large amount of wheel-shapes. OIDC and SCIM are pre-existing, common, popular, tried and battle-tested specifications which achieve what <code>polyproto-auth</code> set out to do <em>and more</em>. Additionally, adopting a pre-existing protocol means that implementers don't have to write an auth server themselves, and deployers can integrate with their pre-existing auth+identity management solutions.</p>
<p dir="auto">These additions to the protocol describe the precise usage of OIDC and SCIM in polyproto. Reading these additions should give implementers a good idea about how OIDC, SCIM and polyproto work together.</p>
<h2 id="user-content-blocking-concerns" dir="auto">Blocking concerns</h2>
<p dir="auto">Below is a list of items needing to be addressed with an indicator of how difficult those items are expected to be (5=most difficult, 1=easiest)</p>
<ul dir="auto">
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1066" checked=""/>Missing flow from OIDC auth to ID-Cert + session (3.5/5): Closed by <a href="/polyphony/polyproto-dot-org/issues/104" class="ref-issue" rel="nofollow">#104</a></li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1145" checked=""/>Sensitive actions + OIDC needs resolving (4/5): Closed by <a href="/polyphony/polyproto-dot-org/issues/104" class="ref-issue" rel="nofollow">#104</a></li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1214"/>Bot/automated client auth is a stub (1.5/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1264"/>HSAT token revocation (backchannel logout?) (2/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1320"/>SCIM <em>de</em>provisioning flow undefined (2.5/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1371"/>ID-Cert renewal lifecycle details undefined (1/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1427"/>SCIM schema requirements undefined (1.5/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1476"/>Further explain purpose of SCIM on service providers (1/5)</li>
<li class="task-list-item"><input type="checkbox" disabled="" data-source-position="1541"/>Migration under OIDC unaddressed (2/5)</li>
</ul>
174#Tracking: OIDC in polyproto#ava[email protected]ava pushed to flori/draft/oidc at polyphony/polyproto-dot-org2026-05-07T22:05:39Z134611193: https://codeberg.org/polyphony/polyproto-dot-org/commit/c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4" rel="nofollow">c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4</a>
feat(oidc): "sensitive-solution" replacement, based on oidc<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4">c0cd4ae997f40d3510de3f26f9c3a0efaa43d2e4</a>
feat(oidc): "sensitive-solution" replacement, based on oidcava[email protected]ava pushed to flori/draft/oidc at polyphony/polyproto-dot-org2026-05-07T22:05:02Z134611043: https://codeberg.org/polyphony/polyproto-dot-org/compare/8cf8e33a9120e404440ecab5f4d3e5785c2b4885...a540b39c99654ead7347502db3a699e0ec7c8f04<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/a540b39c99654ead7347502db3a699e0ec7c8f04" rel="nofollow">a540b39c99654ead7347502db3a699e0ec7c8f04</a>
feat: OIDC-based "sensitive-solution" replacement
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/2996bd5b34f378ddcd1cb487dd65cc175d4d7c67" rel="nofollow">2996bd5b34f378ddcd1cb487dd65cc175d4d7c67</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116" rel="nofollow">37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116</a>
feat(oidc): add note about backchannel logout
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/b28fd4c06d991b42cee25ac686a6ed7b01be608d" rel="nofollow">b28fd4c06d991b42cee25ac686a6ed7b01be608d</a>
feat(oidc): fid localpart changing in OIDC<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/a540b39c99654ead7347502db3a699e0ec7c8f04">a540b39c99654ead7347502db3a699e0ec7c8f04</a>
feat: OIDC-based "sensitive-solution" replacement
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/2996bd5b34f378ddcd1cb487dd65cc175d4d7c67">2996bd5b34f378ddcd1cb487dd65cc175d4d7c67</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116">37baff2372ad7dfc2ddb2a21e2198aa8b6c0c116</a>
feat(oidc): add note about backchannel logout
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/b28fd4c06d991b42cee25ac686a6ed7b01be608d">b28fd4c06d991b42cee25ac686a6ed7b01be608d</a>
feat(oidc): fid localpart changing in OIDCava[email protected]ava pushed to flori/draft/oidc at polyphony/polyproto-dot-org2026-05-07T22:04:20Z134610419: https://codeberg.org/polyphony/polyproto-dot-org/compare/3b87e64f8247e346b24f073e99b90c9bb533634f...8cf8e33a9120e404440ecab5f4d3e5785c2b4885<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/8cf8e33a9120e404440ecab5f4d3e5785c2b4885" rel="nofollow">8cf8e33a9120e404440ecab5f4d3e5785c2b4885</a>
feat: OIDC-based "sensitive-solution" replacement
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/fab356d1f4af6a735b1564018e61a720b0be9111" rel="nofollow">fab356d1f4af6a735b1564018e61a720b0be9111</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/3cf84385a0c5e658ece712fa998a80e5151c0c4a" rel="nofollow">3cf84385a0c5e658ece712fa998a80e5151c0c4a</a>
feat(oidc): add note about backchannel logout
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/fa6fe7ff91162d59ce004f38934757e745b68aed" rel="nofollow">fa6fe7ff91162d59ce004f38934757e745b68aed</a>
draft: p2:fid->p2:core:fid, explain p2:core:fid:manage:persist
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/39f4dab37c60a58bcfdf2e34145c0f2d9d316d39" rel="nofollow">39f4dab37c60a58bcfdf2e34145c0f2d9d316d39</a>
feat(oidc): identity mapping, oidc and scim in p2<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/8cf8e33a9120e404440ecab5f4d3e5785c2b4885">8cf8e33a9120e404440ecab5f4d3e5785c2b4885</a>
feat: OIDC-based "sensitive-solution" replacement
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/fab356d1f4af6a735b1564018e61a720b0be9111">fab356d1f4af6a735b1564018e61a720b0be9111</a>
feat(oidc): account registration flow
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/3cf84385a0c5e658ece712fa998a80e5151c0c4a">3cf84385a0c5e658ece712fa998a80e5151c0c4a</a>
feat(oidc): add note about backchannel logout
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/fa6fe7ff91162d59ce004f38934757e745b68aed">fa6fe7ff91162d59ce004f38934757e745b68aed</a>
draft: p2:fid->p2:core:fid, explain p2:core:fid:manage:persist
<a href="https://codeberg.org/polyphony/polyproto-dot-org/commit/39f4dab37c60a58bcfdf2e34145c0f2d9d316d39">39f4dab37c60a58bcfdf2e34145c0f2d9d316d39</a>
feat(oidc): identity mapping, oidc and scim in p2ava[email protected]ava pushed to main at polyphony/repo-slopscore2026-05-07T13:53:09Z134348705: https://codeberg.org/polyphony/repo-slopscore/compare/d9dba165f9083fd0a04e664de21e7790014f960e...2e389aa0b9b408f3e1005948b1ec455855ea0c2b<a href="https://codeberg.org/polyphony/repo-slopscore/commit/2e389aa0b9b408f3e1005948b1ec455855ea0c2b" rel="nofollow">2e389aa0b9b408f3e1005948b1ec455855ea0c2b</a>
Merge pull request 'flori/logo' (#30) from flori/logo into main
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb" rel="nofollow">e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb</a>
fix: zulip link
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/07de52db80a1f4980663aeace7511df23a9006df" rel="nofollow">07de52db80a1f4980663aeace7511df23a9006df</a>
feat: add repo slopscore logo<a href="https://codeberg.org/polyphony/repo-slopscore/commit/2e389aa0b9b408f3e1005948b1ec455855ea0c2b">2e389aa0b9b408f3e1005948b1ec455855ea0c2b</a>
Merge pull request 'flori/logo' (#30) from flori/logo into main
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb">e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb</a>
fix: zulip link
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/07de52db80a1f4980663aeace7511df23a9006df">07de52db80a1f4980663aeace7511df23a9006df</a>
feat: add repo slopscore logoava[email protected]ava deleted branch flori/logo from polyphony/repo-slopscore2026-05-07T13:53:09Z134348702: https://codeberg.org/polyphony/repo-slopscoreava[email protected]ava merged pull request polyphony/repo-slopscore#302026-05-07T13:53:07Z134348666: https://codeberg.org/polyphony/repo-slopscore/pulls/30flori/logoflori/logoava[email protected]ava created pull request polyphony/repo-slopscore#302026-05-07T13:34:32Z134335736: https://codeberg.org/polyphony/repo-slopscore/pulls/3030#flori/logo#30#flori/logo#ava[email protected]ava pushed to flori/logo at polyphony/repo-slopscore2026-05-07T12:05:02Z134290205: https://codeberg.org/polyphony/repo-slopscore/compare/78dfc642c1d5bf26d25de671bf6d014ef3479126...e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb<a href="https://codeberg.org/polyphony/repo-slopscore/commit/e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb" rel="nofollow">e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb</a>
fix: zulip link
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/07de52db80a1f4980663aeace7511df23a9006df" rel="nofollow">07de52db80a1f4980663aeace7511df23a9006df</a>
feat: add repo slopscore logo<a href="https://codeberg.org/polyphony/repo-slopscore/commit/e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb">e1ec0e5cd9584c742ea763e1e6dd9a34bd29becb</a>
fix: zulip link
<a href="https://codeberg.org/polyphony/repo-slopscore/commit/07de52db80a1f4980663aeace7511df23a9006df">07de52db80a1f4980663aeace7511df23a9006df</a>
feat: add repo slopscore logoava[email protected]