fix(licensing): align stray PMPL-1.0-or-later SPDX identifiers with MPL-2.0 - #141
Conversation
…PL-2.0 Owner ruling on #134: arm 1 — the repo's identity is MPL-2.0 (LICENSE body, GitHub licence metadata, 89 existing SPDX headers, and the estate policy in PALIMPSEST.adoc: 'For SPDX and tooling, use MPL-2.0'). The .ipkg and three Idris2 files were seeded with PMPL-1.0-or-later during the estate port 7/11 session; every sibling repo's port carries MPL-2.0 instead. - ipfs-overlay-tests.ipkg: SPDX header PMPL-1.0-or-later -> MPL-2.0 (clears the governance / Licence consistency gate) - tests/idris2/{ConfigContractsTest,ConfigStructureTest,Test/Spec}.idr: SPDX headers -> MPL-2.0 - ConfigContractsTest INVARIANT 3/9 and ConfigStructureTest SPDX assertions expected PMPL-1.0-or-later in configs/*.ncl and scripts/*.sh, which all declare MPL-2.0 — the stale strings made those tests fail; they now assert the true header and pass. No file in the repo claims PMPL-1.0-or-later any more; PMPL remains only as policy prose (PALIMPSEST.adoc, NOTICE, badges), matching every sibling repo. Verified with hyperpolymath/standards scripts/check-licence-consistency.sh (same script the governance workflow runs): exit 0. Touches only licence identity. Closes #134
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (4)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📜 Recent review details
|
| Layer / File(s) | Summary |
|---|---|
Update licence identifiers and assertions ipfs-overlay-tests.ipkg, tests/idris2/*.idr, tests/idris2/Test/Spec.idr |
Header comments and SPDX assertion strings now use MPL-2.0. Test coverage and behaviour remain unchanged. |
Priority: ⬇️ Low
Estimated code review effort: 1 (Trivial) | ~5 minutes
Change: Bug fix · Severity of issue fixed: Low
Suggested reviewers: metadatastician
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
| Check name | Status | Explanation |
|---|---|---|
| Title check | ✅ Passed | The title clearly and concisely describes the main change: replacing stray PMPL-1.0-or-later SPDX identifiers with MPL-2.0. |
| Description check | ✅ Passed | The description directly explains the licensing mismatch, the files changed, the acceptance criteria, and the verification results. |
| Linked Issues check | ✅ Passed | Issue #134 selects arm 1: retain MPL-2.0 and remove PMPL-1.0-or-later claims. The diff changes the package manifest and three Idris2 file headers to MPL-2.0. It also updates the related test expectati… |
| Out of Scope Changes check | ✅ Passed | All changed lines support Issue #134. They update licence identifiers or test expectations that encode those identifiers. The diff shows no functional or unrelated configuration changes. The separate … |
| Docstring Coverage | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0… |
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
- Commit to this branch
- Create a new PR
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
A rabbit checks the licence line
MPL-2.0 now aligns
Tests repeat the same clear sign
Headers match in neat design
No hopping logic changed this time
Comment @coderabbitai help to get the list of available commands.
|



Closes #134
Owner ruling
Arm 1 — the repository's licence identity is MPL-2.0; the
PMPL-1.0-or-laterSPDX identifiers were seeding artefacts from the estateport 7/11 session and are the outliers. Evidence:
LICENSEbody (verbatim, header-less canonical shape)MPL-2.0MPL-2.0vs 4 ×PMPL-1.0-or-laterPALIMPSEST.adoc(estate policy, shipped in every repo)NOTICE(binding terms section).ipkg+ Idris harness copies)MPL-2.0; ipfs-overlay is the only repo withPMPL-1.0-or-laterLICENSES/What changed (licence identity only, one commit)
ipfs-overlay-tests.ipkg— SPDX headerPMPL-1.0-or-later→MPL-2.0(this is what the
governance / Licence consistencygate reads).tests/idris2/ConfigContractsTest.idr,tests/idris2/ConfigStructureTest.idr,tests/idris2/Test/Spec.idr— SPDX headers →MPL-2.0.ConfigContractsTest(INVARIANT 3 + INVARIANT 9) andConfigStructureTest(SPDX-header unit test) contained stale assertion strings expecting
SPDX-License-Identifier: PMPL-1.0-or-laterinsideconfigs/*.nclandscripts/*.sh— all of which declareMPL-2.0. Those assertions could onlyfail; they now assert the true header. (Latent test bug found while
satisfying the acceptance criterion "no other file claims PMPL-1.0-or-later".)
After this commit, zero files in the repo contain the string
PMPL-1.0-or-later(verified bygrep -r). PMPL survives only as policyprose in
PALIMPSEST.adoc/NOTICE/ badges — identical to every siblingrepo, and not an SPDX identity claim.
Verification
hyperpolymath/standards@main, the same ref thelicence-consistencyjob checks out.grep -rn "PMPL-1.0-or-later" --exclude-dir=.git .→ zero hits.into CI, run here as extra proof:
16 passed, 3 failed(the three SPDX assertions, whichexpected PMPL in files that declare MPL-2.0);
19 passed, 0 failed.main(the pre-existing string-literal andmissing-copyright notes are identical in kind on both trees; no REUSE job
exists in CI).
Validate A2ML manifests— separatepre-existing failure, deliberately untouched.