diff --git a/docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md b/docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md index 49a37d03..9f359eec 100644 --- a/docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md +++ b/docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md @@ -1,6 +1,6 @@ # ADR-0241: Wave-Field Driven Hyperbolic Atlas and Resonant Algebraic Cognition -**Status**: Proposed — substrate + entity suite + ADR-0242 packing/Fibonacci + P9 Trace A wave_seam + P10 Trace B wave_energy_boundary (residual→energy/τ/crystallization); remaining cohesion package P12 governance (+ optional P11 Rust); acceptance path: Joshua review +**Status**: Proposed — **implementation complete (P0–P10)**; ready for Joshua acceptance review (do not self-Accept). Optional P11 Rust deferred. Checklist: `docs/audit/adr_0241_cohesion_acceptance_checklist.md`. **Date**: 2026-07-13 **Deciders**: Joshua Shay + multi-model R&D **Traceability**: Issue #14, parent #10 diff --git a/docs/adr/ADR-0242-atlas-packing-and-fibonacci.md b/docs/adr/ADR-0242-atlas-packing-and-fibonacci.md index d75d0118..ee866445 100644 --- a/docs/adr/ADR-0242-atlas-packing-and-fibonacci.md +++ b/docs/adr/ADR-0242-atlas-packing-and-fibonacci.md @@ -1,6 +1,6 @@ # ADR-0242: Hyperbolic Atlas Golden-Angle Packing and Fibonacci Search -**Status**: Proposed — packing + Fibonacci search green on branch; acceptance path: Joshua review + merge +**Status**: Proposed — packing + Fibonacci search + multi-scale τ schedule green; **ready for Joshua acceptance review** (do not self-Accept). Checklist: `docs/audit/adr_0241_cohesion_acceptance_checklist.md`. **Date**: 2026-07-14 **Deciders**: Joshua Shay + multi-model R&D (Gemini implementation pass) **Traceability**: PR #37, parent ADR-0241 / cohesion master plan diff --git a/docs/audit/adr_0241_cohesion_acceptance_checklist.md b/docs/audit/adr_0241_cohesion_acceptance_checklist.md new file mode 100644 index 00000000..2033e1d7 --- /dev/null +++ b/docs/audit/adr_0241_cohesion_acceptance_checklist.md @@ -0,0 +1,61 @@ +# ADR-0241 / ADR-0242 Cohesion Acceptance Checklist + +**Status:** Implementation packages P0–P10 green; human **Accepted** flip is Joshua review. +**Plan authority:** session plan P0–P12 (`feat/adr-0241-0242-implementation` lineage). +**This document:** maps cohesion success criteria to **tests**, not prose alone. + +--- + +## Cohesion-complete criteria (plan C0–C8) + +| ID | Criterion | Proof (tests / modules) | +|----|-----------|-------------------------| +| C0 | Cohesion master plan in-repo; Phase 0 A-01…A-04 | `docs/analysis/core_cohesion_master_plan.md`; `tests/test_third_door_cohesion.py` (`test_phase0_*`, deprecation grep) | +| C1 | I-01…I-05 suite under honest tolerances | `test_i01_*` … `test_i05_*` in `tests/test_third_door_cohesion.py` (I-02 float32-honest) | +| C2 | Vault public ABI; no private `_versors` | `test_holographic_vault_does_not_touch_private_versors`; `VaultStore.get_versor` | +| C3 | Serve + Fibonacci + packing + seam quarantine | `test_phase0_a04_serve_path_quarantines_wave_and_fibonacci` | +| C4 | Superposition reconstruct | `test_resonant_reconstruct_*`; `WaveManifold.resonant_reconstruct` | +| C5 | Multimodal ρ (I-04 algebra) | `test_i04_phase_correlation_*` (sensorium feed still open — not blocking algebra pin) | +| C6 | Contemplation SPECULATIVE holographic seam (P9) | `tests/test_adr_0241_wave_contemplation_seam.py` | +| C7 | Pre-deprecation grep CI-green | `test_pre_deprecation_grep_*`, `test_core_ha_package_absent` | +| C8 | runtime_contracts + ADR acceptance path | this checklist + `docs/specs/runtime_contracts.md` § Wave-field cohesion; ADRs **Proposed — ready for Joshua acceptance** | + +## Absolute-mastery add-ons (landed) + +| Package | Proof | +|---------|--------| +| P4 Golden-Angle packing | `tests/test_adr_0242_atlas_packing.py` | +| P5 Fibonacci search | `tests/test_adr_0242_fibonacci.py` | +| P7 polar honesty | `tests/test_adr_0241_wave_manifold.py` (conjugacy authority; multi-grade analytic retired) | +| P8 non-vacuous chiral | chiral suite in `test_adr_0241_wave_manifold.py` | +| P10 energy + τ | `tests/test_adr_0241_wave_energy_boundary.py` | + +## Explicit non-goals (do not block acceptance) + +- Serve-path wiring of wave / Fibonacci +- Resurrecting `core_ha` +- Cosine/ANN multimodal matching +- Hot-path silent unitize / nearest-versor repair +- Continuous \(\psi(X,t)\) continuum solver +- P11 Rust/MLX (optional mechanical sympathy) +- Sensorium compiler feed into ρ (algebra green; feed open) + +## Human gate + +Joshua review may flip: + +- `docs/adr/ADR-0241-…md` → **Accepted** +- `docs/adr/ADR-0242-…md` → **Accepted** + +Agents must **not** self-accept. Implementation complete ≠ Accepted. + +## Validation lane + +```bash +python3 -m pytest \ + tests/test_third_door_cohesion.py \ + tests/test_adr_0241_*.py \ + tests/test_adr_0242_*.py \ + tests/test_adr_0241_governance_p12.py \ + -q +``` diff --git a/docs/research/third-door-blueprint-fidelity.md b/docs/research/third-door-blueprint-fidelity.md index f5c6c848..6c8d9b35 100644 --- a/docs/research/third-door-blueprint-fidelity.md +++ b/docs/research/third-door-blueprint-fidelity.md @@ -266,14 +266,14 @@ PY --- -## 12. Wave-field substrate (ADR-0241) — 🟢 local operators / 🟡 entity mastery +## 12. Wave-field substrate (ADR-0241) — 🟢 local + cohesion packages P0–P10 -> **Status (2026-07-14, honesty pass):** Local Slice 1–3 + holographic vault -> behavioral suites are **GREEN**. Entity cohesion (I-01…I-05, Trace A/B, -> Golden-Angle packing, true \(\mathcal{C}_{AB}\) polar, non-vacuous chiral, -> multimodal \(\rho\)) is the remaining mastery surface — see -> `docs/analysis/core_cohesion_master_plan.md` and -> `tests/test_third_door_cohesion.py`. +> **Status (2026-07-15, P12 honesty pass):** Local operators **and** entity +> cohesion packages P0–P10 are **GREEN** (I-01…I-05 suite, Trace A/B seams, +> packing, Fibonacci, polar honesty, chiral, ρ algebra). Human **Accepted** +> flip is Joshua review only — see +> `docs/audit/adr_0241_cohesion_acceptance_checklist.md`. Still open by design: +> sensorium feed into ρ, optional P11 Rust/MLX, serve remains quarantined. ### Spec (ADR-0241) — contract - Continuous multivector wave-field \(\psi \in Cl(4,1)\) (32-coeff) under Cartan/Procrustes, Surprise, GoldTether, Biography. @@ -333,12 +333,13 @@ PY | Grade-5 pseudoscalar preservation gate — ⚪ RETIRED (vacuous; see §5) | #19 (closed) | | Surprise: metric projection + productivity polarity + DiscoveryCandidate wiring — 🟢 done | #20 (math #26; wiring #31) | | Trajectory invariants + ADR-DAG embedding — 🟢 Python surfaces | #21 | -| Wave-field local operators + subsumption (W1–W6) — 🟢 local / 🟡 entity mastery | ADR-0241 | +| Wave-field local operators + subsumption (W1–W6) — 🟢 | ADR-0241 | +| Entity cohesion I-01…I-05 + Trace A/B + P9/P10 — 🟢 | ADR-0241 / cohesion plan | | `core_ha` deprecation — 🟢 no live tree + hygiene + Phase 0 grep | ADR-0241 / deprecation plan | | Durable holographic vault spectrum — 🟢 HolographicVaultStore | ADR-0241 | -| Entity cohesion I-01…I-05 + Trace A/B | cohesion master plan | | Contemplation Trace A SPECULATIVE seal (P9) — 🟢 wave_seam | ADR-0241 P9 | | Energy boundary + multi-scale τ (P10) — 🟢 wave_energy_boundary | ADR-0241 P10 | -| Atlas packing + Fibonacci κ (ADR-0242) — 🟢 packing + search | PR #37 / ADR-0242 | +| Atlas packing + Fibonacci κ (ADR-0242) — 🟢 packing + search | ADR-0242 | +| Governance close (P12) — 🟢 contracts + checklist + ready-for-accept | ADR-0241 P12 | Closing a gap = flip its `xfail` in `tests/test_third_door_blueprint_fidelity.py` (or the ADR-0241 / cohesion suite) to a passing behavioral test and delete the matching characterization lock. That is the definition of "done right" here. diff --git a/docs/specs/runtime_contracts.md b/docs/specs/runtime_contracts.md index 495b9e5a..e89bcc42 100644 --- a/docs/specs/runtime_contracts.md +++ b/docs/specs/runtime_contracts.md @@ -849,3 +849,69 @@ migration PR with verifier parity evidence. - Frontier baseline: `evals/gsm8k_math/baselines/` - Sealed holdout: `evals/gsm8k_math/holdouts/v1/cases.jsonl.age` - ADR chain: ADR-0119, ADR-0119.1 through ADR-0119.8 + +## Wave-field cohesion substrate (ADR-0241 + ADR-0242) + +This section freezes the **off-serve** wave / holographic / packing contracts +landed under the ADR-0241 cohesion plan (packages P0–P10). It prevents drift +between physics modules, contemplation Trace A, energy Trace B, and serve +containment. + +### Off-serve quarantine (hard) + +The following modules **must not** be imported by `chat/runtime.py` or any +wrong=0 serve entry path (AST-pinned in `tests/test_third_door_cohesion.py`): + +| Module | Role | +|--------|------| +| `core.physics.wave_manifold` | Cl(4,1) wave field \(\psi\), leakage, polar conjugacy, chiral, \(\rho\) | +| `core.physics.holographic_vault` | Durable standing-wave spectrum via `VaultStore` | +| `core.physics.atlas_packing` | Golden-Angle mode packing (ADR-0242) | +| `core.physics.fibonacci_search` | Fixed-budget unimodal section search (ADR-0242) | +| `core.contemplation.wave_seam` | P9 Trace A SPECULATIVE seal + hypothesis/evidence reconstruct | +| `core.physics.wave_energy_boundary` | P10 Trace B residual→energy / \(\tau_n\) / crystallization | + +Wiring any of these into serve requires an explicit ADR amendment and a +failing-to-green containment test change in the same PR. + +### Holographic standing-wave epistemic standing + +- Default seal path: `HolographicVaultStore.seal_mode` → **SPECULATIVE** only. +- COHERENT seal: `seal_mode_reviewed(..., authorized=True)` only — never from + contemplation / self-authorship / wave_seam. +- Writes use `VaultStore.store` exclusively (INV-21 allowlist includes + `core/physics/holographic_vault.py`). No parallel memory path. +- Restart reconstruct uses public `VaultStore.get_versor` / `iter_metadata` + (no private `_versors`). + +### Hypothesis vs evidence reconstruct (Trace A) + +| API | Spectrum filter | Standing label | +|-----|-----------------|----------------| +| `reconstruct_as_hypothesis` | full (incl. SPECULATIVE) | `hypothesis` | +| `reconstruct_as_evidence` | `min_status=COHERENT` only | `evidence` | + +SPECULATIVE modes **must not** masquerade as reviewed evidence. Empty COHERENT +spectrum on the evidence path refuses (no confabulation). + +### Energy crystallization (Trace B) + +- Unitary residual for energy / trajectory gates is measured by + `WaveManifold.measure_unitary_residual` (via `wave_energy_boundary`), not a + free-floating float. +- Multi-scale recency table \(\tau_n = F_n \tau_0\) is a **constants schedule**, + not a serve-path optimizer. +- `crystallization_for_holographic_seal`: E0/E1 **and** residual ≤ ε may + SPECULATIVE-seal; otherwise refuse. Never self-authorizes COHERENT. + +### Entity invariants (suite-pinned, not Tier-2 lane SHAs) + +I-01…I-05 and Phase 0 audits are behavioral pins in +`tests/test_third_door_cohesion.py` (and related ADR-0241 tests). They are **not** +Tier-2 `CLAIMS.md` lane-SHA rows (those remain eval-lane report digests only). +Acceptance inventory: `docs/audit/adr_0241_cohesion_acceptance_checklist.md`. + +### Field invariant (unchanged) + +Every wave transition still obeys `versor_condition(F) < 1e-6`. Residual breach +is **fail-closed** — no hot-path nearest-versor drift repair. diff --git a/tests/test_adr_0241_governance_p12.py b/tests/test_adr_0241_governance_p12.py new file mode 100644 index 00000000..a295282b --- /dev/null +++ b/tests/test_adr_0241_governance_p12.py @@ -0,0 +1,105 @@ +"""P12 governance close — contracts, checklist, and module inventory pins. + +Does not re-execute the full physics suite. Asserts the load-bearing +governance surfaces for ADR-0241/0242 cohesion remain present and honest: + * runtime_contracts documents off-serve quarantine + epistemic standing + * acceptance checklist maps C0–C8 to tests + * ADRs stay Proposed (ready for Joshua) — not self-Accepted + * cohesion suite still names I-01…I-05 pins +""" + +from __future__ import annotations + +from pathlib import Path + +_ROOT = Path(__file__).resolve().parents[1] + +_QUARANTINE_NAMES = ( + "wave_manifold", + "holographic_vault", + "atlas_packing", + "fibonacci_search", + "wave_seam", + "wave_energy_boundary", +) + +_REQUIRED_MODULES = ( + "core/physics/wave_manifold.py", + "core/physics/holographic_vault.py", + "core/physics/atlas_packing.py", + "core/physics/fibonacci_search.py", + "core/contemplation/wave_seam.py", + "core/physics/wave_energy_boundary.py", + "docs/analysis/core_cohesion_master_plan.md", + "docs/audit/adr_0241_cohesion_acceptance_checklist.md", + "docs/specs/runtime_contracts.md", + "docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md", + "docs/adr/ADR-0242-atlas-packing-and-fibonacci.md", + "tests/test_third_door_cohesion.py", +) + + +def test_required_cohesion_modules_exist(): + missing = [p for p in _REQUIRED_MODULES if not (_ROOT / p).is_file()] + assert not missing, f"missing governance surfaces: {missing}" + + +def test_runtime_contracts_documents_wave_quarantine(): + text = (_ROOT / "docs/specs/runtime_contracts.md").read_text(encoding="utf-8") + assert "Wave-field cohesion substrate" in text + assert "Off-serve quarantine" in text + for name in _QUARANTINE_NAMES: + assert name in text, f"runtime_contracts missing quarantine name {name}" + assert "SPECULATIVE" in text + assert "seal_mode_reviewed" in text or "authorized=True" in text + assert "reconstruct_as_evidence" in text + assert "crystallization_for_holographic_seal" in text + + +def test_acceptance_checklist_maps_c0_c8_to_tests(): + text = ( + _ROOT / "docs/audit/adr_0241_cohesion_acceptance_checklist.md" + ).read_text(encoding="utf-8") + for cid in ("C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "C8"): + assert cid in text + assert "test_third_door_cohesion.py" in text + assert "Joshua" in text + assert "must **not** self-accept" in text or "must not self-accept" in text.lower() + + +def test_cohesion_suite_names_entity_invariants(): + text = (_ROOT / "tests/test_third_door_cohesion.py").read_text(encoding="utf-8") + for inv in ("i01", "i02", "i03", "i04", "i05"): + assert f"test_{inv}_" in text or f"test_i0" in text + # Explicit per-invariant function names (progressive suite). + for name in ( + "test_i01_biography_holonomy_closed_and_modes_reloadable", + "test_i02_holographic_round_trip_float32_honest", + "test_i03_self_authorship_proposals_are_speculative_only", + "test_i04_phase_correlation_symmetric_algebraic", + "test_i05_unitary_propagator_amplitude_conservation", + ): + assert name in text, f"missing entity pin {name}" + + +def test_adrs_ready_for_acceptance_not_self_accepted(): + """P12: implementation complete → Proposed + ready; Joshua alone Accepts.""" + for rel in ( + "docs/adr/ADR-0241-wave-field-driven-hyperbolic-atlas-and-resonant-cognition.md", + "docs/adr/ADR-0242-atlas-packing-and-fibonacci.md", + ): + text = (_ROOT / rel).read_text(encoding="utf-8") + # First status line must remain Proposed until human Accept. + status_line = next( + (ln for ln in text.splitlines() if ln.startswith("**Status**")), + "", + ) + assert "Proposed" in status_line, f"{rel} lost Proposed status" + assert "Accepted" not in status_line, f"{rel} must not self-Accept" + assert "Joshua" in status_line or "ready" in status_line.lower() + + +def test_serve_quarantine_list_matches_cohesion_ast_pin(): + cohesion = (_ROOT / "tests/test_third_door_cohesion.py").read_text(encoding="utf-8") + for name in _QUARANTINE_NAMES: + assert name in cohesion, f"cohesion AST pin missing {name}"