Summary
the-nash-equilibrium is a deliberate AGPL-3.0-or-later exception to the estate
MPL-2.0 policy (co-developed game, same class as airborne-submarine-squadron). The
estate MPL-normalise sweep #40 (5e390d7) flattened its licence to MPL-2.0 without
honouring the exception. This is the second of exactly two genuine clobbers the
blast-radius analysis found (the other, airborne-submarine-squadron, is now restored —
see asq PR #57).
Unlike asq, this repo has no [CRITICAL] agpl-license invariant in its agent
instructions, so nothing stops a future sweep from re-clobbering it.
What to do (mirror asq PR #57 — proven recipe)
Acceptance criteria (proof, not diff)
gh api repos/hyperpolymath/the-nash-equilibrium/license --jq '.license.spdx_id'
returns AGPL-3.0 (currently MPL-2.0 or NOASSERTION).
- The
governance / Licence consistency check passes (root classifier now recognises
AGPL — standards PR #501, merged).
- Full test suite green from a space-free path (the
_GAMES_GROUP _SET/ %20 in
the path fake-fails extract tests otherwise).
References
Summary
the-nash-equilibriumis a deliberate AGPL-3.0-or-later exception to the estateMPL-2.0 policy (co-developed game, same class as
airborne-submarine-squadron). Theestate MPL-normalise sweep #40 (
5e390d7) flattened its licence to MPL-2.0 withouthonouring the exception. This is the second of exactly two genuine clobbers the
blast-radius analysis found (the other,
airborne-submarine-squadron, is now restored —see asq PR #57).
Unlike asq, this repo has no
[CRITICAL] agpl-licenseinvariant in its agentinstructions, so nothing stops a future sweep from re-clobbering it.
What to do (mirror asq PR #57 — proven recipe)
LICENSE← full GNU AGPL-3.0 text (not an SPDX stub — a stub reportsNOASSERTION/"Other" on GitHub; only full text is detected asAGPL-3.0).LICENSES/dir holding the full text of each licence in use:AGPL-3.0-or-later.txt(code) +CC-BY-SA-4.0.txt(docs).MPL-2.0→AGPL-3.0-or-later; docs (.adoc/.md)stay
CC-BY-SA-4.0. Target header lines, not a blind global sed.META.a2ml,STATE.a2ml, etc.);leave correct exception-rationale prose that references MPL.
[CRITICAL] agpl-licenseinvariant toAGENTS.md(+ mirrored agentinstruction files) so the exception is self-documenting and sweep-proof.
sonar-project.propertieswithsonar.exclusions/sonar.cpd.exclusions=
LICENSE,LICENSES/**if SonarCloud is wired (verbatim licence text otherwisetrips the duplication gate — see asq PR chore(ci): bump standards reusable workflow pins #58).
Acceptance criteria (proof, not diff)
gh api repos/hyperpolymath/the-nash-equilibrium/license --jq '.license.spdx_id'returns
AGPL-3.0(currentlyMPL-2.0orNOASSERTION).governance / Licence consistencycheck passes (root classifier now recognisesAGPL — standards PR #501, merged).
_GAMES_GROUP _SET/%20inthe path fake-fails extract tests otherwise).
References
5e390d7).airborne-submarine-squadronPR chore(nix->guix): remove flake.nix (Guix-only) #57 (+ chore(ci): bump standards reusable workflow pins #58 for Sonar).hyperpolymath/standardsPR #501.