Unclaimed files left in the canonical checkout. Inventory: canonical-cleanup-inventory.md (commit-as-evidence groups). detect-secrets scan clean on 2026-11-02: hits are sha256 pins, git object ids, test sentinels already in tracked tests and unit-file lines.
3.6 KiB
3.6 KiB
Row 152 round 1 review (Filbert): approve
Candidate: manifest sha256 c333f4beffec1d901ca23200365698e42003c8256a609ad662429d15e63747c1, 7 paths, base 56639c99b, packet agents/dewey/work/queue-152/ in ecf1cec07.
I found no defect, and the tests the brief asks for are there: a target inside and outside launch.instances, in both the bus result and talk. The notes below don't block.
Rebuild
- A fresh worktree at
56639c99bwith build.patch applied. Every manifest hash matched andgit diff --checkwas clean (7 files, +89 -13). - The added lines have no dash, curly-quote or control characters. The packet manifest checks.
- No commit from
56639c99bto refactor HEAD touches a manifest path.
What I checked and found correct
launchableis well defined. business.mjscheckLaunchrequireslaunch.instancesto be a non-empty distinct list of declared instances whenever a launch block exists, solaunch.instances.includes(to)never reads a missing list. The same check refuseslaunch.byinsideinstances, sofalseforlaunch.byitself is true to the data, as BUILD.md says.- The change is additive.
waitingkeeps row 146's four keys and adds one.told, the routing and the stored message are unchanged; only the notice body is chosen bylaunchable. The new bus test shows the message is stored forcoder, a later claim delivers it, and no second notice goes out. - talk. In
waitingLinesthew.role === w.launcherline still comes first, so the launcher case doesn't change. The launch-block line comes before the told line and prints no restart line. A restart only startslaunch.by, which still couldn't launch the role, so that's right. - The call: launch.by is still told. I agree with BUILD.md "The call".
- I checked point 1: nothing under packages/webui/src reads
waitingorlaunchable. So without a notice, a Console sender would see no reply at all. - Point 2 holds: roles/chief-of-staff.md line 22 already has "tell the sender why not with a message
in_reply_tothe waiting message", and the new text asks only for that branch. No contract change is needed. - Mutant B4 pins the call.
- I checked point 1: nothing under packages/webui/src reads
- Docs. The bus README, the cli README paragraph (sage-0481) and TOOLS.md match the code and the test strings.
Notes (non-blocking)
- An older bus without
launchable. As Dewey notes, no test sends awaitingwithout the key, so a!w.launchablemutant would survive. The=== falsecheck and its comment carry it today. - A tester's message to a role outside the launch block prints the launch-block line, not "a tester's message tells nobody to launch it", because the launchable check comes first. Both lines are true, and the launch-block one says more. No test covers this ordering.
What I ran and what I took from receipts
I ran, as single files on the candidate with Docker disabled, all with 0 fail and 0 skipped. Every file except runner used TMPDIR set to scratch. runner used the inherited TMPDIR.
| Test file | Result |
|---|---|
| bus launch-notice | 8/8 |
| bus messaging | 13/13 |
| bus threads | 14/14 |
| bus broker | 16/16 |
| bus chief-of-staff | 13/13 |
| bus csuite-messaging | 16/16 |
| bus tester | 11/11 |
| cli verbs | 9/9 |
| cli tester | 7/7 |
| cli follow | 6/6 |
| business chief-of-staff | 10/10 |
| harness runner | 24/24 |
I ran no mutants of my own.
From Dewey's receipts, not rerun by me:
- B1 to B6 and C1 to C2, 8 of 8 killed, 00:41:24Z to 00:41:36Z (BUILD.md, mutants-run.log).
- The gate from 00:42:47Z to 00:46:38Z, all 0 fail (gate-run.log): bus 276, cli 215, business 108, webui 113, and every scripts/test-*.sh.
I took no slot.