# Intelligence-Loop Homestretch Plan **Status**: Proposed plan — awaiting Shay's go before any implementation **Date**: 2026-07-18 **Base**: `main @ 54659b76` (Rings 2+3 merged; ADR-0243/0244/0245 Accepted; ADR-0246/0247/0248 Proposed, flags off) **Foundation**: `docs/research/spark-audit-adjudication-2026-07-18.md` — every work item below survived claim-by-claim verification against the live tree; stale audit claims were removed there and must not resurface as work items. **Related**: ADR-0240, ADR-0243…0248, `docs/research/core_cohesion_master_plan.md` --- ## 1. Objective (done-when) Close the comprehend → reason → articulate → contemplate → learn loop and make its value measurable: 1. **All green CI** (smoke + fast lanes) at every phase boundary. 2. **Meaningful, generalized lift in problem solving, without overfitting** — decided by a dedicated instrument (Phase 4), not by narrative. An honest NULL is a legitimate, recordable outcome. 3. **Articulate comprehension of inputs and articulate generation of outputs** as one cumulative loop — the corridor's field→token readback wired and round-trip-verified (Phase 1). 4. `generate/` ("core_logos" role) upgrade explicitly **deferred** until the above land (Phase 6 scope note). ## 2. Governance constraints binding all phases - **A-04 serve-path containment**: wave-field / Fibonacci operators stay out of `chat/runtime.py`; corridor work lives in `core/physics/` + `evals/` quarantine. Serving consumes only ratified frozen artifacts. - **I-03 / proposal-only learning**: no autonomous mutation of the active manifold; biography integration only via the PASS-gated wiring layer, harness-driven. - **No self-Accept**: ADR-0246/0247/0248 stay Proposed; phases produce acceptance-packet evidence only. Flag flips and Accepts are Shay's alone. - **Decoding, not generating**: readback refusals are typed and fail-closed; no fallback strings. - **Worktree discipline**: all work in a worktree off `forgejo/main`; one PR per coherent phase; smoke gate in-worktree before any push. ## 3. Phases ### Phase 0 — Worktree + record (small) — PARTIALLY DONE - [x] Spark PDFs copied to `docs/research/`. - [x] Adjudication doc written (`spark-audit-adjudication-2026-07-18.md`). - [x] This plan doc written. - [ ] Create worktree off `forgejo/main`; run smoke + fast lanes → green baseline recorded. - [ ] Commit the three docs + PDFs as the arc's opening record. ### Phase 1 — Close the articulation seam, S1 (medium) Wire a `readback` stage into the lifecycle corridor (eval-tier, off-serving): - `egress` `route="readback_eligible"` → `VocabManifold.nearest()` token selection (`cognitive_lifecycle.py` gains a vocab consumer; today it imports no `vocab`, `:68-76`). - Fail-closed: typed refusal when no resonant token exists — no fallback strings. - **Round-trip feedback eval ("hearing ourselves think")**: re-ingest the articulated token sequence and measure phase-integrity / resonance agreement against the pre-articulation steady state. Falsifiable pass criterion fixed before implementation. - TDD anchors: `tests/test_adr_0243_cognitive_lifecycle.py`, `tests/test_vocab_manifold_invariants.py`. - Scope guard: within Accepted ADR-0243 §2.3 (readback rules); if design exceeds it → ADR amendment, not silent drift. ### Phase 2 — Activate the learning write-path, S2 (medium) - Compose the chiral Q_top latch (`chiral_gate.py`) into `integrate_validated_biography` (`biography_wiring.py:174`): charge conservation becomes a precondition of biography updates. - First real caller: harness-driven — after ADR-0240 validation PASS, integrate holonomy; prove **I-01 reboot-invariance** and replay determinism in tests. - Strictly PASS-gated + harness-driven; no idle-loop auto-integration (I-03). - Cleanup-as-you-find: `biography.py:62` bare `.tobytes()` → explicit `