From 156d1642de930d2214e4777e6829b4b971022c65 Mon Sep 17 00:00:00 2001 From: Robert Allan James Date: Sat, 19 Sep 2026 13:18:09 -0400 Subject: [PATCH] FABRIC-3.6.md task 0.1: Category A reachability established MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Checked the three §XXII.2 routes for capsules/common/msg.4th, capsules/process.4th, and the SPAWN-EVENT constant, never by grep count alone: a boot-path trace of every capsule init.4th loads at birth, a tools/experiments/docs invocation search, and confirmation that mere presence in the baked capsule directory doesn't make a name reachable if nothing constructs it at runtime. All three are dead by every route -- zero EXEC sites, zero callers of their exported words. Two findings recorded, neither changing the punchlist's plan: tools/hermes_smoke.sh calls EVENT-EMIT/EVENT-WAIT/EVENT-DRAIN directly, a caller FABRIC-3.5.md SXXXIII.3 missed when it said the only other reference was MANIFEST.md. Doesn't make them live -- the script is already broken on its own terms (references capsules/core/init.4th and build/amd64/standard/starforth, neither exists; calls the pre-rename CD-INIT word). Task 0.3's plan to strip these three words alongside process.4th stands. PAUSE-EVENT/RESUME-EVENT/KILL-EVENT are exactly as dead-by-name as SPAWN-EVENT -- process.4th's own calls pass bare numeric literals, never the constant names. Task 0.4 only names SPAWN-EVENT; flagged for whoever picks up Category A stripping next rather than expanding this task's scope. Investigation only, no code changed. Authorized by Captain Bob ("begin."). Co-Authored-By: Claude Sonnet 5 --- FABRIC-3.6.md | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/FABRIC-3.6.md b/FABRIC-3.6.md index 86a9ef56..b09f707c 100644 --- a/FABRIC-3.6.md +++ b/FABRIC-3.6.md @@ -163,9 +163,41 @@ it has simply not been attempted.)* **Gate:** all three architectures boot to `zuse)ok>`, `stadium_conserved()` true, no `UNKNOWN WORD`. -- [ ] **0.1** — Establish Category A reachability by §XXII.2's three routes (boot path, tooling, +- [x] **0.1** — Establish Category A reachability by §XXII.2's three routes (boot path, tooling, baked capsule directory). **Never by grep alone.** *Check:* a written list naming the route that proves each entry dead. + 2026-09-19 · investigation only, no code changed. Checked by all three routes — a boot-path + trace of `init.4th`/`hera`/`hermes/init.4th`/`artemis/init.4th` for any `EXEC`/`S" name"` + load, an experiments/tools/docs invocation search, and confirming presence in the baked + capsule directory doesn't by itself make a name reachable if nothing constructs it at + runtime: + + | Candidate | Boot path | Tooling/experiments/docs | Verdict | + |---|---|---|---| + | `capsules/common/msg.4th` | zero `EXEC`/load sites in any boot-loaded capsule | zero invocations; its only two words `HERMES-ACK`/`HERMES-NACK` have zero callers anywhere; `messaging.4th` block 5033's own comment: "common:msg.4th's HERMES-ACK/NACK indirection is retired" | **DEAD** | + | `capsules/process.4th` | zero `EXEC` sites anywhere | zero invocations; its four words `SPAWN`/`PAUSE`/`RESUME`/`KILL-VM` have zero callers outside the file itself | **DEAD** | + | `SPAWN-EVENT` (constant, `messaging.4th`) | N/A — a constant, only ever defined, never read by name | zero invocations by name anywhere | **DEAD** | + + Both files are present in the baked capsule directory (`mkcapsule` build log: `[p] + common:msg.4th`, `[p] process.4th`) — noted per §XXII.2 that presence alone proves + nothing; it only means nothing constructs either name at runtime to reach them, which the + other two routes confirm. + + finding: `EVENT-EMIT`/`EVENT-WAIT`/`EVENT-DRAIN` (`messaging.4th`, Category B, staying) + have one caller beyond `process.4th` that §XXXIII.3 missed — `tools/hermes_smoke.sh` calls + all three directly. This does not make them live: the script is already broken on its own + terms, referencing `capsules/core/init.4th` and `build/amd64/standard/starforth`, neither + of which exists in this repo, and calling the pre-rename `CD-INIT` word (`messaging.4th` + block 5033 renamed it to `MSG-CD-INIT`) — it cannot currently execute. Task 0.3's plan + stands unchanged; recorded because §XXXIII.3's "only other reference is `MANIFEST.md`" + was itself an undercount of exactly the kind §XXII.2 warns about, even though the + conclusion survives. + + finding: `PAUSE-EVENT`/`RESUME-EVENT`/`KILL-EVENT` (`messaging.4th`) are exactly as + dead-by-name as `SPAWN-EVENT` — zero references anywhere outside their own definition; + `process.4th`'s calls pass bare numeric literals (`1`/`2`/`3`/`4`), never the constant + names. Task 0.4 only names `SPAWN-EVENT`; not expanding its scope here, but flagging that + the other three meet the identical bar for whoever picks up Category A stripping next. - [ ] **0.2** — Strip `capsules/common/msg.4th`. *Check:* 3-arch boot; lint clean. - [ ] **0.3** — Strip `capsules/process.4th` (takes `EVENT-EMIT`/`-WAIT`/`-DRAIN` with it, §XXXIII.3). *Check:* 3-arch boot; lint clean.