-
-
Notifications
You must be signed in to change notification settings - Fork 0
chore(license): migrate PMPL scaffold emissions to MPL-2.0 #103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,22 +1,19 @@ | ||
| Licensing Notice | ||
| ================ | ||
|
|
||
| This project is authored by Jonathan D.A. Jewell (hyperpolymath) and | ||
| is licensed under the Palimpsest License (MPL-2.0). | ||
| This project is authored by Jonathan D.A. Jewell (hyperpolymath) and is | ||
| licensed under the Mozilla Public License 2.0 (MPL-2.0) for code, and the | ||
| Creative Commons Attribution-ShareAlike 4.0 International License | ||
| (CC-BY-SA-4.0) for documentation. | ||
|
|
||
| The MPL-2.0 is a philosophical extension of the Mozilla Public | ||
| License 2.0, adding provisions for cryptographic provenance, emotional | ||
| lineage preservation, and quantum-safe signatures. The full PMPL text is | ||
| available in LICENSES/MPL-2.0.txt. | ||
| The full text of each license is available in: | ||
| - LICENSE (MPL-2.0) | ||
| - LICENSES/MPL-2.0.txt | ||
| - LICENSES/CC-BY-SA-4.0.txt | ||
|
|
||
| For compatibility with automated license detection tools and platforms | ||
| that require OSI-approved licenses, the root LICENSE file contains the | ||
| standard Mozilla Public License 2.0 text. This ensures that package | ||
| registries, CI systems, and other tooling correctly identify the license. | ||
| This ensures that package registries, CI systems, and other tooling | ||
| correctly identify the license without ambiguity. | ||
|
|
||
| The legally binding terms are: | ||
| - Source files: governed by MPL-2.0 (per SPDX headers) | ||
| - Combined works: compatible with MPL-2.0 (per PMPL Section 6) | ||
|
|
||
| For more information about the Palimpsest License: | ||
| https://github.com/hyperpolymath/palimpsest-license | ||
| - Documentation files: governed by CC-BY-SA-4.0 (per SPDX headers) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,43 +1,31 @@ | ||
| // SPDX-License-Identifier: CC-BY-SA-4.0 | ||
| // Copyright (c) Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk> | ||
| = MPL-2.0 | ||
| = Legal Status | ||
| :toc: | ||
| :toc-placement!: | ||
|
|
||
| image:https://img.shields.io/badge/License-MPL--2.0-blue.svg[License: MPL-2.0,link="https://github.com/hyperpolymath/palimpsest-license"] | ||
| image:https://img.shields.io/badge/Philosophy-Palimpsest-indigo.svg[Palimpsest,link="https://github.com/hyperpolymath/palimpsest-license"] | ||
| image:https://img.shields.io/badge/License-MPL--2.0-blue.svg[License: MPL-2.0,link="https://opensource.org/licenses/MPL-2.0"] | ||
|
|
||
| toc::[] | ||
|
|
||
| == Legal Status | ||
|
|
||
| This project is licensed under the **MPL-2.0 License 1.0 (MPL-2.0)**. | ||
| For SPDX and tooling, use **MPL-2.0**. | ||
| This project is licensed under the **Mozilla Public License 2.0 (MPL-2.0)** | ||
| for code and the **Creative Commons Attribution-ShareAlike 4.0 | ||
| International License (CC-BY-SA-4.0)** for documentation. | ||
|
|
||
| MPL-2.0 incorporates the Mozilla Public License 2.0 by reference and adds | ||
| ethical-use, provenance, and lineage requirements. | ||
|
|
||
| == What PMPL Adds | ||
|
|
||
| * **Emotional Lineage** - preserve narrative intent and cultural context | ||
| * **Provenance Integrity** - retain attribution and lineage metadata | ||
| * **Ethical Use Constraints** - explicit consent for non-interpretive AI training | ||
| * **Quantum-Safe Provenance (optional)** - post-quantum signature support | ||
| For SPDX and tooling, use `MPL-2.0` (code) or `CC-BY-SA-4.0` (docs). | ||
|
|
||
| == How to Adopt | ||
|
|
||
| 1. Include the MPL-2.0 license text in `LICENSE`. | ||
| 2. Add SPDX headers to source files: | ||
| `SPDX-License-Identifier: MPL-2.0` | ||
| 3. Add SPDX headers to documentation files: | ||
| `SPDX-License-Identifier: CC-BY-SA-4.0` | ||
| 3. Add a Palimpsest badge to your README (see `assets/badges/` and `embed/license-blocks/`). | ||
|
|
||
| == Versioning | ||
|
|
||
| See `VERSIONING.adoc` for the release process and the "-or-later" model. | ||
| The current legal text is MPL-2.0. | ||
|
|
||
| == References | ||
|
|
||
| * `legal/README.adoc` | ||
| * `assets/badges/README.md` | ||
| * `embed/license-blocks/README.md` | ||
| * `NOTICE` | ||
| * `LICENSES/MPL-2.0.txt` | ||
| * `LICENSES/CC-BY-SA-4.0.txt` | ||
|
Comment on lines
+29
to
+31
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win Document both licence files in the adoption steps. The references list 🤖 Prompt for AI Agents |
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -26,7 +26,7 @@ project-name/ | |
| ├── docs/ # Documentation (required) | ||
| ├── guix.scm # Guix package definition (required) | ||
| ├── Justfile # Task runner (required) | ||
| ├── LICENSE.txt # AGPL + Palimpsest dual license (required) | ||
| ├── LICENSE.txt # MPL-2.0 license (required) | ||
| ├── README.adoc # Project overview (required) | ||
| ├── RSR_COMPLIANCE.adoc # Compliance tracking (required) | ||
| ├── src/ # Source code (required) | ||
|
|
@@ -86,16 +86,13 @@ Thumbs.db | |
| ---- | ||
|
|
||
| === LICENSE.txt | ||
| Dual license header: | ||
| License header: | ||
| [source] | ||
| ---- | ||
| SPDX-License-Identifier: CC-BY-SA-4.0 | ||
| SPDX-License-Identifier: MPL-2.0 | ||
|
|
||
| This software is dual-licensed under: | ||
| 1. GNU Affero General Public License v3.0 or later | ||
| 2. MPL-2.0 v0.5 | ||
|
|
||
| See LICENSE-AGPL3.txt and LICENSE-PALIMPSEST.txt for full terms. | ||
| This software is licensed under the Mozilla Public License 2.0 (MPL-2.0). | ||
| See LICENSE for full terms. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win Align the required licence filename with the canonical link. The root structure requires 🤖 Prompt for AI Agents |
||
| ---- | ||
|
|
||
| === README.adoc | ||
|
|
@@ -127,7 +124,7 @@ See link:docs/[docs/] for full documentation. | |
|
|
||
| == License | ||
|
|
||
| MPL-2.0 OR Palimpsest-0.5 | ||
| MPL-2.0 | ||
| ---- | ||
|
|
||
| == Required Directories | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -463,7 +463,7 @@ bump-version level="patch": | |
|
|
||
| |License | ||
| |MIT | ||
| |MIT + Palimpsest v0.8 | ||
| |MIT + MPL-2.0 | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- target context ---'
sed -n '440,480p' docs/ZOTERHO_INTEGRATION.adoc
printf '%s\n' '--- licence references in the document ---'
rg -n -i 'license|licence|MIT|MPL|github.com' docs/ZOTERHO_INTEGRATION.adoc | head -80
printf '%s\n' '--- repository metadata ---'
git remote -v 2>/dev/null || true
git diff -- docs/ZOTERHO_INTEGRATION.adoc | sed -n '1,120p'Repository: hyperpolymath/conative-gating Length of output: 2909 🏁 Script executed: #!/bin/bash
set -eu
repo='hyperpolymath/zoterho-template'
printf '%s\n' '--- repository metadata ---'
curl -fsSL -H 'Accept: application/vnd.github+json' "https://api.github.com/repos/$repo" |
jq '{full_name,default_branch,license,license_name:.license.name,license_spdx:.license.spdx_id}'
printf '%s\n' '--- licence-related repository files ---'
curl -fsSL -H 'Accept: application/vnd.github+json' "https://api.github.com/repos/$repo/git/trees/HEAD?recursive=1" |
jq -r '.tree[] | select(.path|test("(^|/)(LICEN[SC]E|COPYING|NOTICE)(\\.|$)|licen[sc]")) | .path'
printf '%s\n' '--- repository README licence statements ---'
curl -fsSL "https://raw.githubusercontent.com/$repo/HEAD/README.md" |
rg -n -i -C 2 'license|licence|MPL|MIT' || trueRepository: hyperpolymath/conative-gating Length of output: 428 🌐 Web query:
💡 Result: The zoterho-template project, maintained under the hyperpolymath repository structure (often within the zotero-tools monorepo), is primarily licensed under the Mozilla Public License 2.0 (MPL-2.0) [1][2]. In practice, the author employs a dual-licensing strategy where the MPL-2.0 serves as the legally recognized, open-source-compliant fallback license [2][3]. The project's documentation often highlights the "Palimpsest License" (PMPL-1.0-or-later) as the intended primary license, which extends the MPL-2.0 with additional provisions [2][4][3]. Because the PMPL-1.0-or-later is not currently recognized by major open-source bodies, the MPL-2.0 is explicitly utilized as the fallback license to ensure compatibility and legal acceptance in environments requiring standard open-source licenses [2][3]. Users and redistributors can treat the software as governed by the MPL-2.0 [2][3]. Citations:
🏁 Script executed: #!/bin/bash
set -eu
printf '%s\n' '--- zotero-tools repository metadata ---'
curl -fsSL -H 'Accept: application/vnd.github+json' \
https://api.github.com/repos/hyperpolymath/zotero-tools |
jq '{full_name,default_branch,license_name:.license.name,license_spdx:.license.spdx_id}'
printf '%s\n' '--- zotero-tools licence files ---'
for path in LICENSE README.adoc; do
printf '\n--- %s ---\n' "$path"
curl -fsSL "https://raw.githubusercontent.com/hyperpolymath/zotero-tools/main/$path" |
rg -n -i -C 3 'license|licence|MPL|MIT|PMPL|Palimpsest' || true
done
printf '%s\n' '--- cited hyperpolymath licence statements ---'
curl -fsSL https://raw.githubusercontent.com/hyperpolymath/hyperpolymath/main/LICENSE |
rg -n -i -C 3 'license|licence|MPL|MIT|PMPL|Palimpsest' || trueRepository: hyperpolymath/conative-gating Length of output: 32295 🏁 Script executed: #!/bin/bash
set -eu
curl -fsSL -H 'Accept: application/vnd.github+json' \
'https://api.github.com/repos/hyperpolymath/zotero-tools/git/trees/main?recursive=1' |
jq -r '.tree[] | select(.path|startswith("zoterho-template/")) | .path' |
head -80Repository: hyperpolymath/conative-gating Length of output: 3493 🏁 Script executed: #!/bin/bash
set -eu
for path in zoterho-template/LICENSE zoterho-template/README.adoc; do
printf '\n--- %s ---\n' "$path"
curl -fsSL "https://raw.githubusercontent.com/hyperpolymath/zotero-tools/main/$path" |
rg -n -i -C 4 'license|licence|MPL|MIT|PMPL|Palimpsest|SPDX' || true
doneRepository: hyperpolymath/conative-gating Length of output: 10504 Correct the GitHub licence entry.
🤖 Prompt for AI Agents |
||
|
|
||
| |Config Language | ||
| |CUE | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -173,7 +173,7 @@ This document describes the Rhodium Standard Repository (RSR) compliance status | |
| |.editorconfig present |$ec_check | | ||
| |.well-known/ directory |$wk_check | | ||
| |justfile present |$jf_check | | ||
| |LICENSE.txt (AGPL + Palimpsest) |$lic_check | | ||
| |LICENSE.txt (MPL-2.0) |$lic_check | | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift Validate licence contents before reporting MPL-2.0 compliance. The 🤖 Prompt for AI Agents |
||
| |Containerfile present |$cont_check | | ||
| |flake.nix present |$flake_check | | ||
| |=== | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -22,7 +22,7 @@ | |
| ], | ||
| "license": { | ||
| "spdx": "AGPL-3.0-or-later", | ||
| "philosophy": "Palimpsest-0.4", | ||
| "philosophy": "MPL-2.0", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔒 Security & Privacy | 🟠 Major | ⚡ Quick win Align the SPDX licence with the declared philosophy. The Suggested alignment- "spdx": "AGPL-3.0-or-later",
+ "spdx": "MPL-2.0",As per the PR objectives, code uses MPL-2.0 and documentation uses CC-BY-SA-4.0. 🤖 Prompt for AI Agents |
||
| "file": "LICENSE.txt" | ||
| }, | ||
| "consent": { | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win
Make the badge identify the code licence.
This legal-status page declares two licences, but the badge says only
License: MPL-2.0. Readers can interpret it as the licence for the whole project. Change the label toCode licence: MPL-2.0or add a CC-BY-SA-4.0 badge.🤖 Prompt for AI Agents