Summary
The AGPL-clobber incident (estate MPL-normalise sweep #40 = 5e390d7) is only
half-fixed. We fixed the detection side — the governance body classifier now
recognises AGPL (PR #501, merged) — but the prevention side is untouched: the
normalise sweeper that did the clobbering still has no AGPL exception list, so the
next run will re-flatten the co-developed games back to MPL-2.0.
This issue tracks closing the loop and the residual licence hygiene the campaign surfaced.
Prevention (root cause — the actual "stop it happening again")
Per the estate CI/CD doctrine, prevention must be foundational, not a per-repo patch.
If the sweeper tooling lives somewhere unreachable, this is a STOP-and-chat item —
flagged here for that conversation.
Detection (done, recorded for the trail)
Residual licence hygiene (campaign remainder)
References
Summary
The AGPL-clobber incident (estate MPL-normalise sweep #40 =
5e390d7) is onlyhalf-fixed. We fixed the detection side — the governance body classifier now
recognises AGPL (PR #501, merged) — but the prevention side is untouched: the
normalise sweeper that did the clobbering still has no AGPL exception list, so the
next run will re-flatten the co-developed games back to MPL-2.0.
This issue tracks closing the loop and the residual licence hygiene the campaign surfaced.
Prevention (root cause — the actual "stop it happening again")
commit
5e390d7).airborne-submarine-squadron,the-nash-equilibrium(both co-developed games), plus any repo carrying a[CRITICAL] agpl-licenseinvariant. The sweeper must skip these, not flatten them.governance check, and humans all read the same list.
Detection (done, recorded for the trail)
check-licence-consistency.shbody classifier recognises full-text AGPL-3.0→ PR fix(licence-check): recognise AGPL-3.0 in the body classifier #501 (merged). Propagates estate-wide via the default-branch script.
Residual licence hygiene (campaign remainder)
the-nash-equilibrium: full AGPL restoration (tracked in its own repo issue).coq-jr: danglingLICENSE-AGPL/LICENSE-PMPLdoc links + garbled"v3.0 or later (MPL-2.0)" text.
academic-workflow-suite: stale "Why AGPL?" heading over a now-MPL repo.boj-server: stray AGPL manifest string.LICENSEat all — a distinct CI/CD gap; the governancecheck errors on absence. Audit + backfill (MPL-2.0 default, AGPL for the allowlist).
References