Merge pull request #546 from AssetOverflow/docs/reconcile-current-state-2026-06-03
docs: reconcile current-state claims after GSM8K + sensorium progress
This commit is contained in:
commit
f56a0cfdba
4 changed files with 106 additions and 63 deletions
19
CLAUDE.md
19
CLAUDE.md
|
|
@ -58,6 +58,8 @@ Allowed sites:
|
|||
- `ingest/gate.py` for raw input injection.
|
||||
- `language_packs/compiler.py` and vocabulary construction.
|
||||
- `algebra/versor.py` for algebra-owned sandwich closure.
|
||||
- `sensorium/*/canonical.py` and pack-governed modality compiler construction
|
||||
boundaries for pinned signal canonicalization and quantization.
|
||||
|
||||
Forbidden sites:
|
||||
|
||||
|
|
@ -104,14 +106,23 @@ runtime path. Vault recall is exact and deterministic.
|
|||
- `calibration/*` — bounded replay-based calibration.
|
||||
- `docs/runtime_contracts.md` — response, telemetry, memory, identity, and testing contracts.
|
||||
|
||||
### GSM8K math comprehension substrate (sealed; serving `6/44/0`, wrong=0 — moves only via ratified PRs)
|
||||
### GSM8K math comprehension substrate (sealed; serving `7/43/0`, wrong=0 — moves only via ratified PRs)
|
||||
|
||||
- `core/reliability_gate/` — calibrated-learning ledger + gate (ADR-0175): `ClassTally` counts, `conservative_floor` (one-sided Wilson, N_MIN=10), θ ceilings.
|
||||
- `generate/derivation/` — the comprehension composer: `extract.py` (lexeme quantity extraction, EX-1/4/5 + function-word unit filter), `clauses.py` (GB-1 segmentation), `compose.py` (GB-2a list-sum + GB-3a clause-scoped referent guard), `accumulate.py` (GB-3b.1 single-referent gain/loss chaining), `multistep.py`/`search.py` (bounded search), `verify.py` (the wrong=0 self-verification gate: grounding ∧ cue ∧ unit ∧ completeness ∧ uniqueness).
|
||||
- `generate/derivation/` — the comprehension composer: `extract.py` (lexeme quantity extraction, EX-1/4/5 + function-word unit filter), `clauses.py` (GB-1 segmentation), `compose.py` (GB-2a list-sum + GB-3a clause-scoped referent guard), `accumulate.py` (GB-3b.1 single-referent gain/loss chaining), `goal_residual.py` (ADR-0207 R4 goal-residual production), `multistep.py`/`search.py` (bounded search), `verify.py` (the wrong=0 self-verification gate: grounding ∧ cue ∧ unit ∧ completeness ∧ uniqueness).
|
||||
- `generate/cue_precision/` — `(cue, op, unit_shape)` reliability ledger + trainer (ADR-0177 CP-1/CP-2a); inert (consulted by no serving/gate path yet).
|
||||
- `evals/gsm8k_math/` — `train_sample/` (real GSM8K, the capability metric), `practice/` (sealed attempt-and-eliminate lane + ADR-0163-F additive set), `confusers/` (ADR-0163-F2 discrimination probe — scored by `wrong→0` + pair-consistency, NOT flip-count).
|
||||
- `evals/gsm8k_math/` — `train_sample/` (real GSM8K dev sample, currently 7 correct / 43 refused / 0 wrong), `practice/` (sealed attempt-and-eliminate lane + ADR-0163-F additive set), `confusers/` (ADR-0163-F2 discrimination probe — scored by `wrong→0` + pair-consistency, NOT flip-count).
|
||||
- `scripts/verify_lane_shas.py`, `scripts/generate_claims.py --check` — the serving-frozen gate (pinned eval-lane SHAs + `CLAIMS.md`).
|
||||
|
||||
### Sensorium / modality compiler substrate (parallel, afferent gates; no broad capability claim)
|
||||
|
||||
- `sensorium/compiler/` — shared compiler law for content-addressed afferent compilation units, canonical deltas, local arenas, and trace-safe merge hashes.
|
||||
- `sensorium/audio/` + `sensorium/adapters/audio.py` — `audio_core_v1`, deterministic audio compiler substrate, gate closed by default.
|
||||
- `sensorium/vision/` + `sensorium/adapters/vision.py` — `vision_core_v1`, tile-first deterministic visual compiler substrate over synthetic eval fixtures, gate closed by default.
|
||||
- `sensorium/environment/` — ADR-0208 observation-frame contract for bundles of already-compiled afferent units; not late fusion and not a mutable world model.
|
||||
- `sensorium/sensorimotor/` + `sensorium/adapters/sensorimotor.py` — ADR-0209 afferent proprioception/contact/action-result evidence substrate; no decode path.
|
||||
- `sensorium/registry.py::decode*` + `AuthorityToken` / `EfferentGate` — ADR-0198 fail-closed efferent governance path. This is not a ratified motor decoder or actuator interface; no real action emission is claimed.
|
||||
|
||||
## Efficiency and Performance Doctrine
|
||||
|
||||
Performance is part of correctness for this project because slow feedback hides
|
||||
|
|
@ -327,7 +338,7 @@ implicated rather than one.
|
|||
things the ADR says that didn't actually ship.
|
||||
|
||||
2. **Before merging a stacked PR sequence into main.** When 2+ PRs
|
||||
stack (PR #420 stacked on #416, #423 stacked on #420), the
|
||||
stack (PR #420 stacked on #416, PR #423 stacked on #420), the
|
||||
review-each-PR-individually pattern misses cross-PR consistency
|
||||
issues. Audit the whole stack as one unit before any merge.
|
||||
|
||||
|
|
|
|||
|
|
@ -11,13 +11,16 @@ defended.
|
|||
> discipline applies to how we describe ourselves, not only to what the engine
|
||||
> outputs. Overclaiming to hit a deadline is failure, not success.
|
||||
|
||||
- **Base commit:** `c058d96` (origin/main).
|
||||
- **Verification date:** 2026-06-02.
|
||||
- **Base commit:** `3a72d69` (origin/main before this reconciliation branch).
|
||||
- **Verification date:** 2026-06-03 / 2026-06-04 UTC merge window.
|
||||
- **Reproduce the machine-derived rows:**
|
||||
```bash
|
||||
uv run core capability ledger # Tier-1 status (audit-passed ×3; NO expert)
|
||||
uv run python scripts/verify_lane_shas.py # Tier-2 pinned lane SHAs
|
||||
uv run python scripts/generate_claims.py --check # CLAIMS.md is current
|
||||
uv run core capability ledger # Tier-1 status (audit-passed ×3; NO expert)
|
||||
uv run python scripts/verify_lane_shas.py # Tier-2 pinned lane SHAs
|
||||
uv run python scripts/generate_claims.py --check # CLAIMS.md is current, when regenerated from this ledger
|
||||
uv run python -m pytest tests/test_vision_eval_gates.py -q
|
||||
uv run python -m pytest tests/test_audio_compiler.py tests/test_audio_crdt_merge.py tests/test_audio_sensorium_mount.py -q
|
||||
uv run python -m pytest tests/test_observation_frame_contract.py tests/test_sensorimotor_contract.py -q
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -32,7 +35,7 @@ material that blurs them is a credibility risk.
|
|||
|---|---|---|---|---|---|
|
||||
| **A** | **Sealed real GSM8K test** (1,319 cases, HuggingFace `openai/gsm8k` test split) | **0 correct / 0 wrong / 1,319 refused** | **Yes** | No | `ADR-0119.7`; ciphertext `evals/gsm8k_math/holdouts/v1/cases.jsonl.age` |
|
||||
| **B** | **CORE-authored synthetic "public" split** (150 cases, rule-based, written to exercise the grammar) | **150 correct / 0 wrong / 0 refused** (rate 1.0) | **No** | No | `evals/gsm8k_math/baselines/comparison_v1.json`, `frontier.json` |
|
||||
| **C** | **Real `train_sample`** (50-case dev sample of real GSM8K) | **6 correct / 44 refused / 0 wrong** | Yes (sample) | No | `evals/gsm8k_math/train_sample/v1/report.json` |
|
||||
| **C** | **Real `train_sample`** (50-case dev sample of real GSM8K) | **7 correct / 43 refused / 0 wrong** | Yes (sample) | No | `evals/gsm8k_math/train_sample/v1/report.json` |
|
||||
| **D** | **Expert-promotion composite gate** (CORE-authored lanes B1/B2/B3) | **185/185 + 14/14 + 40/40 + 50/50, wrong=0** | **No** | Yes (but reverted — §2) | `ADR-0131.4`; `core/capability/composite_math_gate.py` |
|
||||
|
||||
**Per-number honest framing:**
|
||||
|
|
@ -62,12 +65,12 @@ material that blurs them is a credibility risk.
|
|||
frontier LLMs (Claude 3.5 Sonnet 96.4%, GPT-4 92.0%, Gemini 1.5 Pro 90.8%) are
|
||||
scored on *real* GSM8K. **Never cite B as "CORE scores 100% on GSM8K."** The
|
||||
qualitative differentiator is `wrong=0`, not the rate.
|
||||
- **(C) The dev-sample reality.** 6/44/0 on 50 real cases — the lane's
|
||||
`exit_criterion` (`correct_min: 10`) is **NOT met**. A stricter candidate-graph
|
||||
coverage probe reports **4/46/0** on the same 50 cases
|
||||
(`train_sample_coverage_report.json`); both preserve `wrong=0`. The two readers
|
||||
differ on 2 fast-path cases. The probe's movement (`3→4`) is precisely what
|
||||
reverted the expert claim (§2).
|
||||
- **(C) The dev-sample reality.** `7/43/0` on 50 real cases — the lane's
|
||||
`exit_criterion` (`correct_min: 10`) is **NOT met**. The latest lift is the
|
||||
ADR-0207 §5 R4 goal-residual production (`generate/derivation/goal_residual.py`),
|
||||
which moves train-sample case `0037` while preserving `wrong=0`. A stricter
|
||||
candidate-graph coverage probe is a separate diagnostic lane and must not be
|
||||
conflated with the serving train-sample report.
|
||||
- **(D) CORE-authored, and currently NOT conferring expert.** All four B-lanes are
|
||||
written and scored by CORE; none is external GSM8K. ADR-0131.4 replaced the
|
||||
original real-GSM8K gate (`correct_rate ≥ 0.60`) with this composite; ADR-0131.5
|
||||
|
|
@ -130,25 +133,32 @@ claim when its evidence moved.** Full record: `ADR-0200`.
|
|||
| **Refuse-rather-than-guess / `wrong = 0`** | typed refusal across all four GSM8K numbers; `verify.py` gate | A/B/C/D all `wrong=0` |
|
||||
| Exact CGA recall (no ANN / HNSW / cosine) | `vault/store.py`; `docs/Yellowpaper.md` recall section | `uv run core test --suite algebra` |
|
||||
| Safety pack: add-but-never-remove, fail-closed on load | `packs/safety/core_safety_axes_v1.json`; `ADR-0029` | `uv run core test --suite smoke` |
|
||||
| On-device, non-LLM, no sampling/gradient/tokenizer | architecture; `README.md` "Third Door" | — |
|
||||
| Sensorium compiler law: compiled afferent units are content-addressed, replayable, and merge by deterministic key | `sensorium/compiler/*`; audio/vision/sensorimotor tests | see §4 reproduce commands |
|
||||
| On-device, non-LLM, no sampling/gradient/tokenizer in the CORE runtime path | architecture; `README.md` "Third Door" | — |
|
||||
|
||||
---
|
||||
|
||||
## 4. Multimodal status — text only is *capability*; the rest is substrate or proposal
|
||||
## 4. Multimodal status — distinguish capability from substrate
|
||||
|
||||
The patent application's "multimodal" title is broader than what is demonstrated
|
||||
in-repo. **External materials must not imply working vision or motor.**
|
||||
as end-user capability in-repo. **External materials must not imply working
|
||||
open-domain vision, audio understanding, robotics, or autonomous action.** The
|
||||
current truth is: text is capability; audio/vision/sensorimotor are deterministic
|
||||
afferent substrates with gates and synthetic evals; motor/efferent output is
|
||||
fail-closed governance scaffolding only.
|
||||
|
||||
| Modality | Status | Evidence |
|
||||
|---|---|---|
|
||||
| **Text** (English, Hebrew, Koine Greek) | **Active capability** | `sensorium/adapters/text.py`; language packs |
|
||||
| **Audio** | **Substrate landed, gate CLOSED (no capability claim)** | `sensorium/audio/*`; `make_audio_pack(gate_engaged=False)`; determinism + order-invariant CRDT merge + no-PCM-in-trace all gate-tested |
|
||||
| **Vision** (`ADR-0197`) | **Proposed only** — no code, no pack, no eval | `Modality.VISION` enum exists; no `sensorium/vision/` |
|
||||
| **Motor** (`ADR-0198`) | **Proposed only** — "design spike, no implementation" | registry has no `decode()` path; `persona/motor.py` is an *internal CGA screw motion*, not an actuator |
|
||||
| Surface | Status | Evidence | Honest claim boundary |
|
||||
|---|---|---|---|
|
||||
| **Text** (English, Hebrew, Koine Greek) | **Active capability** | `sensorium/adapters/text.py`; language packs | Working textual modality. |
|
||||
| **Audio** (`audio_core_v1`) | **Substrate landed, gate CLOSED by default** | `sensorium/audio/*`, `sensorium/adapters/audio.py`, `packs/audio/audio_core_v1/`, `tests/test_audio_*` | Deterministic compiler substrate; no broad audio-understanding capability claim. |
|
||||
| **Vision** (`vision_core_v1`) | **Substrate landed, gate CLOSED by default** | `sensorium/vision/*`, `sensorium/adapters/vision.py`, `packs/vision/vision_core_v1/`, `evals/vision_sensorium/`, `tests/test_vision_eval_gates.py` | Tile-first deterministic visual compiler over synthetic fixtures; no open-domain vision claim. |
|
||||
| **Environmental loop** (`ADR-0208`) | **Afferent observation-frame contract landed** | `sensorium/environment/frame.py`, `sensorium/environment/harness.py`, `tests/test_observation_frame_*` | Bundles already-compiled afferent units; not late fusion, not a mutable world model. |
|
||||
| **Sensorimotor feedback** (`ADR-0209`) | **Afferent substrate landed** | `sensorium/sensorimotor/*`, `sensorium/adapters/sensorimotor.py`, `tests/test_sensorimotor_*` | Proprioception/contact/action-result evidence only; no decoder, actuator driver, trajectory executor, or skill invocation. |
|
||||
| **Motor / efferent output** (`ADR-0198`) | **Partially implemented governance spike; action emission still refused unless verdict-governed** | `ModalityRegistry.decode*`, `AuthorityToken`, `DefaultEfferentGate`, `EfferentRefusal` | Registry path exists, but no motor decoder or real actuation capability is claimed. |
|
||||
|
||||
Honest line: *text is a working modality; audio is a determinism-proven substrate
|
||||
with its capability gate deliberately closed; vision and motor are design
|
||||
proposals with no implementation.*
|
||||
Honest line: *text is a working modality; audio/vision/sensorimotor are
|
||||
replayable afferent compiler substrates with gates and eval fixtures; motor is a
|
||||
fail-closed efferent governance surface, not an actuator.*
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -159,7 +169,7 @@ The reviewer registry has exactly **one** signer: `shay-j`, `domains: ["*"]`,
|
|||
`audit_passed_claims` and the (now-quarantined) `math_expert_claims` entry is
|
||||
signed by the same identity. This is a real single-point-of-capture a partner may
|
||||
probe. The migration toward a multi-reviewer / threshold-signing registry is
|
||||
scoped as a Week-4 deliverable (`ADR-02xx`, design-only — no fake signers).
|
||||
scoped as a future design deliverable — no fake signers.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -170,24 +180,29 @@ scoped as a Week-4 deliverable (`ADR-02xx`, design-only — no fake signers).
|
|||
- ❌ "CORE is externally validated on GSM8K." → The expert gate rests on
|
||||
**CORE-authored** lanes; the real external number is A = `0/0/1319`.
|
||||
- ❌ "CORE scores ~100% on GSM8K." → That is B, a CORE-authored synthetic split.
|
||||
- ❌ "CORE has vision / motor / working multimodal perception." → Audio is
|
||||
substrate-only (gate closed); vision/motor are proposals.
|
||||
- ❌ "CORE has broad working multimodal perception." → Audio, vision, and
|
||||
sensorimotor are afferent substrates/eval lanes, not demonstrated open-domain
|
||||
capability.
|
||||
- ❌ "CORE can perform motor actions / robotics / vehicle control." → Efferent
|
||||
output is fail-closed governance scaffolding only; no motor decoder/actuator
|
||||
path is ratified.
|
||||
- ❌ "`audit-passed` means expert-level capability." → It is claim-shape
|
||||
compliance, not raw capability (`ADR-0113`).
|
||||
|
||||
---
|
||||
|
||||
## 7. Reconciliation log (proposed — pending operator ratification)
|
||||
## 7. Reconciliation log
|
||||
|
||||
These reconcile stale artifacts to the truth above. **History-describing**
|
||||
artifacts keep their content with a dated "valid-at … auto-reverted … current =
|
||||
audit-passed" note (keep the receipt; keep the mismatch-refusal firing).
|
||||
**Current-machine-state** artifacts reconcile to the truth. Tracked in `ADR-0200`.
|
||||
artifacts keep their content with dated context. **Current-machine-state**
|
||||
artifacts reconcile to the truth.
|
||||
|
||||
| Artifact | Type | Action |
|
||||
|---|---|---|
|
||||
| `docs/reviewers.yaml` `math_expert_claims` | history (receipt) | keep entry; add quarantine note; do not re-sign |
|
||||
| `docs/claims_ledger.md` | current state | reconciled to `7/43/0`, afferent sensorium substrate landed, and fail-closed efferent governance scaffold |
|
||||
| `CLAUDE.md` GSM8K substrate header | current operator instruction | reconcile serving metric to `7/43/0`; keep wrong=0 governor |
|
||||
| `evals/gsm8k_math/train_sample/v1/README.md` | current eval summary | reconcile current report and note R4 goal-residual lift |
|
||||
| `docs/decisions/ADR-0207-gsm8k-substrate-ratification.md` | ratified decision with evolving execution status | keep ratification baseline; add current-state note after R4 lift |
|
||||
| `docs/reviewers.yaml` `math_expert_claims` | history (receipt) | keep entry; add quarantine note separately; do not re-sign |
|
||||
| `docs/decisions/ADR-0120-math-expert-ledger-flip.md` | history | header note: valid-at 2026-05-23, auto-reverted, current = audit-passed |
|
||||
| `evals/math_expert_claims/v1/expert_claims_math_v1_signed.json` | current state | regenerate → `promote_admitted: false` |
|
||||
| `README.md` §"Path to expert" + ledger lines | current state | reconcile narrative to built-attempted-reverted; verify test count |
|
||||
| `tests/test_mathlogic_expert_ledger_flip.py`, `tests/test_adr_0120_math_expert_promotion.py` | current state | flip 3 red "is-expert" assertions into fail-closed-revert assertions |
|
||||
| `evals/math_expert_claims/v1/expert_claims_math_v1_signed.json` | current state | future regeneration should preserve `promote_admitted: false` until a ratified expert path exists |
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
**Status:** Accepted (ratified 2026-06-03)
|
||||
**Date:** 2026-06-03
|
||||
**Current execution state:** R4 goal-residual production landed after ratification; serving train-sample is now `7/43/0`, wrong=0.
|
||||
**Author:** Shay
|
||||
**Anchor:** [[thesis-decoding-not-generating]]
|
||||
**Consolidates (does not replace):** ADR-0164, ADR-0165, ADR-0174,
|
||||
|
|
@ -28,7 +29,9 @@ against the gates* (§6), not another design.
|
|||
|
||||
## 2. Verified findings (origin/main `2cb0922`)
|
||||
|
||||
Every claim below was reproduced read-only against the tree on 2026-06-03.
|
||||
Every claim below was reproduced read-only against the tree on 2026-06-03. This section is the
|
||||
ratification baseline. Later execution notes may update metrics without rewriting the baseline
|
||||
finding.
|
||||
|
||||
**252 ADRs.** The relevant design is on the books, not missing. Actual status lines (cited as
|
||||
they stand — these are *not* "design of record" labels until this ADR is ratified):
|
||||
|
|
@ -61,8 +64,8 @@ Held-hypothesis primitives (`lookback.reevaluate`, `contemplate`) are invoked li
|
|||
(imported by `math_candidate_graph.py` at lines 663, 685, 1004) and the overfitting vector.
|
||||
2. **The held-hypothesis primitives** — bolted into the candidate-graph flow (above).
|
||||
3. **The `derivation/` composer** — built and *already enriched* (see §3), but **disjoint
|
||||
from serving**: `chat/` imports zero derivation modules, and the serving candidate-graph
|
||||
path imports **exactly one** derivation symbol —
|
||||
from serving** at the ratification baseline: `chat/` imports zero derivation modules, and
|
||||
the serving candidate-graph path imports **exactly one** derivation symbol —
|
||||
`generate.derivation.product_bridge.resolve_promotable_product`
|
||||
(`math_candidate_graph.py:530`, the guarded product bridge behind the current lift). The
|
||||
composer proper (`extract`/`clauses`/`compose`/`accumulate`/`multistep`/`search`/`verify`)
|
||||
|
|
@ -74,10 +77,15 @@ ancestor of the prior HEAD `8327c6b`, −1,038 LOC); the primitives survived. So
|
|||
intended topology (**reader = the brain; injectors = emitters**) **was never realized — it
|
||||
fragmented.**
|
||||
|
||||
**Empirical signature of the unfinished state:** train_sample **6/44/0** (reproduced live);
|
||||
sealed holdout **0/0/1319** (cited per `docs/claims_ledger.md` / ADR-0119.7 ciphertext — not
|
||||
CI-reproducible). The live regex path solves a few train surface forms and transfers to
|
||||
~nothing unseen. Safe failure (refuses, never wrong), but narrow-and-non-transferring.
|
||||
**Empirical signature of the unfinished baseline:** train_sample **6/44/0** (reproduced live at
|
||||
ratification); sealed holdout **0/0/1319** (cited per `docs/claims_ledger.md` / ADR-0119.7
|
||||
ciphertext — not CI-reproducible). The live regex path solves a few train surface forms and
|
||||
transfers to ~nothing unseen. Safe failure (refuses, never wrong), but narrow-and-non-transferring.
|
||||
|
||||
**Current execution note (post-ratification).** ADR-0207 §5 R4 execution added
|
||||
`generate/derivation/goal_residual.py` and a guarded promotion bridge for residual-to-goal
|
||||
readings. This moves train_sample to **7/43/0**, still wrong=0. The lift is execution of this ADR,
|
||||
not a new architecture and not a relaxation of the §4 freeze.
|
||||
|
||||
**Root cause of the wasted weeks is process, not architecture:** five `Proposed`/partial ADRs
|
||||
never ratified or driven to completion, with the deprecated fallback left live.
|
||||
|
|
@ -130,17 +138,18 @@ Execute these three levers — listed by role, not by sequence (lever 1 explains
|
|||
wire is the *last*, trivial step and composition the real first work):
|
||||
|
||||
1. **WIRING — trivial, and already done for the safe shapes.** The wire pattern
|
||||
(`product_bridge` at `:530`: `resolve(text) → CandidateGraphResult | fall-through`) is
|
||||
proven, but it generalizes nothing: `product_bridge` promotes only via a two-token target
|
||||
whitelist (`money`+`make/earn`, `weight`+`total/move`), hardcoded to 0003/0021. Extending
|
||||
it is **not** the lowest-risk first step. Verified on the tree (2026-06-03): the general
|
||||
composer (`resolve_pooled`) refuses **all ten** R1/R4/R5/R6 corpus positives — R1/R4 build
|
||||
zero candidates, R5 builds only wrong ones — so wiring it yields **+0 correct**; and it
|
||||
wrong-commits `0016 → 510`, so wiring it wholesale is a live `wrong=0` regression that
|
||||
disagreement does **not** catch. Therefore WIRING and COMPOSITION are the **same task**:
|
||||
the real first work is composer production for each target shape, each behind a structural
|
||||
promotion gate (op-class/target proof via `extract_target` + `target_units`, not
|
||||
disagreement alone). The wire is the last, trivial step once a shape builds-and-certifies.
|
||||
(`resolve(text) → CandidateGraphResult | fall-through`) is proven, but it generalizes
|
||||
nothing by itself. The initial `product_bridge` promoted only via narrow target proof for
|
||||
0003/0021; the post-ratification `goal_residual` bridge promotes only goal-language +
|
||||
residual-question + same-referent licensed-progress chains. Extending either bridge is
|
||||
**not** the lowest-risk first step. Verified on the tree (2026-06-03): the general composer
|
||||
(`resolve_pooled`) refuses **all ten** R1/R4/R5/R6 corpus positives — R1/R4 build zero
|
||||
candidates, R5 builds only wrong ones — so wiring it wholesale yields **+0 correct** and
|
||||
wrong-commits `0016 → 510`, a live `wrong=0` regression that disagreement does **not** catch.
|
||||
Therefore WIRING and COMPOSITION are the **same task**: the real first work is composer
|
||||
production for each target shape, each behind a structural promotion gate (op-class/target
|
||||
proof via `extract_target` + `target_units`, not disagreement alone). The wire is the last,
|
||||
trivial step once a shape builds-and-certifies.
|
||||
2. **COMPOSITION (ADR-0178) — the actual wall.** Complete the derivation composer's
|
||||
multi-step assembly: which quantities group, via which ops, in what order (the R4/R5/R6
|
||||
lever). This is the genuine research risk; extraction already feeds it.
|
||||
|
|
@ -159,7 +168,7 @@ generalizing). Never a per-shape branch.
|
|||
|
||||
Every step must hold all of:
|
||||
|
||||
1. train_sample stays **`wrong=0`** (6/44/0 or better — `correct` may only rise).
|
||||
1. train_sample stays **`wrong=0`** (current floor: 7/43/0; `correct` may only rise).
|
||||
2. The no-reference `<N> times` hazard (composition-capability-scope §9) stays **refused**.
|
||||
3. No partial graph admits while any source quantity is unbound (the completeness leg).
|
||||
4. Progress is measured on the composition-typed **validation sub-corpus**
|
||||
|
|
|
|||
|
|
@ -52,20 +52,28 @@ Each case in `cases.jsonl` preserves:
|
|||
|
||||
## Current Report
|
||||
|
||||
`report.json` currently records **6 correct / 44 refused / 0 wrong**. The
|
||||
`report.json` currently records **7 correct / 43 refused / 0 wrong**. The
|
||||
ADR-0126 exit criterion remains unmet (`correct >= 10`, `wrong == 0`), so the
|
||||
runner still exits nonzero.
|
||||
|
||||
The two most recent lifts are ADR-0195 product-promotion cases:
|
||||
The current correct set is:
|
||||
|
||||
- `gsm8k-train-sample-v1-0003` — complete revenue product
|
||||
(`48 boxes x 24 erasers x $0.75`).
|
||||
- `gsm8k-train-sample-v1-0014` — fast-path serving case.
|
||||
- `gsm8k-train-sample-v1-0018` — fast-path serving case.
|
||||
- `gsm8k-train-sample-v1-0021` — complete total-work product
|
||||
(`15 pounds x 10 reps x 3 sets`).
|
||||
- `gsm8k-train-sample-v1-0024` — comparative product control retained green.
|
||||
- `gsm8k-train-sample-v1-0037` — ADR-0207 R4 goal-residual production
|
||||
(`goal - Σprogress`) promoted through `generate/derivation/goal_residual.py`.
|
||||
- `gsm8k-train-sample-v1-0042` — fast-path serving case.
|
||||
|
||||
Both are exposed through a guarded product bridge over the pooled derivation
|
||||
reader. The bridge does **not** promote the pooled reader wholesale; the eight
|
||||
known pooled-reader wrong commits remain refused.
|
||||
The product cases are exposed through a guarded product bridge over the pooled
|
||||
derivation reader. The R4 case is exposed through the guarded goal-residual
|
||||
bridge. Neither bridge promotes the pooled/general composer wholesale; known
|
||||
wrong commits remain refused, and the no-reference `<N> times` completeness
|
||||
hazard remains a hard refusal control.
|
||||
|
||||
## ADR-0164 Reader — Zero-Delta Diagnosis
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue