Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@ The oracle cases (vignette §9, `O-1…O-4`) are hand-computed and must never be

## Current phase (update this line when it changes)

Stage 0 complete; PR #8 merged to `main`. Register batch 3 ratified (ASSAY-DEC-22…27, closing concept §6.6–6.11) — walkthrough and findings ledger now canonical, G6 a standing invariant. Stage 1 built (issue #10): research note `01-knowledge.md` (DEC-16 floor); SPEC-05 implemented (`src/{seam,deltas,encoding,lint,knowledge}.ts` + `components/{refusalBanner,s1Table}.ts`); all four Stage-1 exits demonstrated on Meridian. Stage 2 built: research note `docs/research/02-compile.md` (DEC-11 gate — decides the **sparse channel representation** from the Stage-0 dense-world numbers + ATP 2-01.3 MCOO doctrine, retiring dense `Channel.cells`); SPEC-06 specified via spec-kit (`specs/006-compile/`) and **implemented** (`src/compile.ts` + `components/channelTrace.ts`; `fixtures/vignette-config.json`; sparse-channel schema regen; 107 tests, typecheck clean; compile demo moment renders in the gallery). All three Stage-2 exits demonstrated on Meridian (K12 contested ⇒ compile refuses `contested_knowledge`, resolve⇒recompile; byte-identical stamp; every channel traces back to named knowledge via `compiled_into` + `source`). The sparse-channel schema change is recorded as a flagged register candidate (concept §6, item 12), built under seam open item 2's delegated authority pending batch ratification. **Next: Stage 3 — SPEC-07 score, then SPEC-08 plan** (research note `03-score-plan.md` first, DEC-11 — must define the four-stop verdict mapping and reproduce vignette §9 oracle cases O-1…O-4 / G6).
Stage 0 complete; PR #8 merged to `main`. Register batch 3 ratified (ASSAY-DEC-22…27, closing concept §6.6–6.11) — walkthrough and findings ledger now canonical, G6 a standing invariant. Stage 1 built (issue #10): research note `01-knowledge.md` (DEC-16 floor); SPEC-05 implemented (`src/{seam,deltas,encoding,lint,knowledge}.ts` + `components/{refusalBanner,s1Table}.ts`); all four Stage-1 exits demonstrated on Meridian. Stage 2 built: research note `docs/research/02-compile.md` (DEC-11 gate — decides the **sparse channel representation** from the Stage-0 dense-world numbers + ATP 2-01.3 MCOO doctrine, retiring dense `Channel.cells`); SPEC-06 specified via spec-kit (`specs/006-compile/`) and **implemented** (`src/compile.ts` + `components/channelTrace.ts`; `fixtures/vignette-config.json`; sparse-channel schema regen; 107 tests, typecheck clean; compile demo moment renders in the gallery). All three Stage-2 exits demonstrated on Meridian (K12 contested ⇒ compile refuses `contested_knowledge`, resolve⇒recompile; byte-identical stamp; every channel traces back to named knowledge via `compiled_into` + `source`). The sparse-channel schema change is recorded as a flagged register candidate (concept §6, item 12), built under seam open item 2's delegated authority pending batch ratification. Stage 3 scorer built: research note `docs/research/03-score-plan.md` (DEC-11 gate — **decides the four-stop verdict mapping as signed margin bands, signs-only**: robust iff m_lo>0, marginal iff m_lo=0, tight iff m_lo<0≤m_hi, violated iff m_hi<0 — the unique O-3-satisfying rule with no interior cut; also settles `(cell,time)` route evaluation over a time-expanded graph, closing note 02 §3's forward flag, and reserves ε-dominance for SPEC-08 plan comparison); SPEC-07 specified via spec-kit (`specs/007-score/`) and **implemented** (`src/{interval,materialise,metrics,score}.ts` + `components/s2Matrix.ts`; `fixtures/plans.json` canned handful; no schema change — verdict/score/plan shapes already exist; 139 tests, typecheck clean; the honest-matrix demo moment renders in the gallery). The correctness leg holds on Meridian: oracle O-1 (`[9,13]`), O-2 (robust, margin `[15,19]`), O-3 (four-stop sweep changes only at band edges 9/13) reproduced exactly, and O-4 propagation-honesty (G6) under property-based testing (`fast-check`). SPEC-07 asserts no new register decision (the mapping is decided in the research note under the latitude vignette §9/O-3 delegated to Stage-3). **Next: SPEC-08 — handful generator + banded non-dominated organisation (sacrificial scope, delivery plan §3), over the same `03-score-plan.md` note; then Stage 4 SPEC-09 relaxation.**
35 changes: 34 additions & 1 deletion docs/assets/gallery/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -526,7 +526,40 @@ <h2 style="font-size:16px;margin-top:32px">Compile — knowledge → CompiledWor
</span>
</span></td><td style="padding:6px 10px;border-bottom:1px solid #EDF0F2;vertical-align:top;"><span style="font-family:ui-monospace,monospace;font-size:11px;font-weight:600;color:#1B2732">K12a</span> </td><td style="padding:6px 10px;border-bottom:1px solid #EDF0F2;vertical-align:top;"><span class="assay-provenance"><span style="font-family:ui-monospace,monospace;font-size:10.5px;padding:2px 7px;border-radius:3px;background:#F7EDD8;color:#9A6A14;border:1px solid #E7D3A6;margin-right:5px;white-space:nowrap">assessed · moderate</span><span style="font-family:ui-monospace,monospace;font-size:10.5px;padding:2px 7px;border-radius:3px;background:#F7EDD8;color:#9A6A14;border:1px solid #E7D3A6;margin-right:5px;white-space:nowrap">assessment, not fact</span><span style="font-family:ui-monospace,monospace;font-size:10.5px;padding:2px 7px;border-radius:3px;background:#F1F3F5;color:#5B6B77;border:1px solid #D8DFE4;margin-right:5px;white-space:nowrap">owner: J-2 red cell</span></span></td></tr></tbody>
</table></div>
<p style="font-size:11.5px;color:#5B6B77;margin-top:28px">Generated from <code>fixtures/</code> by <code>npm run gallery</code> · identifiers frozen per assay-vignette.md §8 · compile per research note <code>docs/research/02-compile.md</code></p>
<h2 style="font-size:16px;margin-top:32px">Score — the honest matrix (SPEC-07)</h2>
<p style="font-size:12.5px;color:#5B6B77">The Stage-3 demo moment, run by the actual scorer over the canned Meridian handful against the base world. Verdicts are a <b>four-stop scale</b> — robust / marginal / tight / violated, one colour language, <b>no decimals</b> anywhere; the banded <code>margin</code> rides on hover, never as a headline number (G2). Each commitment's verdict propagates its metric by interval arithmetic — worst-and-best-case on pure bands, no midpoint (DEC-15) — and is validated by the vignette §9 oracle cases (O-1–O-3 exact, O-4 containment). <i>Pick a verdict, walk it to the assessment and owner it rests on:</i> every cell was written with a <code>scored_from</code> edge back to the world, whose channels trace to named knowledge above. <span style="font-family:ui-monospace,monospace;font-size:11px;color:#5B6B77">score stamp c5e11b4a027f1053… · every verdict carries a scored_from edge to the world (G3) · margins on hover, no decimals (G2)</span></p>
<div style="background:#FCFDFD;border:1px solid #D8DFE4;border-radius:6px;padding:14px;overflow-x:auto"><table class="assay-s2-matrix" style="border-collapse:collapse;width:100%">
<thead><tr style="text-align:center;color:#5B6B77;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em">
<th style="padding:6px 10px;text-align:left">plan \ commitment</th>
<th style="padding:6px 8px">C1</th><th style="padding:6px 8px">C2</th><th style="padding:6px 8px">C3</th><th style="padding:6px 8px">C4</th><th style="padding:6px 8px">C5</th><th style="padding:6px 8px">C6</th>
</tr></thead>
<tbody><tr><td style="padding:6px 10px;font-family:ui-monospace,monospace;font-size:11px;font-weight:600;color:#1B2732">P1 · Strait-early / battery-suppression</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 8 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 6 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 0 district cells fired upon" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#7A6A12;color:#FFFFFF">marginal</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin -24–0 band-hours" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#9A5212;color:#FFFFFF">tight</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 0 boolean" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#7A6A12;color:#FFFFFF">marginal</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 8 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td></tr><tr><td style="padding:6px 10px;font-family:ui-monospace,monospace;font-size:11px;font-weight:600;color:#1B2732">P2 · Sweep-first / fires-forward</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 4 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 4 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin -1 district cells fired upon" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#8A2020;color:#FFFFFF">violated</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 12 band-hours" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 0 boolean" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#7A6A12;color:#FFFFFF">marginal</span>
</td><td style="padding:5px 7px;text-align:center;border-bottom:1px solid #EDF0F2">
<span class="assay-verdict-chip" title="margin 6 step" style="display:inline-block;min-width:66px;padding:3px 8px;border-radius:11px;font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;background:#1E6B3A;color:#FFFFFF">robust</span>
</td></tr></tbody>
</table></div>
<p style="font-size:11.5px;color:#5B6B77;margin-top:28px">Generated from <code>fixtures/</code> by <code>npm run gallery</code> · identifiers frozen per assay-vignette.md §8 · compile per research note <code>docs/research/02-compile.md</code> · score per <code>docs/research/03-score-plan.md</code></p>
</div>
</body>
</html>
Loading
Loading