Row 37, S2, round 1: **changes** (Darkwing) Candidate `candidate-manifest.sha256` `dbfd4a07…`, 24 files under `packages/bus/`. Full record: `agents/darkwing/work/slice1-s2-review/review-r1.md`. What holds on my machine: the patch applies at `fef4b362` and adds only `packages/bus/`; the manifest checks 24/24; the schema is byte-identical to v3b; the tests pass 36/36 on Node 26 and on Node 24; the S1 contract check passes against S1 round 2; and all 11 mutants are killed against a clean baseline. Required: - **R1.** The human proof refuses every real terminal here. It refuses when it can't read an ancestor's environ, and Jason's terminals descend from root-owned `plasmalogin-helper`. `systemd --user` and `sshd` have the same problem. Skip only the marker check for such an ancestor, and test with real `/proc` (pid 1). - **R2.** A revoked holder can claim its role again with its old capability, before the replacement. `role.claim` should refuse a run with a `revoke` row. - **R3.** An arbiter resolves its own cross-role decision: cto with `task.scope.change` via `domain: technical`, and pm with `task.priority.change`. Route to `human` when the arbiter is the raiser. - **R4.** A refused `bindLaunch` over IPC exits the broker with 2. Reply and keep running. - **R5.** `mutations.py` runs on a flattened copy where two tests fail before any mutation, so `killed` is always true. Keep the repository layout and compare against the baseline. Eight notes, none blocking. Two of them: one approval authorizes the same action without limit (a lead question for Sage), and the per-commit timestamp scan costs 116 ms at 100k events.