Skip to content

chore(rsr): standards compliance — adoc-first cleanup + licence invariant#10

Merged
hyperpolymath merged 2 commits into
mainfrom
claude/modest-hawking-3fd6it
Jun 20, 2026
Merged

chore(rsr): standards compliance — adoc-first cleanup + licence invariant#10
hyperpolymath merged 2 commits into
mainfrom
claude/modest-hawking-3fd6it

Conversation

@hyperpolymath

@hyperpolymath hyperpolymath commented Jun 20, 2026

Copy link
Copy Markdown
Owner

Summary

Brings arghda-core to the hyperpolymath standards / RSR baseline, clears root cruft, and makes the MPL-2.0 / CC-BY-SA-4.0 licence split a formal, enforced invariant. Two commits:

1 — adoc-first cleanup + RSR baseline (5b7aff4)

  • README.mdREADME.adoc (adoc-first), refreshed to feature-complete v0.1. New EXPLAINME.adoc, LICENSE (full MPL-2.0), CODE_OF_CONDUCT.md. Refreshed STATE/META/0-AI-MANIFEST. Removed dist-newstyle/. No duplicate doc formats; just validate-rsr passes.

2 — licence invariant (af5fa44, owner-directed)

  • Applied SPDX headers per file: MPL-2.0 to all code/config/scripts/state (25 .rs, Cargo.toml, .gitignore), CC-BY-SA-4.0 to prose. Fixed drift: prose docs that were MPL-2.0 or CC-BY-4.0CC-BY-SA-4.0.
  • New scripts/check-spdx.sh enforces the split; wired into just check + Rust CI. New .machine_readable/licensing-policy.toml declares it machine-readably.
  • Third-party protection: Cargo.lock (generated), LICENSE (the licence text), and tests/fixtures/ (Agda test data) are excluded and never relicensed. No vendored third-party source exists in-tree; if any is added, the checker fails until it's listed as excluded with its original SPDX preserved — the guard against silent relicensing.

Deliberately NOT done

  • The maximalist rsr-template tree (build/just, verification/proofs, container/, hundreds of placeholder dirs) — vestigial for a small Rust CLI. A formal capability-gated rule for this ("carry a template module iff the repo has the capability it serves") is the proposed follow-up (recorded in STATE.a2ml).

Verification

bash scripts/check-spdx.sh ✓ · cargo fmt --check ✓ · cargo clippy -D warnings ✓ · cargo test ✓ (7 groups) · just validate-rsr ✓.

🤖 Generated with Claude Code

https://claude.ai/code/session_019GiSiEfgZCte35dyykgBHs

claude added 2 commits June 20, 2026 04:57
Aligns arghda-core to the hyperpolymath standards / RSR baseline and tidies
the root. Docs/scaffolding only — no source changes, CI gate unaffected.

- README.md -> README.adoc (adoc-first; README is not one of the four
  GitHub-required .md community-health files). Refreshed to the
  feature-complete v0.1 status (all seven lints, config, dag headlines).
  No duplicate doc formats.
- New EXPLAINME.adoc (orientation pointer: humans -> README.adoc, status ->
  STATE.a2ml, agents -> 0-AI-MANIFEST.a2ml), mirroring the estate convention.
- New LICENSE (full MPL-2.0 text, copied from standards).
- New CODE_OF_CONDUCT.md (Contributor Covenant 2.1).
- Licence headers per estate policy (LICENCE-POLICY.adoc Rule 1): new prose
  docs carry CC-BY-SA-4.0; code/config/state stay MPL-2.0.
- Refreshed machine-readable artefacts: STATE.a2ml (v0.1 feature-complete,
  85%, accurate milestones + maintenance pass), META.a2ml (ADR-005..007 for
  the unused-import shell-out, config precedence, dag-headlines decisions),
  0-AI-MANIFEST.a2ml read-order (README.md -> README.adoc, EXPLAINME first).
- Removed local dist-newstyle/ build cruft (agda-unused build output;
  already gitignored).

Deliberately NOT done (owner-manual only, per LICENCE-POLICY.adoc A2 — an
agent must never bulk-sweep SPDX): per-file MPL-2.0 SPDX headers on src/*.rs.
Flagged in STATE.a2ml as the one remaining compliance gap. Also deliberately
did NOT scaffold the maximalist rsr-template tree (build/just, verification/
proofs, container/, hundreds of placeholder dirs) — that would be the
vestigial cruft this cleanup removes.

`just validate-rsr` passes; `cargo build` + `cargo fmt --check` green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019GiSiEfgZCte35dyykgBHs
Owner-directed (satisfies LICENCE-POLICY.adoc A2's "manual, per-file, by the
owner" gate). Makes the licence split a formal, enforced invariant.

- Applied SPDX headers per file: MPL-2.0 to all code/config/scripts/state
  (25 src+tests .rs, Cargo.toml, .gitignore); CC-BY-SA-4.0 to prose. Fixed
  prose drift: CHANGELOG/CONTRIBUTING/SECURITY MPL-2.0 -> CC-BY-SA-4.0, and
  docs/*.adoc CC-BY-4.0 -> CC-BY-SA-4.0 (the check caught the missing -SA).
- New scripts/check-spdx.sh enforces the invariant; wired into `just check`
  (new `license-check` recipe) and .github/workflows/rust-ci.yml.
- New .machine_readable/licensing-policy.toml declares the rule + the excluded
  set machine-readably.

Third-party protection: nothing not ours is relicensed. Cargo.lock (generated,
enumerates third-party deps), LICENSE (the MPL text itself), and
tests/fixtures/ (Agda test-input data) are excluded. There is no vendored
third-party source in-tree; if any is added, the checker FAILS until it is
listed as excluded with its original SPDX preserved — that failure is the
guard against silent relicensing.

`bash scripts/check-spdx.sh` OK; fmt/clippy/test green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019GiSiEfgZCte35dyykgBHs
@hyperpolymath hyperpolymath changed the title chore(rsr): standards compliance + adoc-first root cleanup chore(rsr): standards compliance — adoc-first cleanup + licence invariant Jun 20, 2026
@hyperpolymath hyperpolymath marked this pull request as ready for review June 20, 2026 05:15
@hyperpolymath hyperpolymath merged commit e253289 into main Jun 20, 2026
1 check passed
@hyperpolymath hyperpolymath deleted the claude/modest-hawking-3fd6it branch June 20, 2026 05:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants