Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude/CLAUDE.generated.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
12 changes: 11 additions & 1 deletion .claude/CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,14 @@ deno task test:coverage

## License

PMPL-1.0-or-later on all original source files.
- **Code** (all original source files): `MPL-2.0`
- **Documentation** (prose `.adoc` / `.md`): `CC-BY-SA-4.0`
- Licence texts live in `LICENSES/`; GitHub detects the repo as MPL-2.0 from the root `LICENSE`.
- Quantum-Safe Provenance specification: `EXHIBIT-B-QUANTUM-SAFE.txt` (additive supplement, MPL-2.0).

(Estate policy: sole-owner repos are MPL-2.0; the prior `PMPL-1.0-or-later`
declaration is superseded. NOTE for agents: the **Palimpsest Plaza** panel
(`panel-clades/clades/plaza/`, `src/**/Plaza*`, `src-gossamer/src/plaza/`)
references PMPL as a *feature subject* — a PMPL-adoption/compliance hub. Those
PMPL strings are intentional product content, NOT this repo's licence; do not
sweep them.)
2 changes: 1 addition & 1 deletion .clinerules
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion .cursorrules
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion .junie/guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/6a2/AGENTIC.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ can-create-files = true
# - Never commit secrets or credentials
# - Never use banned languages (TypeScript, Python, Go, etc.)
# - Never place state files in repository root (must be in .machine_readable/)
# - Never use AGPL license (use PMPL-1.0-or-later)
# - Never use AGPL license (use MPL-2.0)

[automation-hooks]
# - PanLL may integrate with gitbot-fleet automation:
Expand Down
6 changes: 3 additions & 3 deletions .machine_readable/6a2/ECOSYSTEM.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -138,11 +138,11 @@ nodejs = { version = "18.x+", purpose = "ReScript compiler runtime (temporary)",
[dependencies.build-time]
rescript = { version = "11.1.4", purpose = "Type-safe frontend compilation", license = "MIT", criticality = "critical" }
tailwind = { version = "4.1.18", purpose = "Styling framework", license = "MIT", criticality = "medium" }
gossamer = { version = "0.1.0", purpose = "Desktop webview shell (Zig + WebKitGTK)", license = "PMPL-1.0-or-later", criticality = "critical" }
gossamer = { version = "0.1.0", purpose = "Desktop webview shell (Zig + WebKitGTK)", license = "MPL-2.0", criticality = "critical" }

[dependencies.libraries]
rescript-core = { version = "1.6.1", purpose = "ReScript standard library", license = "MIT" }
custom-tea = { version = "internal", purpose = "Custom TEA — 18 modules, VDOM diffing, ARIA", license = "PMPL-1.0-or-later", criticality = "critical", note = "Permanent. rescript-tea@0.16.0 rejected." }
custom-tea = { version = "internal", purpose = "Custom TEA — 18 modules, VDOM diffing, ARIA", license = "MPL-2.0", criticality = "critical", note = "Permanent. rescript-tea@0.16.0 rejected." }

# --- Governance ---

Expand All @@ -151,7 +151,7 @@ maintainer = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>"
maintainer-github = "hyperpolymath"
contribution-model = "open-source"
decision-making = "BDFL with community input"
license = "PMPL-1.0-or-later"
license = "MPL-2.0"

# --- Roadmap ---

Expand Down
4 changes: 2 additions & 2 deletions .machine_readable/6a2/META.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ version = "1.0.0"
last-updated = "2026-03-15"
project = "panll"
author = "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>"
license = "PMPL-1.0-or-later"
license = "MPL-2.0"
standard = "RSR 2026"
format-spec = "hyperpolymath/rsr-template-repo/spec/META-FORMAT-SPEC.adoc"

Expand Down Expand Up @@ -102,7 +102,7 @@ testing-strategy = """Test-driven development for core logic (Model, Update, Com
Deno.test for JavaScript unit tests; cargo test for Rust backend tests.
Integration tests for Gossamer backend commands. Manual testing for UI/UX flows."""
versioning-scheme = "Semantic versioning. v0.x.y = pre-1.0 (breaking changes allowed)."
license-policy = "All original code PMPL-1.0-or-later. Third-party dependencies respect original licenses."
license-policy = "All original code MPL-2.0. Third-party dependencies respect original licenses."

# --- Design Rationale ---

Expand Down
2 changes: 1 addition & 1 deletion .machine_readable/svc/k9/examples/project-metadata.k9.ncl
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ K9!
organization = "{{AUTHOR_ORG}}",
},

license = "PMPL-1.0-or-later",
license = "MPL-2.0",

keywords = [
"rhodium-standard",
Expand Down
2 changes: 1 addition & 1 deletion .q/rules/coordination.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion .windsurfrules
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
4 changes: 2 additions & 2 deletions 0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
(full-name "PanLL eNSAID — Neurosymbolic AI Development Environment")
(version "0.1.0-alpha")
(repo "https://github.com/hyperpolymath/panll")
(license "PMPL-1.0-or-later")
(license "MPL-2.0")
(author "Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>"))

(purpose
Expand Down Expand Up @@ -97,7 +97,7 @@
; Code policy
(rule "No TypeScript — ReScript only")
(rule "No npm/bun — Deno only")
(rule "PMPL-1.0-or-later on all source files"))
(rule "MPL-2.0 on all source files"))

;; ===================================================================
;; STRUCTURE OVERVIEW (detail in CLAUDE.md)
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ version: 0.2.0-beta
date-released: 2026-03-29
url: "https://github.com/hyperpolymath/panll"
repository-code: "https://github.com/hyperpolymath/panll"
license: "PMPL-1.0-or-later"
license: "MPL-2.0"
abstract: >-
PanLL is a practical cognitive-relief layer: a set of tools and mechanisms
designed to reduce friction, lower cognitive overhead, and make difficult
Expand Down
102 changes: 102 additions & 0 deletions EXHIBIT-B-QUANTUM-SAFE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
SPDX-License-Identifier: MPL-2.0

================================================================================
EXHIBIT B — QUANTUM-SAFE PROVENANCE SPECIFICATION
Palimpsest-MPL License Version 1.0
================================================================================

1. PURPOSE

This exhibit specifies the cryptographic algorithms and procedures for
quantum-safe provenance in software distributed under the Palimpsest-MPL
License.

2. APPROVED ALGORITHMS

The following post-quantum cryptographic algorithms are approved for
signing Provenance Metadata:

2.1. Digital Signatures
- ML-DSA (FIPS 204, formerly CRYSTALS-Dilithium)
Recommended: ML-DSA-65 (security level 3) or ML-DSA-87 (level 5)
- SLH-DSA (FIPS 205, formerly SPHINCS+)
Recommended: SLH-DSA-SHA2-256f or SLH-DSA-SHAKE-256f
- FALCON (NIST Round 3 finalist)
Recommended: FALCON-1024

2.2. Key Encapsulation (for encrypted provenance)
- ML-KEM (FIPS 203, formerly CRYSTALS-Kyber)
Recommended: ML-KEM-1024

2.3. Hash Functions
- SHA-3 (FIPS 202)
Recommended: SHA3-256 or SHA3-512
- SHAKE (FIPS 202 extendable output)
Recommended: SHAKE-256

2.4. Key Derivation
- Argon2id (RFC 9106)
Parameters: t=3, m=65536, p=4 (minimum)

3. PROVENANCE METADATA FORMAT

Provenance Metadata should include:

3.1. Required Fields
- author-identity: Contributor name and contact
- timestamp: ISO 8601 with timezone
- content-hash: SHA3-256 hash of the contribution
- signature: Quantum-safe signature over all fields

3.2. Optional Fields
- parent-hash: Hash of the previous contribution in the chain
- emotional-lineage: Narrative context markers
- platform: Build/development environment
- witnesses: Third-party attestation signatures

4. SIGNATURE PROCEDURE

4.1. Signing
a. Compute SHA3-256 hash of the contribution content
b. Construct metadata record with all required fields
c. Serialize metadata in canonical JSON form
d. Sign with ML-DSA-65 (or approved alternative)
e. Attach signature to distribution

4.2. Verification
a. Extract metadata and signature from distribution
b. Verify signature against contributor's public key
c. Verify content hash matches actual content
d. Verify timestamp is within acceptable range
e. Verify parent-hash chain if present

5. KEY MANAGEMENT

5.1. Contributors should publish quantum-safe public keys via:
- OpenPGP keyservers (with PQ algorithm support)
- Repository .well-known/keys/ directory
- Contributor's personal website

5.2. Key rotation should occur:
- At least annually
- When algorithm recommendations change
- When key compromise is suspected

6. TRANSITION PERIOD

During the transition to quantum-safe cryptography:

6.1. Classical signatures (Ed25519, RSA) remain valid
6.2. Hybrid signatures (classical + PQ) are encouraged
6.3. Pure PQ signatures are preferred for new contributions
6.4. Classical-only signatures will be deprecated in a future version

7. COMPLIANCE

Quantum-safe provenance is OPTIONAL under PMPL-1.0. When present,
it must follow this specification. Stripping quantum-safe signatures
from distributions is prohibited per Section 4.1 of the License.

================================================================================
END OF EXHIBIT B
================================================================================
2 changes: 1 addition & 1 deletion GEMINI.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend.

**Languages:** ReScript, Rust, Elixir, JavaScript
**License:** PMPL-1.0-or-later
**License:** MPL-2.0
**Build system:** just
**Runtime:** deno

Expand Down
8 changes: 4 additions & 4 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@ Licensing Notice
================

This project is authored by Jonathan D.A. Jewell (hyperpolymath) and
is licensed under the Palimpsest License (PMPL-1.0-or-later).
is licensed under the Palimpsest License (MPL-2.0).

The PMPL-1.0-or-later is a philosophical extension of the Mozilla Public
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/PMPL-1.0-or-later.txt.
available in LICENSES/MPL-2.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.

The legally binding terms are:
- Source files: governed by PMPL-1.0-or-later (per SPDX headers)
- 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:
Expand Down
6 changes: 4 additions & 2 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
image:https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity[OpenSSF Best Practices,link="https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/panll"]
image:https://img.shields.io/badge/version-v0.2.0--beta-blue[Version]
image:https://img.shields.io/badge/completion-68%25-orange[Completion]
image:https://img.shields.io/badge/License-MPL--2.0-indigo.svg[PMPL-1.0-or-later,link="LICENSE"]
image:https://img.shields.io/badge/License-MPL--2.0-indigo.svg[License MPL-2.0,link="LICENSE"]
image:https://img.shields.io/badge/Docs-CC--BY--SA--4.0-lightgrey.svg[Docs CC-BY-SA-4.0,link="LICENSES/CC-BY-SA-4.0.txt"]
image:https://img.shields.io/badge/Quantum--Safe-Provenance-blueviolet.svg[Quantum-Safe Provenance,link="EXHIBIT-B-QUANTUM-SAFE.txt"]
image:https://img.shields.io/badge/Tests-109%20passing-brightgreen[Tests]
image:https://img.shields.io/badge/RSR-compliant-blue[RSR Compliant]
image:https://img.shields.io/badge/Technical_Debt-25%20issues-red[Technical Debt,link="docs/TECHNICAL_DEBT.md"]
Expand Down Expand Up @@ -311,7 +313,7 @@ For containerized runtime orchestration (Chainguard base + Cerro Torre pack/veri

== Licence

PMPL-1.0-or-later
MPL-2.0

== Architecture

Expand Down
2 changes: 1 addition & 1 deletion clade-portal/gossamer.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@
],
"resources": [],
"copyright": "Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath)",
"license": "PMPL-1.0-or-later",
"license": "MPL-2.0",
"shortDescription": "PanLL clade taxonomy browser and health portal",
"longDescription": "Gossamer-native portal for browsing PanLL's 100+ panel clades. Tree, list, and graph views with live health indicators, relationship mapping, and full-text search across clade metadata.",
"linux": {
Expand Down
2 changes: 1 addition & 1 deletion coordination.k9
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ metadata:
project:
name: "PanLL"
description: "Neurosymbolic IDE built on the Binary Star model — human (symbolic, Panel-L) and machine (neural, Panel-N) orbiting a shared world state (Panel-W). 106 panels, custom TEA runtime, Gossamer desktop backend."
license: PMPL-1.0-or-later
license: MPL-2.0
repo: "hyperpolymath/panll"
languages:
- ReScript
Expand Down
2 changes: 1 addition & 1 deletion docs/ROADMAP.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ Each integration is a **panel module** — a self-contained unit that provides d

== License & Governance

**License:** PMPL-1.0-or-later (Palimpsest License)
**License:** MPL-2.0 (Palimpsest License)

**Author:** Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>

Expand Down
4 changes: 2 additions & 2 deletions docs/decisions/DESIGN-DECISIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,7 @@ Combined score guides priority: must+corrective+systems = 15 (do immediately), l
**Status:** Accepted
**Context:** Need sustainable funding without compromising open source.

**Decision:** Everything is PMPL-1.0-or-later. Funding buys acceleration, not access. The pitch: "Is it really worth trying to compete with a crazy academic, or just give him the money?" The ecosystem is so far along it's cheaper to fund than to fork.
**Decision:** Everything is MPL-2.0. Funding buys acceleration, not access. The pitch: "Is it really worth trying to compete with a crazy academic, or just give him the money?" The ecosystem is so far along it's cheaper to fund than to fork.

---

Expand Down Expand Up @@ -304,7 +304,7 @@ Development-as-time-series database. Stores snapshots of: lines of code, danglin
Derive development patterns from timeline data: "this developer writes boilerplate manually — slower but zero FIXMEs", "this AI session left 12 unresolved tags — bullshit detector", "velocity increased 40% after switching to ReScript." Victory conditions: all TODOs resolved, zero panic-attack findings, Vexometer below threshold. Badges, streaks, diagnostic not patronising. Admin enforcement mode for education (universities can require attribution tracking on all submissions).

**Layer 4 — Attribution-to-Licensing Link**
PMPL (based on MPL) requires source attribution. Blake3 provenance chains auto-generate license attribution sections: "Lines 1-50: Jonathan D.A. Jewell. Lines 51-80: Claude Opus 4.6 (AI-assisted, human-reviewed). Lines 81-120: imported from proven-servers (PMPL-1.0-or-later)." Makes source-available requirements trivially verifiable.
PMPL (based on MPL) requires source attribution. Blake3 provenance chains auto-generate license attribution sections: "Lines 1-50: Jonathan D.A. Jewell. Lines 51-80: Claude Opus 4.6 (AI-assisted, human-reviewed). Lines 81-120: imported from proven-servers (MPL-2.0)." Makes source-available requirements trivially verifiable.

**The MRI Metaphor:**
- Sees inside without being invasive (reads blame/tags, doesn't change code)
Expand Down
2 changes: 1 addition & 1 deletion docs/decisions/PANLL-ENSAID-SPEC-AND-DESIGN-DECISIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ Combined score: must+corrective+systems = 15 (do immediately), like+perfective+e
**Date:** 2026-03-02
**Status:** Accepted

Everything is PMPL-1.0-or-later. Funding buys acceleration, not access. "Is it really worth trying to compete with a crazy academic, or just give him the money?"
Everything is MPL-2.0. Funding buys acceleration, not access. "Is it really worth trying to compete with a crazy academic, or just give him the money?"

---

Expand Down
2 changes: 1 addition & 1 deletion docs/developer-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -1275,7 +1275,7 @@ impl IdentityMetrics {

## License

By contributing, you agree to license your contributions under the PMPL-1.0-or-later.
By contributing, you agree to license your contributions under the MPL-2.0.
```

### Development Workflow
Expand Down
Loading
Loading