Add ADR corpus hygiene governance
This commit is contained in:
parent
63464144c5
commit
cffcc11bc3
26 changed files with 604 additions and 1 deletions
283
docs/analysis/adr-corpus-cohesion-dependency-map-2026-06-30.md
Normal file
283
docs/analysis/adr-corpus-cohesion-dependency-map-2026-06-30.md
Normal 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-0027–0029 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-0055–0057 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.
|
||||
|
||||
|
|
@ -130,3 +130,13 @@ STATE reconcile to the truth.**
|
|||
- **Avoided hidden normalization / stochastic / approximate / unreviewed mutation:**
|
||||
Yes — documentation + one deterministic regeneration; no engine change.
|
||||
- **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.
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
and the canonical-string serialization would still need to be hand-controlled
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -110,3 +110,13 @@ assumed validated.
|
|||
|
||||
Phase-1 canonicalizer hardening only. Does **not** build `modus_ponens`,
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -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
|
||||
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.
|
||||
|
||||
## 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.
|
||||
|
|
|
|||
|
|
@ -105,3 +105,13 @@ named here so the boundary travels with the work, not just with the rule ADRs.
|
|||
real proof path (ADR-0204).
|
||||
- **2.3** — `modus_ponens` + the disagreement rule (ADR-0205).
|
||||
- **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.
|
||||
|
|
|
|||
|
|
@ -115,3 +115,13 @@ admission).
|
|||
bypass unit-resolution per §named constraint) + the disagreement/uniqueness rule
|
||||
(the wrong=0 mechanism) — ADR-0205.
|
||||
- **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.
|
||||
|
|
|
|||
|
|
@ -114,3 +114,13 @@ strategies (a stronger, currently-false claim). This must never be read as
|
|||
over declared atoms," never "reasons over input."
|
||||
- Multi-step proof composition and a proof *search* (the disagreement rule here is
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -190,3 +190,13 @@ without scoping it fails the build.
|
|||
identity, **live-wiring proof (cognition path)**, taxonomy partition.
|
||||
- Full-surface suite green (doctrine: not smoke).
|
||||
- `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.
|
||||
|
|
|
|||
|
|
@ -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),
|
||||
[extraction-richness-audit-2026-06-03](../analysis/extraction-richness-audit-2026-06-03.md).
|
||||
- **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.
|
||||
|
|
|
|||
|
|
@ -64,3 +64,13 @@ proposal/review path, not runtime truth.
|
|||
- Efferent action records fail if passed as observation units.
|
||||
- Sensorimotor feedback can enter as afferent evidence without enabling motor
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -69,3 +69,13 @@ environment orchestration, but the two halves remain type-separated:
|
|||
- Sensorimotor deltas merge idempotently.
|
||||
- Sensorimotor compiler exposes no decode path.
|
||||
- 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.
|
||||
|
|
|
|||
|
|
@ -123,3 +123,13 @@ To be completed in the Claude lane or local CI after review:
|
|||
- No loader mutation.
|
||||
- No new dependency.
|
||||
- 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.
|
||||
|
|
|
|||
|
|
@ -69,3 +69,13 @@ consume this contract rather than bypass it.
|
|||
- The bench does not import `generate`, mutate Vault, or call
|
||||
`ModalityRegistry.decode`.
|
||||
- `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.
|
||||
|
|
|
|||
|
|
@ -45,3 +45,13 @@ verdict coverage, or any refusal.
|
|||
- No decoded command payload, trajectory, ndarray, or bytes object enters traces.
|
||||
- Physical action remains disabled until a later motor decoder ADR and lab
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -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 +
|
||||
oracle + refusal tests already license it. No guessed math, no silent correction, no answer
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -248,3 +248,13 @@ explicit hazard surface and refuses on any gap.
|
|||
- [x] INV-29 ACCEPTED as the permanent transition-site boundary; allowlist
|
||||
stays `{vault/store.py}` (shipped passing in the proposing PR;
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -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-0158 — reboot event audit (unaffected)
|
||||
- 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.
|
||||
|
|
|
|||
|
|
@ -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
|
||||
└─▶ 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.
|
||||
|
|
|
|||
|
|
@ -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
|
||||
accounts, enable **"Restrict who can push"** (the `restrictions` list) — that is
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -688,3 +688,13 @@ regression.
|
|||
- [ ] 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
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -351,3 +351,13 @@ Exact span bindings ground.
|
|||
Organ-specific contracts determine.
|
||||
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.
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
||||
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.
|
||||
|
|
|
|||
73
docs/decisions/ADR-0225-adr-corpus-hygiene.md
Normal file
73
docs/decisions/ADR-0225-adr-corpus-hygiene.md
Normal 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.
|
||||
|
|
@ -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-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-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 |
|
||||
|
||||
---
|
||||
|
|
@ -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).
|
||||
|
||||
### 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
|
||||
|
|
|
|||
|
|
@ -14,9 +14,9 @@ from generate.problem_frame_builder import (
|
|||
recognized_process_frame_names,
|
||||
recognized_scalar_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_extractors import surface_in_text
|
||||
from generate.process_frames import frame_by_name, lookup_frame
|
||||
from language_packs.loader import lookup_container
|
||||
from language_packs.scalar_equivalence import list_unsupported_surfaces
|
||||
|
|
|
|||
Loading…
Reference in a new issue