You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up to #75 / #77 (metadata relicense). The repo-licence declarations (LICENSE + toml/json) are converted to MPL-2.0 in #77. This issue tracks the source-file headers and PMPL drift, which were held back because they're not trivial.
AGPL-3.0-or-later SPDX headers to convert → MPL-2.0 (18 files)
.claude/CLAUDE.md (header # SPDX-License-Identifier: PMPL-1.0-or-later + "## License: PMPL-1.0-or-later on all original source files")
tools/pcc/Cargo.toml (header comment line 1 = PMPL)
.machine_readable/6a2/AGENTIC.a2ml and panel-clades/.machine_readable/6a2/AGENTIC.a2ml ("use PMPL-1.0-or-later")
Why this isn't trivial / blockers to handle
Pre-commit hook (.git/hooks/pre-commit) requires, for OWNED repos, that every staged file with extension zig|ex|idr|eph|py|js|ts|rs|c|h|adoc|md contain BOTH SPDX-License-Identifier: MPL-2.0 AND the owner string Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>. So STATUS.md and panll_tea.js will need owner-attribution lines added — decide the canonical header format first.
.affine files are not hook-checked but should still be made consistent.
.claude/CLAUDE.md is under a standing "do-not-touch in sweeps / ask-first" directive — needs explicit owner sign-off before editing.
Determine migration/'s status — is it active original source (→ MPL) or transitional/vendored content? Confirm before sweeping.
Leave functional AGPL references alone (the AttributionLicenseEngine/PlazaEngine code and deny.toml lists that analyse licence strings, and the anti-AGPL policy text in panel-clades).
Do as a manual, file-by-file, owner-reviewed change (no bulk auto-sweep), per estate licence policy.
all exist and carry // SPDX-License-Identifier: MPL-2.0
migration/modules/STATUS.md
no longer exists
tools/pcc/Cargo.toml header
# SPDX-License-Identifier: MPL-2.0
.claude/CLAUDE.md (the ask-first file)
now CC-BY-SA-4.0 with a corrected ## License section (Code MPL-2.0; provenance exhibit MPL-2.0) — PMPL content already gone, no owner-blocked edit outstanding
.machine_readable/6a2/AGENTIC.a2ml
MPL-2.0
PMPL drift
zero matches repo-wide for PMPL/AGPL SPDX self-declarations
Functional AGPL references
one kept, correctly: panel-clades/deny.toml:40 licence-deny list (per this issue's own blocker #5)
The blocker questions (header format, migration/ status) are moot against the current tree — headers across src/, migration/, tools/ uniformly use the SPDX-License-Identifier + SPDX-FileCopyrightText pair. Closing as completed.
Activity
hyperpolymath commentedon Sep 21, 2026
Resolved — every enumerated item already lands clean on
main. No PR needed. Closing as completed.File-by-file verification audit 2026-09-21 against the issue's lists:
mainsrc/ui/tea/*,migration/modules/*,migration/msg/*)// SPDX-License-Identifier: MPL-2.0migration/modules/STATUS.mdtools/pcc/Cargo.tomlheader# SPDX-License-Identifier: MPL-2.0.claude/CLAUDE.md(the ask-first file)CC-BY-SA-4.0with a corrected## Licensesection (Code MPL-2.0; provenance exhibit MPL-2.0) — PMPL content already gone, no owner-blocked edit outstanding.machine_readable/6a2/AGENTIC.a2mlpanel-clades/deny.toml:40licence-deny list (per this issue's own blocker #5)The blocker questions (header format, migration/ status) are moot against the current tree — headers across
src/,migration/,tools/uniformly use theSPDX-License-Identifier+SPDX-FileCopyrightTextpair. Closing as completed.