Close steps 9 and 10 with their follow-ups

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
Meta Vens 2026-09-06 00:04:08 +02:00
commit 06236a4faa
4 changed files with 43 additions and 28 deletions

View file

@ -394,15 +394,31 @@ are teardown evidence. Plan step 6 is ten implementation passes, all landed.
`ghostlight-persona-projection`, plus one integration test (Soul ran
371 / 418).
In flight, not landed, the only open branch: `hands/interruption-followups`
in the worktree `F:\Projects\Ghostlight-interruptfu` at `d20dc51`, no
commits yet: delete the dead fork-D branch; widen `InferencePurpose`,
`PreparedInference::purpose`, and `InferenceEvent` to `pub(crate)` and
write the driver test end to end; and, routed here because this worker
owns `controllers.rs`, test the interruption section against a witness,
which is untested. New Eve question from Soul, owned by the Eve owner:
whether the command-result vocabulary needs a fourth state for
"overtaken" instead of rendering an interruption as `denied`.
The step-9 follow-ups are integrated at `651bfb2` over `5cd8853`,
gated (rebase, merge, confirm the tip, remove the worktree). The push
follows a background crate test and the branch read `ahead 1` at the
time of writing; `git status -sb` is the witness. Landed: the
unreachable `SPEAK_KIND` guard and its branch deleted from
`interrupted`, with a comment on why a fresh opportunity always carries
speech (the constant itself remains in use elsewhere in
`controllers.rs`); `InferencePurpose` (`controllers.rs:92`),
`PreparedInference::purpose` (:118), and `InferenceEvent` (:123)
widened to `pub(crate)`, with two test seams `fixture_inference_events`
(:274) and `fixture_recovery_required` (:220) re-exported from
`world/mod.rs`; the driver end-to-end test
`a_second_mid_turn_change_reaches_the_drivers_interrupted_arm`
(`runtime.rs:3397`) through `run_cover_tick`, with two Interpreter calls
and the overtaken turn committing nothing; and
`a_witness_between_the_turn_and_submit_carries_no_overheard_row`
(`controllers.rs:11377`), closing the step-10 seam Soul left. Baseline
at `651bfb2`: 373 test functions in `world/*.rs`, 426 crate source, 13
in `ghostlight-persona-projection`, plus one integration test (Hands ran
372 / 420 / 13). Steps 9 and 10 are therefore complete with their
follow-ups. Nothing is in flight and no worktree exists.
Open question routed to the Eve owner: whether the command-result
vocabulary needs a fourth state for "overtaken" instead of rendering an
interruption as `denied`.
Constraint: no road run is possible until a provider is available again.
The Codex subscription lapsed mid-build and the twelve seeded runs
@ -411,7 +427,7 @@ are teardown evidence. Plan step 6 is ten implementation passes, all landed.
ports until then; the connector is stopped and the smoke substrate at
`F:\Projects\Ghostlight-smoke` stays.
Next seams after the interruption follow-ups: the outbound consumer response
Next seams: the outbound consumer response
batch with the non-loopback CultMesh lease; then the deployment gate
below. The elaborator swarm's ideas still sit on
`slot/<world>/<title>/<stamp>` branches and the four ledger directories;

View file

@ -418,16 +418,17 @@ is exactly what the membrane already lets the subject perceive
never a raw knowledge row). The joint-per-room Interpreter was considered and
rejected: the room is not the unit of interruption, the digest is.
What is undone: Fork D (a fresh opportunity with no `Speak` ends the turn
without spending inference) has no test exercising it — the eight landed
tests cover a co-located neighbour's speech and an anonymous owner-patch
move, not that branch. Transfer, route-closing, and elaborator-patch causes
are not separately tested; only the generic "a change with no author" case
stands in for them. There is no end-to-end `drive_cover_tick` test carrying
an interruption through a real tick. No road run has exercised this against
a live provider — none exists yet for the narrative lane's re-lowering
round, so the next road run is the first evidence of `interpreter_round`
producing a real second request.
What is undone: no road run has exercised the re-lowering against a live
provider; none exists yet. Closed since landing: fork D's branch was dead by
construction (grants are insert-only, so a fresh opportunity always carries
speech) and is deleted; transfer, route-closing, and grant-revocation causes
are proven anonymous by Soul; a `run_cover_tick` end-to-end carries an
interruption through a real tick and shows the overtaken turn committing
nothing; a witness landing mid-turn yields the anonymous knowledge line and
no overheard row. Still open: the elaborator-patch cause is proven only by
the shared code path, not by a fixture that drives the elaborator past its
answer gate; and whether Eve's command-result vocabulary needs a fourth
state for an overtaken turn is the Eve owner's question.
### 10. Witnessed events over a place subtree — landed

File diff suppressed because one or more lines are too long

View file

@ -2,13 +2,11 @@
## Current Subgoal
Step-9 follow-ups, the only open branch: Hands in
`F:\Projects\Ghostlight-interruptfu` on `hands/interruption-followups` at
`d20dc51` (delete the dead fork-D branch; `InferencePurpose`,
`PreparedInference::purpose`, `InferenceEvent` to `pub(crate)`; driver test end
to end; interruption section against a witness), then Soul, then gated
integration (rebase, merge, confirm tip, remove). Main tip `1244595`; steps 9
and 10 landed. No road run until a provider is available.
None. Steps 9 and 10 are landed with their follow-ups at `651bfb2`; no
worktree exists. The next slice opens on the outbound consumer response batch
with a non-loopback CultMesh lease, the deployment gate, the Eve "overtaken"
result-state question, or operator decision (b) `world.run_tick` (see
`notes/fresh-workspace-handoff.md`). No road run until a provider is available.
## Working Notes