Skip to content

Commit eb84b27

Browse files
authored
Merge pull request #1177 from AdaWorldAPI/claude/bindspace-soa-wiring-plan-2026-09
plan: the BindSpace→MailboxSoA migration, re-derived from the tree
2 parents a7520a1 + fac287a commit eb84b27

4 files changed

Lines changed: 312 additions & 4 deletions

File tree

‎.claude/board/INTEGRATION_PLANS.md‎

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,47 @@
1+
## 2026-09-05 — `bindspace-mailbox-soa-wiring-v1` (MEASURED, ready-to-execute)
2+
3+
`.claude/plans/bindspace-mailbox-soa-wiring-v1.md`. The BindSpace → MailboxSoA
4+
migration re-derived from the CURRENT tree (`9f8aa779`, #1174) rather than from
5+
the three design-stage plans that precede it. Headline: **the migration is far
6+
more built than the board records, and is blocked on nothing.**
7+
8+
`BackingStoreWrite` (`backing.rs:164-314`) already carries 9 write methods with
9+
BOTH arms real — no `todo!()`, no no-op — and has **zero callers outside its own
10+
test module**; `driver.rs` never names it. The read shim beside it
11+
(`BackingStore`, 6 methods) IS wired. `tests/w2_differential.rs` holds 4 real
12+
bit-identity equivalence tests. All of it sits behind `mailbox-thoughtspace`,
13+
which **no workflow builds** — so the equivalence harness and every `Mailbox`
14+
write arm have zero CI coverage and can rot silently.
15+
16+
The blocker that looked real is settled: the `Vsa16kF32` cycle plane is *"NEVER
17+
migrated"* by design (`mailbox_soa.rs:140`), its dispatch value is computed
18+
transiently (`driver.rs:367/372`, never read from storage), and its ONE
19+
production reader (`engine_bridge.rs:412`) is already gated out under the
20+
feature with the trade recorded in-source as a documented loss.
21+
22+
Corrects three board facts: `COMPONENT-MAP.md:108` rules retirement *"(W7)"* —
23+
**no W7 exists** (`INTEGRATION-PLAN.md` runs W0–W6) and the retirement has no
24+
D-id; the parity gate is at `:1361` not `:1145`; and there are **two** parity
25+
tests, the second (`:1480`) covering `content`, the heaviest plane.
26+
27+
Sequencing only supersedes FOUR prior plans, the closest a **stranded
28+
council-hardened namesake**: `origin/claude/bindspace-mailbox-soa-wiring-plan`
29+
carries a `bindspace-mailbox-soa-wiring-v1.md` dated 2026-06-17 (3-brutal-critic
30+
pass applied) that is **not on main** and sits 2770 commits divergent — found only
31+
by a push collision on the branch name; nothing on the board points at it. Its
32+
P0/P1 findings are all CLOSED in today's tree (content_row `:680`; the W1c
33+
populated-count `:217` + prefilter clamp `backing.rs:79`), and its binding
34+
operator constraints — *two paths step by step; never delete the old before the
35+
new is tested; CausalEdge64 dedup precise; delete BindSpace LAST* — are carried
36+
forward in §7. Also supersedes `bindspace-mailbox-soa-dependency-map-v1`,
37+
`bindspace-singleton-to-mailbox-soa-v1`, `bindspace-mailbox-soa-w3-w4a-impl-v1`
38+
— all three predate `backing.rs` (#844, 2026-07-24); none is superseded in
39+
content. Their cited in-flight branch is 0-ahead/1204-behind and carries no
40+
relevant files.
41+
42+
M0 is one CI line, with exact precedent at `rust-test.yml:158-173`. Retirement
43+
(M4) stays proof-gated and explicitly NOT NOW, per guardrails §1 rule 8 and the
44+
§2 footgun row naming both *"add new writers to it"* and *"remove it"*.
145
## 2026-09-05 — `nexgen-mask-histogram-thresholds-v1` (PROPOSAL) — lives under `.claude/nexgen/plans/`
246

347
`.claude/nexgen/plans/nexgen-mask-histogram-thresholds-v1.md`. D-NXG-1..12. The

‎.claude/board/STATUS_BOARD.md‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
## bindspace-mailbox-soa-wiring-v1 (D-ids minted 2026-09-05 with the plan)
2+
3+
`.claude/plans/bindspace-mailbox-soa-wiring-v1.md`. The BindSpace→MailboxSoA
4+
cutover, re-derived from the tree rather than from the four prior plans. The
5+
shim is built and unwired: `BackingStoreWrite` (`backing.rs:164-314`) carries 9
6+
write methods with both arms real and **zero callers outside its own test
7+
module**, and everything mailbox-side sits behind `mailbox-thoughtspace`, which
8+
no workflow builds — so 4 bit-identity equivalence tests and every Mailbox write
9+
arm have zero CI coverage.
10+
11+
Ids are minted in the plan body AND here, deliberately: a board-only mint is
12+
invisible to `supersession_index.py`'s coverage column, which is the root cause
13+
`ISS-PLAN-TRACKING-IS-UNENFORCED` (#1156) names and the D-PRLR section below
14+
records against itself.
15+
16+
| D-id | deliverable | status |
17+
|---|---|---|
18+
| D-BSW-0 | Put the feature under CI in **BOTH** configurations — `--features mailbox-thoughtspace` AND `--features with-engine,mailbox-thoughtspace` (plan §4 M0). One job is NOT the deliverable: `dispatch_busdto` and `busdto_bridge_test.rs` are `with-engine`-gated (`engine_bridge.rs:280`), so a mailbox-only job compiles neither and stays green while the paired configuration breaks. Today the 4 `w2_differential` bit-identity tests and every `BackingStoreWrite` Mailbox arm have ZERO coverage. Precedent `rust-test.yml:158-173`. Falsifier: test count strictly increases in each configuration and the 4 tests appear by name | Queued (plan `bindspace-mailbox-soa-wiring-v1` §4) |
19+
| D-BSW-1 | Wire `BackingStoreWrite` (`backing.rs:164-314`, 9 methods, both arms real) into the driver write path — it has zero callers outside its own test module. Adds a caller, not a capability | Queued (blocked on D-BSW-0) |
20+
| D-BSW-2 | Route the production BindSpace writers through the shim — **eight sites, not five**: `engine_bridge` `write_qualia_observed:490` / `write_qualia_17d:548` (direct), `persist_cycle:784` (edge+meta; cycle write is the documented loss), `ingest_codebook_indices:58` (composed last); plus the three `serve.rs` handlers `encode_handler:607` (direct `set_content`), `:139` and `:639` (via `Arc::get_mut`). `dispatch_busdto:281` is **excluded pending a decision** — its `qualia_f32` tenant has no MailboxSoA equivalent (plan §4). All eight must land BEFORE D-BSW-3 or dispatch reads the mailbox while `/v1/shader/encode` writes the singleton | Queued (blocked on D-BSW-1) |
21+
| D-BSW-3 | Populate `mailboxes` from a production path — today the only `with_mailbox` caller is `tests/w2_differential.rs:277`, so a feature-on build still takes the singleton fallback (`driver.rs:217`) | Queued (blocked on D-BSW-2) |
22+
| D-BSW-4 | BindSpace retirement — **NOT NOW, proof-gated**. Guardrails §2 names both directions as footguns ("add new writers to it; remove it"); §1 rule 8: retirement is never a worker task. Needs a wave and a D-id parent first — no W7 exists | BLOCKED (deliberate) |
23+
24+
---
25+
126
## nexgen-mask-histogram-thresholds-v1 (PROPOSAL, 2026-09-05)
227

328
`.claude/nexgen/plans/nexgen-mask-histogram-thresholds-v1.md`. Nothing built;

‎.claude/board/SUPERSESSION-INDEX.md‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
## What this table says
1515

1616
**`BindSpace` is the shape of the problem.** Marked RETIRE, and simultaneously the
17-
most-referenced symbol here: **68 crate files, 45 plans, 41 of them blind.**
17+
most-referenced symbol here: **68 crate files, 46 plans, 41 of them blind.**
1818
That is a programme, not a cleanup.
1919

2020
**`GateState` is the sharpest case: 1 plan names it and *every one* is blind.**
@@ -52,15 +52,15 @@ coverage instead.
5252
| `A2AMessage` | BLOCKED | — | 2 | 1 | 0 |
5353
| `StepMask` | BLOCKED | — | 3 | 9 | 4 |
5454
| `commit_to_l4` | BLOCKED | — | 2 | 2 | 0 |
55-
| `dispatch_busdto` | BLOCKED | — | 3 | 6 | 5 |
56-
| `persist_cycle` | BLOCKED | — | 10 | 6 | 5 |
55+
| `dispatch_busdto` | BLOCKED | — | 3 | 7 | 5 |
56+
| `persist_cycle` | BLOCKED | — | 10 | 7 | 5 |
5757
| `CognitiveMarkers` | REPURPOSE | `Commit` | 1 | 0 | 0 |
5858
| `DominoCascade` | REPURPOSE | `Commit` | 7 | 1 | 0 |
5959
| `GateDecision` | REPURPOSE | — | 25 | 27 | 24 |
6060
| `GateState` | REPURPOSE | — | 14 | 1 | 1 |
6161
| `MergeMode` | REPURPOSE | — | 8 | 13 | 12 |
6262
| `ResonanceDto` | REPURPOSE | `PerturbationDto` | 2 | 12 | 7 |
63-
| `BindSpace` | RETIRE | — | 68 | 45 | 41 |
63+
| `BindSpace` | RETIRE | — | 68 | 46 | 41 |
6464
| `CollapseGateEmission` | RETIRE | — | 5 | 13 | 12 |
6565
| `ThinkingStyle` | RETIRE-toward-contract | — | 51 | 28 | 24 |
6666

0 commit comments

Comments
 (0)