docs 22 Phase B: gaps 1+2 closed, and the D-on boundary measured on KiCad
Phase B increment recorded in §10. The wx battery is GREEN at D-on (395/1, the 1 pre-existing) with dispatch contexts, context waits and star transfers all live - the first clean battery of the migration. Gaps 1 and 2 from the D-on probe are closed (terminal coroutine finish; wake/refusal semantics), and a third containment was found and added: an exception escaping a handler propagates out through drain()'s fiber swap and would otherwise leave the registry mid-transition, dead-pumping every later wait. Shim carries the new abandon call; .ci-cache-epoch -> 12. THE BOUNDARY: on the full KiCad suite D-on loses four canvas-tool specs (draw-wires, draw-lines, move-with-m, presence-locks move) to `index out of bounds` in doRewind - the blue screen itself. Real tool coroutines park IN PLACE inside their bodies, and a star transfer over an already-parked stack rewinds state the fiber layer cannot see; the harness's coroutines yield cleanly, so it goes green while KiCad does not (the doc-19 lesson again: the harness models the shape, not the parks). So D cannot carry KiCad until the tool-body park sites are contexts too - C+E completion, which §5 already ordered before the flip. This measurement makes that ordering non-negotiable. Landing state verified: STAR_DISPATCH=0, kicad 139 passed / 1 (pre-existing occ-probe glb) = the Phase A baseline exactly, wx battery 395/1. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBjomQfKyRa3jBdeAKpmTw
This commit is contained in:
parent
7dfd4f1834
commit
78ec52ea14
5 changed files with 64 additions and 3 deletions
|
|
@ -66,6 +66,11 @@ if (typeof Asyncify !== "undefined" && !globalThis.__wxSchedulerInstalled) {
|
|||
if (Module["_wxWasmSchedPump"]) Module["_wxWasmSchedPump"]();
|
||||
} catch (e) {
|
||||
if (Module["_wx_dispatch_abandon"]) Module["_wx_dispatch_abandon"]();
|
||||
// The exception escaped a context through drain()'s fiber swap, so
|
||||
// the transition it started never completed: without this every
|
||||
// later pump refuses ("transition in flight") and all outstanding
|
||||
// waits stall forever (doc 22 Phase B).
|
||||
if (Module["_wxWasmSchedAbandon"]) Module["_wxWasmSchedAbandon"]();
|
||||
throw e;
|
||||
}
|
||||
}, 0);
|
||||
|
|
|
|||
Loading…
Reference in a new issue