# Gate W10 — fix/341-busy-window-axis @ 89fd4412 (doyle, 2026-09-25 ~03:08Z)

Base 9a5dd7be (ancestor OK). Commits: 7d62d3d8 (REQ activation), 89fd4412 (change). 16 files.

## Verdict: REWORK (3 items). Core change PASSES.

PASS:
- Both AND sites deleted (`api/delivery.rs` poll_drain, `api/worker.rs` cmd_worker_poll); `resting::deferred_held` deleted with its hold unit.
- Inverted units assert ORDER (away notice before peer message, return notice only after). The builder's negative control (AND re-added) reds the int at busy_window_axis_e2e.rs:170 (left 0, right 2) and the unit at delivery.rs:1507. Those are todlando's measurements; I did not re-run them.
- Surviving `read_rest` callers at 89fd4412: lifecycle.rs:985 (MRA recency), livehost.rs:369 (wake-resume), registryhost.rs:1076 (status), shellwake.rs:396 (wake). All are instance-axis and none gates a window.
- REQ-INST-6 amended per ruling. The D5a comment is rewritten and D5b is kept.

REWORK:
1. HEAVY-AT-BIRTH miss. busy_window_axis_e2e autostarts a real daemon+brain tree through `spt api … poll`. `api::run`'s first statement is `ensure_daemon()`. hertz's census corrected my first wording, which blamed `ready`/`send`: `ready` never autostarts, and `send` autostarts only on its attachment, seal and WAN paths. The builder's leak finding shows the daemon tree is real. The binary is in neither <HEAVY> string (nextest.toml, golden.yml). `xtask check` exits 0 because its membership detector (`check_heavy_integration_classification`, xtask main.rs:935) keys on source shape: `spawns_daemon_tree` (:1027) matches only the literal `"daemon", "run"`, `"daemon", "brain"`, or `supervise_brain(`. An on-demand autostart through a CLI verb has none of those, so the detector cannot see this binary. (An earlier version of this line, and of my message to todlando, said the check "compares the strings only". That was wrong and I corrected it the same hour.) Same class as W7, and a new blind spot in the detector.
2. Three live sites still assert the deleted gate: spool.rs:770-778, delivery.rs:1662, traceable-reqs.toml:684 (the F-023 REQ comment). Dated history (M5-*-PLAN, F-035-RCA) is left alone.
3. Rebase onto abaa1696 (#276 landed) and open a PR. Its docs-drift job runs xtask check. The PR run is units-only on both OSes: it does NOT run the HEAVY e2e binaries, so it does not close the builder's NOT-RUN Linux gap for busy_window_axis_e2e. The binary is HEAVY-classed from 11a2f373 on (golden.yml HEAVY list). That gap was closed by the Linux full runs that include it: doyle's r2 intake at 8d402d6b (Linux A 199/199, B 235/235) and golden run 36122001936 at 0cce0754 (Linux test job green). (Corrected 2026-09-25 by replacement; an earlier version of this item said the PR run closed the gap.)

Routed to hertz: the autostart-leak + HEAVY-membership population census (poll_envelope_e2e and active_only_never_relay_e2e suspected).
Board: todlando's progress comment posted via alchemy-0 → releases#341 comment 5826026869.

## Resolution — LANDED (doyle, 2026-09-25 ~03:33Z)
The rework head `11a2f373` (e4e51d4f + ab7d8461, carried patch-identical, + 11a2f373 rework) sits on abaa1696. All 3 rework items verified by diff. PR #277 run 36089481863 passed 6/6 at 11a2f373 (Linux 8m48s, Windows 18m11s, docs-drift = xtask check). Landed by ff push abaa1696..11a2f373; PR auto-MERGED at 11a2f373. releases#341 and #256 moved to ACCEPTANCE (comment 5826231421). Still owed as field acceptance: a real 5-minute detach producing the away notice.
