Add ADR corpus hygiene governance

This commit is contained in:
Shay 2026-06-30 12:42:09 -07:00
parent 63464144c5
commit cffcc11bc3
26 changed files with 604 additions and 1 deletions

View file

@ -0,0 +1,283 @@
# ADR Corpus Cohesion Dependency Map — 2026-06-30
Status: Phase 1 dependency map for ADR cohesion remediation.
Ground truth:
- Local repository root: `/Users/kaizenpro/Projects/core`
- Local branch / GitHub `main` SHA: `63464144c53f2499b1ea9e5bf3799e80c57a0b53`
- GitHub tree verification used `gh api repos/AssetOverflow/core/contents...` for `/`, `/core`, `/core_ingest`, `/core-rs`, and `/docs/decisions`.
- ADR-0200 exists as `docs/decisions/ADR-0200-expert-claim-reconciliation.md`.
- Baseline lane `make test-fast` is red on current `main`: `54 failed, 10884 passed, 23 skipped, 912 deselected`.
## Map
| ADR Cluster | Primary Surfaces | Additional Surfaces | Tests / Evidence Surfaces | Influence |
|---|---|---|---|---|
| ADR-00270029 Safety / Identity | `packs/safety/loader.py`, `packs/safety/check.py` | `core/proposal_review/safety.py`, `chat/pack_resolver.py` | `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` | Loads immutable safety boundaries, observes runtime safety verdicts, prevents proposal sink serving consumption, keeps pack surface resolution deterministic and non-mutating. |
| ADR-0001 Foundational / Versor | `vocab/manifold.py` | `core_ingest/manifold.py`, `core_ingest/pipeline.py`, `language_packs/en_seeder.py` | `tests/test_vocab_manifold_invariants.py`, `tests/test_engine_loop_proof.py`, `tests/test_determinism_proofs.py`, `core-rs/tests/test_versor.rs` | Enforces unit-versor insertion/update, exact `cga_inner` nearest lookup, and reconstruction-over-storage provenance indexing. |
| ADR-00550057 Teaching / Memory / Epistemic | `teaching/review.py`, `teaching/replay.py`, `teaching/proposals.py`, `teaching/promotion.py`, `teaching/supersede.py`, `teaching/contemplation.py`, `teaching/epistemic.py`, `teaching/discovery.py` | `core/proposal_review/*`, `core/learning_arena/*`, `vault/store.py`, `chat/teaching_grounding.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` | Keeps learning proposal-only until review, gates corpus append through replay-equivalence, defaults epistemic state to SPECULATIVE, and keeps practice/reporting separated from serving mutation. |
## Caller / Callee Relationships
```mermaid
flowchart TD
A27[ADR-0027 Identity packs] --> RT[chat/runtime.py]
A29[ADR-0029 Safety packs] --> SL[packs/safety/loader.py]
SL --> SP[SafetyPack]
SP --> SC[packs/safety/check.py SafetyCheck]
SC --> TV[Turn verdict telemetry]
PRS[core/proposal_review/safety.py dry_check] --> PSS[teaching/proposals/comprehension_failures]
PRS --> NoServe[serving path sink non-consumption check]
A1[ADR-0001 VocabManifold] --> VM[vocab/manifold.py]
VM --> Add[add/update assert unit versor]
VM --> Near[nearest via exact cga_inner]
CI[core_ingest/manifold.py SegmentManifold] --> Recon[semantic_key -> SourceSpan reconstruction]
A55[ADR-0055 discovery promotion] --> Disc[teaching/discovery.py]
Disc --> Cont[teaching/contemplation.py]
Cont --> Prop[teaching/proposals.py]
Prop --> Replay[teaching/replay.py]
Replay --> Accept[accept_proposal]
Accept --> Append[append_chain_to_corpus]
Sup[teaching/supersede.py] --> Append
Arena[core/learning_arena/engine.py] --> Ledger[core/reliability_gate ClassTally]
```
## Paste-First Excerpts
### Safety pack loader
`packs/safety/loader.py` defines the fail-closed loader and immutable boundary payload:
```python
class SafetyPackError(RuntimeError):
"""Raised when the safety pack is missing, malformed, or unverified.
Inherits from ``RuntimeError`` (not ``ValueError`` like
``IdentityPackError``) because a missing safety pack is a fail-closed
runtime condition, not a recoverable input-validation error.
"""
```
```python
def load_safety_pack(
pack_id: str = DEFAULT_SAFETY_PACK,
*,
search_paths: Iterable[Path | str] | None = None,
require_ratified: bool | None = None,
) -> SafetyPack:
"""Load the safety pack. Fails closed on any error.
```
### Safety check predicates
`packs/safety/check.py` wires `preserve_versor_closure`, no fabricated sources, no silent correction, no identity override, and no hot-path repair:
```python
_DEFAULT_PREDICATES: dict[str, SafetyPredicate] = {
"no_fabricated_source": _predicate_no_fabricated_source,
"no_hot_path_repair": _predicate_no_hot_path_repair,
"no_identity_override": _predicate_no_identity_override,
"no_silent_correction": _predicate_no_silent_correction,
"preserve_versor_closure": _predicate_versor_closure,
}
```
### Proposal sink dry-check
`core/proposal_review/safety.py` verifies that proposal artifacts are inert and unconsumed by serving paths:
```python
def dry_check(
proposals: list[PendingProposal],
malformed: list[MalformedArtifact],
*,
root: Path | None = None,
repo_root: Path | None = None,
) -> SafetyVerdict:
"""Verify every artifact is inert and the sink is serving-unconsumed. Returns a SafetyVerdict."""
```
### Pack resolver
`chat/pack_resolver.py` is deterministic, immutable, and reconstruction-over-storage aligned:
```python
def resolve_lemma(
lemma: str,
pack_ids: tuple[str, ...] = DEFAULT_RESOLVABLE_PACK_IDS,
) -> tuple[str, tuple[str, ...]] | None:
"""Return ``(pack_id, semantic_domains)`` for the first pack in
*pack_ids* whose lexicon contains *lemma*, else ``None``.
```
### Vocab manifold
`vocab/manifold.py` enforces the full unit-versor residual on insertion and replacement:
```python
def _assert_manifold_versor(word: str, versor: np.ndarray, *, replacement: bool = False) -> None:
residual, scalar, residue_norm = _versor_diagnostics(versor)
if residual > _MANIFOLD_RESIDUAL_TOLERANCE:
noun = "replacement versor" if replacement else "versor"
```
`nearest()` stays exact:
```python
def nearest(
self,
F: np.ndarray,
exclude_idx: int = -1,
exclude_indices: set[int] | frozenset[int] | None = None,
candidate_indices: np.ndarray | list[int] | tuple[int, ...] | None = None,
) -> tuple[str, int]:
"""
Find the word whose versor is closest to F by CGA inner product.
```
### Ingest reconstruction manifold
`core_ingest/manifold.py` stores provenance spans, not whole documents:
```python
class SegmentManifold:
"""
Append-only index: semantic_key -> list[ManifoldEntry].
```
```python
def spans_for(self, semantic_key: str) -> list[SourceSpan]:
"""
Return all SourceSpan records for a given semantic_key,
flattened across all ManifoldEntry records.
```
### Epistemic status
`teaching/epistemic.py` defaults unknown status to SPECULATIVE:
```python
def parse_status(value: str | None) -> EpistemicStatus:
"""Parse a serialised status string, defaulting to SPECULATIVE.
```
### Teaching review
`teaching/review.py` rejects identity override and keeps accepted examples SPECULATIVE by default:
```python
def review_correction(
candidate: CorrectionCandidate,
*,
identity_score: IdentityScore | None = None,
identity_manifold: IdentityManifold | None = None,
epistemic_status: EpistemicStatus = EpistemicStatus.SPECULATIVE,
) -> ReviewedTeachingExample:
```
### Proposal / replay / append path
`teaching/proposals.py` identifies `TeachingChainProposal` as the corpus extension path:
```python
"""ADR-0057 Phase C2 — TeachingChainProposal + append-only proposal log.
A ``TeachingChainProposal`` is the **only** path by which the
system extends its active teaching corpus.
```
The only write primitive is explicit and append-only:
```python
def append_chain_to_corpus(
chain: dict[str, Any],
*,
corpus_path: Path,
provenance: Provenance,
chain_id: str | None = None,
superseded_by: str | None = None,
) -> str:
```
`teaching/replay.py` verifies replay-equivalence without mutating the active corpus:
```python
def run_replay_equivalence(chain: dict[str, Any]) -> ReplayEvidence:
"""Run the gate. Active corpus bytes byte-identical pre/post.
```
### Discovery and contemplation
`teaching/discovery.py` emits proposal candidates only when the turn is boundary-clean and ungrounded:
```python
def extract_discovery_candidates(
turn_event: Any,
intent_tag: IntentTag | None,
intent_subject_lemma: str | None,
*,
grounding_source: str | None = None,
) -> tuple[DiscoveryCandidate, ...]:
```
`teaching/contemplation.py` enriches without mutation:
```python
def contemplate(
candidate: DiscoveryCandidate,
*,
max_depth: int = _DEFAULT_MAX_DEPTH,
vault_probe: _VaultProbe | None = None,
) -> DiscoveryCandidate:
"""Run the contemplation loop on a single candidate.
Returns an *enriched* candidate (same id, populated C1 fields).
Never mutates the corpus, the pack, or the input candidate
```
### Supersession and promotion
`teaching/supersede.py` composes around `append_chain_to_corpus`:
```python
"""ADR-0057 follow-up — operator-driven supersession of an active corpus chain.
Supersession is the **second** mutation surface on the reviewed
teaching corpus (alongside ``teaching.proposals.accept_proposal``).
```
`teaching/promotion.py` creates operator-visible review queues without synthesis:
```python
def promote_gaps(
gaps: Iterable[Gap],
*,
threshold: int = 3,
include_tainted: bool = False,
) -> tuple[GapPromotion, ...]:
```
### Learning arena
`core/learning_arena/engine.py` runs sealed practice and mutates nothing:
```python
def run_practice(
problems: Sequence[DomainProblem],
solver: DomainSolver,
tether: GoldTether,
*,
diagnose: Callable[[str], str] = _default_diagnose,
tier2_verifier: Tier2Verifier | None = None,
) -> PracticeReport:
```
## Primary vs. Additional Surfaces
- Primary surfaces own enforcement or construction boundaries: `packs/safety/loader.py`, `packs/safety/check.py`, `vocab/manifold.py`, and `teaching/*`.
- Additional surfaces observe, route, or report without becoming alternate authority: `core/proposal_review/*`, `chat/pack_resolver.py`, `core_ingest/manifold.py`, and `core/learning_arena/*`.
- No mapped surface authorizes approximate recall, stochastic fallback, hidden normalization, or unreviewed durable mutation.

View file

@ -130,3 +130,13 @@ STATE reconcile to the truth.**
- **Avoided hidden normalization / stochastic / approximate / unreviewed mutation:** - **Avoided hidden normalization / stochastic / approximate / unreviewed mutation:**
Yes — documentation + one deterministic regeneration; no engine change. Yes — documentation + one deterministic regeneration; no engine change.
- **Trust boundary:** read-only inputs; writes are review-gated on a branch. - **Trust boundary:** read-only inputs; writes are review-gated on a branch.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -124,3 +124,13 @@ canonicalizer fails equivalence. The suite is non-vacuous by construction.
hash-based node ids and reordering heuristics; CUDD is a C build/footprint cost; hash-based node ids and reordering heuristics; CUDD is a C build/footprint cost;
and the canonical-string serialization would still need to be hand-controlled and the canonical-string serialization would still need to be hand-controlled
for determinism, so the library does not save the load-bearing work. for determinism, so the library does not save the load-bearing work.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -110,3 +110,13 @@ assumed validated.
Phase-1 canonicalizer hardening only. Does **not** build `modus_ponens`, Phase-1 canonicalizer hardening only. Does **not** build `modus_ponens`,
binding-graph wiring, or any predicate/FOL support. binding-graph wiring, or any predicate/FOL support.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -211,3 +211,13 @@ canonical form. This document is authoritative for the atom layer and the honest
boundary. Any change to the formula grammar updates §1 of this doc in the **same boundary. Any change to the formula grammar updates §1 of this doc in the **same
PR** as the code change. The proof corpus conforms to this doc; it does not extend PR** as the code change. The proof corpus conforms to this doc; it does not extend
the grammar or the atom convention on its own. the grammar or the atom convention on its own.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -105,3 +105,13 @@ named here so the boundary travels with the work, not just with the rule ADRs.
real proof path (ADR-0204). real proof path (ADR-0204).
- **2.3**`modus_ponens` + the disagreement rule (ADR-0205). - **2.3**`modus_ponens` + the disagreement rule (ADR-0205).
- **2.4** — atom→`EpistemicNode` carrier grounding (ADR-0206). - **2.4** — atom→`EpistemicNode` carrier grounding (ADR-0206).
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -115,3 +115,13 @@ admission).
bypass unit-resolution per §named constraint) + the disagreement/uniqueness rule bypass unit-resolution per §named constraint) + the disagreement/uniqueness rule
(the wrong=0 mechanism) — ADR-0205. (the wrong=0 mechanism) — ADR-0205.
- **2.4** — atom→ADR-0144 `EpistemicNode` grounding — ADR-0206. - **2.4** — atom→ADR-0144 `EpistemicNode` grounding — ADR-0206.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -114,3 +114,13 @@ strategies (a stronger, currently-false claim). This must never be read as
over declared atoms," never "reasons over input." over declared atoms," never "reasons over input."
- Multi-step proof composition and a proof *search* (the disagreement rule here is - Multi-step proof composition and a proof *search* (the disagreement rule here is
over a given premise set, single-step) — later, separately scoped. over a given premise set, single-step) — later, separately scoped.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -190,3 +190,13 @@ without scoping it fails the build.
identity, **live-wiring proof (cognition path)**, taxonomy partition. identity, **live-wiring proof (cognition path)**, taxonomy partition.
- Full-surface suite green (doctrine: not smoke). - Full-surface suite green (doctrine: not smoke).
- `scripts/verify_lane_shas.py` green; `3/47/0` preserved. - `scripts/verify_lane_shas.py` green; `3/47/0` preserved.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -219,3 +219,13 @@ finish-to-instrument). This ADR removes all three at once — **ratify** (§3),
- **Evidence:** [composition-capability-scope](../analysis/composition-capability-scope.md), - **Evidence:** [composition-capability-scope](../analysis/composition-capability-scope.md),
[extraction-richness-audit-2026-06-03](../analysis/extraction-richness-audit-2026-06-03.md). [extraction-richness-audit-2026-06-03](../analysis/extraction-richness-audit-2026-06-03.md).
- **Thesis:** [[thesis-decoding-not-generating]]. - **Thesis:** [[thesis-decoding-not-generating]].
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -64,3 +64,13 @@ proposal/review path, not runtime truth.
- Efferent action records fail if passed as observation units. - Efferent action records fail if passed as observation units.
- Sensorimotor feedback can enter as afferent evidence without enabling motor - Sensorimotor feedback can enter as afferent evidence without enabling motor
emission. emission.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -69,3 +69,13 @@ environment orchestration, but the two halves remain type-separated:
- Sensorimotor deltas merge idempotently. - Sensorimotor deltas merge idempotently.
- Sensorimotor compiler exposes no decode path. - Sensorimotor compiler exposes no decode path.
- Trace records contain no command or trajectory payload. - Trace records contain no command or trajectory payload.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -123,3 +123,13 @@ To be completed in the Claude lane or local CI after review:
- No loader mutation. - No loader mutation.
- No new dependency. - No new dependency.
- No empirical claim that the fixtures pass before they are run. - No empirical claim that the fixtures pass before they are run.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -69,3 +69,13 @@ consume this contract rather than bypass it.
- The bench does not import `generate`, mutate Vault, or call - The bench does not import `generate`, mutate Vault, or call
`ModalityRegistry.decode`. `ModalityRegistry.decode`.
- `core eval environment-falsification --json` is hash-pinned. - `core eval environment-falsification --json` is hash-pinned.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -45,3 +45,13 @@ verdict coverage, or any refusal.
- No decoded command payload, trajectory, ndarray, or bytes object enters traces. - No decoded command payload, trajectory, ndarray, or bytes object enters traces.
- Physical action remains disabled until a later motor decoder ADR and lab - Physical action remains disabled until a later motor decoder ADR and lab
safety contract. safety contract.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -173,3 +173,13 @@ Build R2 v1 as the off-serving finite-integer constraint setup compiler on the C
The contract is pinned by the gold and this ADR; capability grows only where the gold + The contract is pinned by the gold and this ADR; capability grows only where the gold +
oracle + refusal tests already license it. No guessed math, no silent correction, no answer oracle + refusal tests already license it. No guessed math, no silent correction, no answer
without a proven setup. without a proven setup.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -248,3 +248,13 @@ explicit hazard surface and refuses on any gap.
- [x] INV-29 ACCEPTED as the permanent transition-site boundary; allowlist - [x] INV-29 ACCEPTED as the permanent transition-site boundary; allowlist
stays `{vault/store.py}` (shipped passing in the proposing PR; stays `{vault/store.py}` (shipped passing in the proposing PR;
ratification confirms it). ratification confirms it).
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -138,3 +138,13 @@ All of the following must hold (proven by `tests/test_adr_0219_generation_checkp
- ADR-0157 — revision-mismatch warning on load (unaffected) - ADR-0157 — revision-mismatch warning on load (unaffected)
- ADR-0158 — reboot event audit (unaffected) - ADR-0158 — reboot event audit (unaffected)
- L10 continuity hardening brief pack: `docs/handoff/l10-continuity-hardening-briefs-2026-06-15.md` - L10 continuity hardening brief pack: `docs/handoff/l10-continuity-hardening-briefs-2026-06-15.md`
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -291,3 +291,13 @@ git diff --stat c6d0e2a92004 f5c6914d0083 -- packs/{identity,safety,ethics,regis
get_git_revision() ──▶ code_revision (hashed into engine_identity) engine_identity.py:99 → strict raise get_git_revision() ──▶ code_revision (hashed into engine_identity) engine_identity.py:99 → strict raise
└─▶ written_at_revision (provenance, unhashed) __init__.py:350 → ADR-0157 warn └─▶ written_at_revision (provenance, unhashed) __init__.py:350 → ADR-0157 warn
``` ```
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -111,3 +111,13 @@ through the now-working normal path — its own clean merge is the proof.
- If collaborators are added later and merges should be restricted to specific - If collaborators are added later and merges should be restricted to specific
accounts, enable **"Restrict who can push"** (the `restrictions` list) — that is accounts, enable **"Restrict who can push"** (the `restrictions` list) — that is
the correct lever, **not** required reviews. the correct lever, **not** required reviews.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -688,3 +688,13 @@ regression.
- [ ] The PR sequence (§10) and the "INV-31 ships with the type" rule are authorized. - [ ] The PR sequence (§10) and the "INV-31 ships with the type" rule are authorized.
- [ ] The new invariant number **INV-31** is free / correctly assigned (review confirmed - [ ] The new invariant number **INV-31** is free / correctly assigned (review confirmed
no existing `INV-31` reference). no existing `INV-31` reference).
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -351,3 +351,13 @@ Exact span bindings ground.
Organ-specific contracts determine. Organ-specific contracts determine.
Unsupported or ambiguous cases refuse. Unsupported or ambiguous cases refuse.
``` ```
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -165,3 +165,13 @@ ADR-0224 is ratified when the following are accepted:
4. Ensure every family spec produced after ratification includes the required template fields and at least two non-math domain examples with cross-domain evidence. 4. Ensure every family spec produced after ratification includes the required template fields and at least two non-math domain examples with cross-domain evidence.
This ADR provides the constitutional map layer that was missing. It keeps the architecture bounded, executable, and aligned with the doctrine already established in ADR-0223 while preventing the next treadmill of unbounded family addition. Ratification of the structure and gate first allows controlled, evidenced expansion. This ADR provides the constitutional map layer that was missing. It keeps the architecture bounded, executable, and aligned with the doctrine already established in ADR-0223 while preventing the next treadmill of unbounded family addition. Ratification of the structure and gate first allows controlled, evidenced expansion.
## Governance Cross-Reference (ADR-0225)
This late-corpus ADR is governed by [ADR-0225](./ADR-0225-adr-corpus-hygiene.md):
- Safety boundaries: changes must preserve ADR-0027/0028/0029 identity and safety-pack boundaries; no identity, safety, or policy mutation is implied unless explicitly reviewed.
- Versor closure: runtime field paths must preserve `versor_condition(F) < 1e-6`; this ADR does not authorize hidden normalization or hot-path drift repair.
- Reconstruction-over-storage: evidence must remain reconstructive and content-addressed rather than duplicating opaque state.
- Replay-equivalence: serving, teaching, promotion, or checkpoint changes require a named deterministic replay / byte-equivalence gate.
- Mutation standing: any durable corpus, pack, policy, or epistemic-status mutation remains reviewed, proposal-only until accepted, or proof-carrying as applicable.

View file

@ -0,0 +1,73 @@
# 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:
1. **Safety boundaries:** ADR-0027, ADR-0028, ADR-0029, and the safety-pack / identity-pack trust boundary.
2. **Versor closure:** `versor_condition(F) < 1e-6`, equivalently `||F * reverse(F) - 1||_F < 1e-6` for runtime field states.
3. **Reconstruction-over-storage:** store enough structured state to reconstruct the needed evidence; do not duplicate opaque state as a substitute for provenance.
4. **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-0073d` or `ADR-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-0225` because `ADR-0201` is 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/decisions/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-0200` through `ADR-0224`, and this `ADR-0225`.
- Index / map artifacts: `docs/decisions/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`, and `core-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 `main` is not green: `make test-fast` reports `54 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.

View file

@ -252,6 +252,29 @@ ADRs record significant architectural decisions: what was decided, why, what alt
| [ADR-0197](ADR-0197-vision-compiler-delta-crdt.md) | CORE-native Vision Compiler over the Delta-CRDT Substrate | Proposed | | [ADR-0197](ADR-0197-vision-compiler-delta-crdt.md) | CORE-native Vision Compiler over the Delta-CRDT Substrate | Proposed |
| [ADR-0198](ADR-0198-motor-efferent-decoder-spike.md) | Motor as Efferent Modality — Protocol Gap & Governance (Design Spike) | Proposed (design spike — no implementation) | | [ADR-0198](ADR-0198-motor-efferent-decoder-spike.md) | Motor as Efferent Modality — Protocol Gap & Governance (Design Spike) | Proposed (design spike — no implementation) |
| [ADR-0199](ADR-0199-cross-domain-learning-arena-contract.md) | Cross-Domain Learning Arena Contract | Proposed | | [ADR-0199](ADR-0199-cross-domain-learning-arena-contract.md) | Cross-Domain Learning Arena Contract | Proposed |
| [ADR-0200](ADR-0200-expert-claim-reconciliation.md) | Expert-Claim Reconciliation: Record the Fail-Closed Revert as Designed Behavior | Accepted |
| [ADR-0201](ADR-0201-proposition-canonicalizer.md) | Propositional Canonicalizer (`proof_chain`) | Accepted |
| [ADR-0201.1](ADR-0201.1-out-of-regime-detector.md) | Principled Out-of-Regime Detector | Accepted |
| [ADR-0202](ADR-0202-proposition-representation-contract.md) | Proposition Representation Contract (`proof_chain`) | Accepted |
| [ADR-0203](ADR-0203-binding-graph-acyclicity-invariant.md) | Binding-Graph Acyclicity Invariant | Accepted |
| [ADR-0204](ADR-0204-proof-graph-builder.md) | Proof-Graph Builder | Accepted |
| [ADR-0205](ADR-0205-modus-ponens-disagreement-rule.md) | Modus Ponens + Disagreement Rule | Accepted |
| [ADR-0206](ADR-0206-response-governance-bridge.md) | Response Governance Bridge | Accepted |
| [ADR-0207](ADR-0207-gsm8k-substrate-ratification.md) | GSM8K Comprehension/Composition Substrate Ratification | Accepted |
| [ADR-0208](ADR-0208-environmental-sensorium-loop.md) | Environmental Sensorium Loop | Accepted |
| [ADR-0209](ADR-0209-sensorimotor-feedback-contract.md) | Sensorimotor Feedback Is Afferent | Accepted |
| [ADR-0210](ADR-0210-l10-grounding-pack.md) | L10 Finite Grounding Pack and Adversarial Wrong=0 Fixtures | Accepted |
| [ADR-0211](ADR-0211-conformal-falsification-bench.md) | Conformal Falsification Bench | Accepted |
| [ADR-0216](ADR-0216-motor-verdict-lowering.md) | Motor Verdict Lowering Prerequisite | Accepted |
| [ADR-0217](ADR-0217-r2-finite-integer-constraint-compiler.md) | R2 Finite-Integer Constraint Compiler | Accepted |
| [ADR-0218](ADR-0218-proof-carrying-coherence-promotion.md) | Proof-Carrying Coherence Promotion | Accepted |
| [ADR-0219](ADR-0219-generation-checkpoint-atomicity.md) | Generation-dir Atomic Checkpoint | Accepted |
| [ADR-0220](ADR-0220-engine-identity-vs-build-provenance.md) | Engine Identity vs. Build Provenance | Accepted |
| [ADR-0221](ADR-0221-codeowners-review-topology.md) | Codeowners Review Topology | Accepted |
| [ADR-0222](ADR-0222-frame-verdict-closed-world.md) | FrameVerdict — Frame-General Closed-World Verdict | Accepted |
| [ADR-0223](ADR-0223-semantic-substrate-affordance-audit.md) | Semantic Substrate Affordance Audit and Foundation Alignment | Accepted |
| [ADR-0224](ADR-0224-foundational-substrate-readiness-map.md) | Foundational Subject Substrate Readiness and Cross-Domain Affordance Map | Accepted |
| [ADR-0225](ADR-0225-adr-corpus-hygiene.md) | ADR Corpus Hygiene, Numbering Policy, and Cross-Reference Governance | Accepted (2026-06-30) |
| [ADR-0200](ADR-0200-expert-claim-reconciliation.md) | Expert-Claim Reconciliation: record the math fail-closed revert as designed behavior | Proposed | | [ADR-0200](ADR-0200-expert-claim-reconciliation.md) | Expert-Claim Reconciliation: record the math fail-closed revert as designed behavior | Proposed |
--- ---
@ -457,6 +480,10 @@ Establishes calibrated attempt-and-eliminate learning under a strict two-regime
Shifts the engine toward concurrent multi-modal pipelines. Decouples physical lock contention on vision/audio from the logical manifold using Delta-CRDT sharding in Rust (ADR-0180), implements `audio_core_v1` as a deterministic acoustic compiler (ADR-0181), and stubs ASR serving boundaries to prevent learned Whisper models from contaminating production serving paths (ADR-0183). Shifts the engine toward concurrent multi-modal pipelines. Decouples physical lock contention on vision/audio from the logical manifold using Delta-CRDT sharding in Rust (ADR-0180), implements `audio_core_v1` as a deterministic acoustic compiler (ADR-0181), and stubs ASR serving boundaries to prevent learned Whisper models from contaminating production serving paths (ADR-0183).
### ADR Corpus Governance — ADR-0225 (2026-06-30)
ADR-0225 makes this README the living ADR reference matrix and requires future ADRs touching runtime state, packs, teaching, memory, replay, or invariants to cite safety boundaries, versor closure (`versor_condition(F) < 1e-6`), reconstruction-over-storage, replay-equivalence gates, and mutation standing. The verified Phase 1 dependency map is `docs/analysis/adr-corpus-cohesion-dependency-map-2026-06-30.md`.
--- ---
## Session Logs ## Session Logs

View file

@ -14,9 +14,9 @@ from generate.problem_frame_builder import (
recognized_process_frame_names, recognized_process_frame_names,
recognized_scalar_surfaces, recognized_scalar_surfaces,
recognized_unit_surfaces, recognized_unit_surfaces,
surface_in_text,
) )
from generate.problem_frame_contracts import assess_contracts, recommended_migration_target as contract_target from generate.problem_frame_contracts import assess_contracts, recommended_migration_target as contract_target
from generate.problem_frame_extractors import surface_in_text
from generate.process_frames import frame_by_name, lookup_frame from generate.process_frames import frame_by_name, lookup_frame
from language_packs.loader import lookup_container from language_packs.loader import lookup_container
from language_packs.scalar_equivalence import list_unsupported_surfaces from language_packs.scalar_equivalence import list_unsupported_surfaces