- Green make test-fast suite: fixed exemplar corpus issues, proposal validation, atomic state checkpointing (scheme=2), turn-scoped state leakage in ChatRuntime.chat - ADR corpus consolidation: migrated all ADRs to docs/adr/, appended ADR-0225 governance cross-reference anchors to foundational ADRs (0001, 0027-0029, 0055-0057) - Pack definitional closure: fixed en_arithmetic_v1 glosses.jsonl JSON error, updated manifest checksum, marked en_core_syntax_v1 definitional_layer: false
5 KiB
ADR-0225 — ADR Corpus Hygiene, Numbering Policy, and Cross-Reference Governance
Status: Accepted (2026-06-30)
Context: ADR-0201 is already occupied by ADR-0201-proposition-canonicalizer.md; therefore this governance decision uses the next available top-level ADR number after ADR-0224.
Decision
CORE will treat the ADR corpus as a governed graph, not a loose directory of historical notes.
Every future ADR that touches runtime state, packs, teaching, memory, replay, or invariants must explicitly cite these standing anchors:
- Safety boundaries: ADR-0027, ADR-0028, ADR-0029, and the safety-pack / identity-pack trust boundary.
- Versor closure:
versor_condition(F) < 1e-6, equivalently||F * reverse(F) - 1||_F < 1e-6for runtime field states. - Reconstruction-over-storage: store enough structured state to reconstruct the needed evidence; do not duplicate opaque state as a substitute for provenance.
- Replay-equivalence gates: reviewed mutation and serving changes must name the deterministic replay or byte-equivalence gate that proves no hidden drift.
Numbering Discipline
- Prefer sequential top-level numbering.
- Use sub-numbering only for clearly phased work inside one decision family, for example
ADR-0073a–ADR-0073dorADR-0119.1–ADR-0119.8. - Gaps are permitted only when accompanied by explicit superseding, reservation, or reconciliation notes.
- Duplicate top-level numbers are forbidden except where already historical; future remediation must add reconciliation notes rather than silently renaming historical files.
- Governance ADRs must not occupy an already-used number. This ADR uses
ADR-0225becauseADR-0201is already live.
Mandatory Cross-Reference Rule
Every new or amended ADR in the scoped areas must include a short Governance citations or equivalent section naming:
- safety / identity boundary impact;
- versor closure impact;
- reconstruction-over-storage impact;
- replay-equivalence / deterministic validation impact;
- mutation standing: no mutation, SPECULATIVE/proposal-only, reviewed durable mutation, or proof-carrying promotion.
If an item is not applicable, the ADR must say why. Absence is not acceptable.
Index Maintenance
docs/adr/README.md is the living reference matrix for ADR navigation. Every new ADR must update it in the same change set with:
- ADR number, title, and status;
- cluster / chain membership when applicable;
- supersedes / superseded-by note when applicable;
- governance anchors when the ADR falls under this policy.
Consequences and Affected Corpus
This policy affects all future ADRs and all amendments to existing ADRs.
This remediation batch specifically updates or audits:
- ADRs:
ADR-0001,ADR-0027,ADR-0028,ADR-0029,ADR-0055,ADR-0056,ADR-0057,ADR-0200throughADR-0224, and thisADR-0225. - Index / map artifacts:
docs/adr/README.md,docs/analysis/adr-corpus-cohesion-dependency-map-2026-06-30.md. - Safety / identity code surfaces:
packs/safety/loader.py,packs/safety/check.py,core/proposal_review/safety.py,chat/pack_resolver.py. - Foundational / versor code surfaces:
vocab/manifold.py,core_ingest/manifold.py. - Teaching / memory / epistemic code surfaces:
teaching/review.py,teaching/replay.py,teaching/proposals.py,teaching/promotion.py,teaching/supersede.py,teaching/contemplation.py,teaching/epistemic.py,teaching/discovery.py. - Additional learning / review surfaces:
core/proposal_review/,core/learning_arena/. - Test surfaces identified during mapping:
tests/test_safety_pack.py,tests/test_ethics_refusal_opt_in.py,tests/test_epistemic_phase3_state_tagging.py,tests/test_identity_continuity_proof.py,tests/test_vocab_manifold_invariants.py,tests/test_engine_loop_proof.py,tests/test_determinism_proofs.py,tests/test_learning_loop_demo.py,tests/test_teaching_loop_bench.py,tests/test_phase_d_replay_evidence.py,tests/test_discovery_candidates.py,tests/test_mutation_proposal_type.py,tests/test_proof_carrying_promotion_demo.py, andcore-rs/tests/test_versor.rs.
Validation
- The Phase 1 dependency map is
docs/analysis/adr-corpus-cohesion-dependency-map-2026-06-30.md. - Baseline on current
mainis not green:make test-fastreports54 failed, 10884 passed, 23 skipped, 912 deselected. - This ADR is documentation-governance only. It adds no field operator, no recall path, no pack mutation, and no runtime serving path.
Governance Citations
- Safety boundaries: ADR-0027, ADR-0028, ADR-0029; no safety behavior is changed here.
- Versor closure:
versor_condition(F) < 1e-6; no field state construction or propagation is changed here. - Reconstruction-over-storage: this ADR requires index maintenance and traceable map artifacts instead of inferred claims.
- Replay-equivalence: future scoped ADRs must name their deterministic validation gate; this ADR records the current red baseline rather than claiming green.
- Mutation standing: documentation-only; no pack, teaching corpus, vault, or runtime mutation path is added.