Archive — history, not state. Kept for its reasoning and its evidence; its plan is closed.

The board — every active line, one view (2026-08-04)

This file is the INDEX of active work, not a new plan: each line’s substance stays in its own file (one-binary.md, derivations.md; the completed clerk line is archived at archive/clerk.md). When a line’s status moves, move it here in the same landing. The letters are disjoint on purpose — P = one-binary, D/F = derivations, C = clerk, E = shop-perf (lives in derivations.md). There is no S line; early drafts of the perf discussion used S labels that folded into E4 and P4.

Status by line

P — one-binary (plans/one-binary.md)

PhaseStatus
P-0 (finalization close-out)carried; the L6 gate for P3 is satisfied LOCALLY by 7f71d1e91 (docker containers running the linux/windows cross-check on this machine — John, 2026-08-03: enough for P3; remote CI later). P5 still wants the real-runner activation.
P0 derivation identitylanded
P1 operand width (mach-v3)landed, crossed
P2 pool-global VALUES (mach-v4)landed, crossed, fixpoint-proved
P3 forge fusion lifecyclelanded 2026-08-04 — clean two-press fixpoint, E6 convergence, retired boot lanes swept, shipping 64-bit section boots and standing gates green; nan32/kim8 boot is gated-by-content-size and returns via P6/P7 dieting
P4MOVED to plans/compiler-perf.md CP1 (ruled 2026-08-03) — see CP line below
P5 Pit loweringqueued behind P3 + L6 + L2b drain
P6 mcode linker — SIZE half only (rescoped 2026-08-03)import finalization, stripping, literal pool, link plans, dedup census; the opt half moved to CP2
P7 dedup census / P8 native bake-inP7 closed not-worth-it 2026-08-04 (1.9205% recoverable; census in plans/one-binary.md); P8 remains queued

CP — compiler lane (plans/compiler-perf.md, split from P4/P6 by ruling 2026-08-03; tangential to the cart work, blocks nothing in P)

ItemStatus
CP1 land interned streamline IR (was P4)reviewed 2026-08-03: mergeable-with-fixes, no confirmed miscompile; inline.cm a pure extraction. Fix list in the plan: take the measurement (decode-every-row is a suspected regression), artifact-identity diff at both revs (settles the allocator rewrite + reconcile short-circuit), record H1–H5 (guardcse H2 as a SOUNDNESS FIX — fixes inside refactors land named, never reverted), M1 named refusal + classification-table load assertion, stream_ir tests into the baseline gate, two guard comments. Docs drift deferred per ruling.
CP2 whole-program streamline + inlining (was P6-opt)gated on CP1 + P6-size + the linked-vs-unlinked fuzzer dimension
CP3 PGO-driven outputlast; consumes E1’s lazy origin join

D/F — derivations (plans/derivations.md)

ItemStatus
D1 closure-walk freshness primitivelanded
D2 requestor fan-outlanded (builder_worker survives as the pure per-message compiler the fleet fans out — intended shape)
D3 derivation-input identitylanded (208dc278a): per-entry sub-closure identities split compiler from lowering. Close-out found the surviving shoplib::mach_press edge in the compiler closure separable, not load-bearing; the proposed helper extraction is recorded in plans/derivations.md. Until that move lands, a press-only edit still over-invalidates K_mcode.
D4 the deletionPARTIAL — key_inputs.cm and the Makefile hash lists are gone; boot/seed.stamp, salt mentions in clerk.ce/pgo_store, and the mtime-keyed make/forge/seed/cement staleness checks survive. The convergence cycle below is this residue made visible.
F1–F5 stampede/generation modellanded (b4e6a31aa)

C — clerk (complete; archived at plans/archive/clerk.md)

ItemStatus
C1 locator requestor / C2 lazy start / C3 preload+mirrorlanded (checkpoint 2026-08-02)
C4 uniform upstreamslanded (2dfe16eac); unbounded delivery waves, focused gates, and exact cold-listener drill green
C5 shop-mounts-shopcomplete (bd3427978); peers serve verified cached source through C4 advertise/serve
C6 clerk splitcomplete; boot names pit-shop/clerk, the root routes source work to it, and the old actor/capability names are deleted

E — shop-perf rows (in plans/derivations.md, ruled 2026-08-03)

ItemStatus
E1 origin maps → lazy join + compact columnruled, not started — biggest single eliminate (~75% of store bytes, dominant encode source)
E2 cache hits never decode the unit (slim record = D1’s import-scan record)ruled, not started
E3 scratch-image check before hydrationruled, not started — small
E4 canonical binary artifacts (nota), streaming Pit encoderruled, not started — its own reseed landing, after E1
E5 hit/miss telemetry + budget gateslanded in the 2026-08-03 measurement pass: K_mach identity/repeat accounting, physical-store byte composition, 5s steady-smoke wall, and 2 MiB hot-ps root allocation; steady-smoke allocation and a store byte ceiling are explicitly disabled until their observables are honest (derivations note)
E6 the smoke convergence cycleclosed in P3 (2026-08-04) — one explicit seed transaction produced the clean fixpoint; two following smokes booted the linked section without another forge or regeneration

The baseline (measured 2026-08-03, this branch, isolated shop)

Clean make 49.7s · smoke with fresh seed 0.39s · cold ps on empty store 10.6s · hot ps 0.28s · store steady 66 MB · one-line pit-compiler edit → make seed 8m20s · smokes after: 3m45s, 1m19s (E6) · cold/hot ps after 0.83s/0.06s · store after +386 MB (origin JSON re-bloat — E1’s number).

These are E5’s budget anchors. Targets after E1+E4+D3-fix, with D2’s parallelism already landed: worst case in low tens of seconds; store growth per reseed bounded by Mach + binary-unit bytes, not provenance; steady smoke back under 5s; no-op smoke writing zero new store bytes.

Cross-line facts worth keeping in one place

  • The worst case decomposes as: honest recompile (D2 parallel fleet, landed) + re-lowering that should be K_mach hits (D3 split, landed; the separable press-helper edge is its remaining over-invalidation) + provenance encode that should not exist (E1) + JSON encode/decode of units (E4) + convergence re-runs (E6).

  • Superseded line in compiler-vision.md: its mcode-level bullet says “mcode-the-artifact stays JSON (portable, debuggable)”. John’s E4 ruling (2026-08-03, straight to canonical binary) supersedes that sentence; the map is explicitly unruled brainstorm, so this is a supersession, not a conflict. Debuggability is preserved by a dump tool, not by the at-rest spelling.

  • E1 ↔ P6/PGO requirement: the origin spec’s inline_chain and PGO’s profile normalization both consume the origin join. E1’s compact stored form must carry whatever the press knows per instruction (today one origin; post-P6, chains), and the lazy join must be available on demand to PGO layout as well as to symbolication. Design requirement, recorded.

  • Nothing in E touches mcode semantics, shapes, or the instruction set — no overlap with compiler-vision’s shape-aware ops or the P6/P7 link-step territory beyond the origin note above.

  • Review discipline: P4’s review must answer the inline.cm question (live inlining would violate the P1/P6 gates) and the measurement question (the 77% figure is the budget) before merge.

  • Stale-cart cold-boot trap (2026-08-03, cost two agent sessions): an untracked stale boot/boot.cart boots, passes the source-based clerk handoff, then dies 42s later as “generation builder failed: mach disrupted” — the generation lock refuses nothing at mount. Clean-tree cold make at aa9e416ca verified green. Interim rule for every agent brief: rm -f boot/boot.cart boot/cart.stamp before a cold validation. P3 fusion kills the class; until then a named refusal at cart mount would convert the 42s mystery into an immediate honest message.

  • Rep-range archive offsets (found by P3 nan32 gate, 2026-08-04, deferred): QOP byte offsets parse into pit numbers, so an archive larger than a reps exact integer range (~8MB on nan32) is unreadable on that rep — and the reader says generic “invalid archive” instead of the named refusal (“offset exceeds this reps exact numeric range”). P3 works around via the compressed lane; the structural fix (rep-safe offset reads + honest refusal) is its own small landing. Kim-style bytes are the natural fix per R8: variable bytes are correct for artifacts parsed once.

Lane branches (ruled 2026-08-04)

P-line and compiler-line work integrate on their own long-lived branches (lane/p, lane/cp), each keeping source AND its matched pressed artifacts coherent at every tip. Dev merges a lane at stable points, taking the lane artifact set WHOLE (mixed-generation resolution is invalid by construction — the 2026-08-04 landing lesson), then runs the gate. Small cp/* topic branches merge into lane/cp first, reseed once there, then lane/cp -> dev.

Source: plans/archive/board.md