docs: lead decision 91, row 68 build log, pin and coder grant brief (#1561)

Decision 91 amends 89: the bus pins ~/.local/bin/claude through
MOSAIC_CLAUDE_BIN, so the package upgrade is no longer needed for the
first PM launch. The brief covers two Rocko rows: tests for row 68's
surviving mutants, and dropping the coder's dead task.reassign grant.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-11 16:47:15 -05:00
co-authored by Claude Opus 5.5
parent 4100fa68c0
commit 32aa572788
3 changed files with 145 additions and 0 deletions
+8
View File
@@ -4226,3 +4226,11 @@ Gate (Sage, scratch worktree of 918a4a19 plus the candidate, sequential and teed
Live read (`agents/sage/work/vikunja-setup/tick-62.mjs`, record `2026-10-11_tick-62.json`, 902b3d0e), 21:28:03Z, tasks.woltje.com v2.7.0: the candidate's own `reconcile()` and `tick()` with descendants on, root #19, the sync key only, a real Store and Broker in a scratch root, and a fetch guard refusing anything but GET. `startup()` was not run, since its scope probes send a PATCH, a DELETE and a POST as role keys; the script made the root's install check from the same two reads. Reconcile 15 GETs, 42 snapshots (30 on #19, 4 on 18, 3 on 20, 5 on 21; the cross-project probe in `2026-10-11_probe-62.json` also counted 42). Tick 8 GETs, 0 snapshots, the count `probes.md` predicted. 18, 20 and 21 are watch-only. 0 writes. Darkwing's deleted-view probe: a missing view id on #18 answers 404 code 3014 while `GET /projects/18` answers 200, so the README's account holds live (the child stays and the tick fails until the next reconcile reads it watch-only, which Filbert notes stops the root's tick too). The fake answers 13001; the adapter treats any 404 without code 4002 the same, so behavior doesn't change. No README change needed. The live bus is still on descendants off (host config `tracker.descendants` false); turning it on is a config change for when row 63 lands.
Row 62 done at rev 452 (86f65766); #1555 closed with comment 27352. Follow-up: row 71, #1565, brief 9d715276, owner Darkwing, after their rows 58, 61 and 69: tests for the surviving confirm-read mutants (`r3-confirm-4xx`, `r3-confirm-error-on-throw`) and the fake's view 404 set to 3014.
### 2026-10-11 — Sage, row 68 landed: the bus host runs an explicit Claude Code binary (#1561)
Round 1 (manifest a2008d8b, base a86de1f1) had both approvals, Filbert 27349 and Dewey 27350, but couldn't land. Row 55 (79d9fc2d) changed `docs/TOOLS.md` and `packages/cli/README.md` after that base, and a manifest pins whole files. Round 2 (`agents/sage/work/queue-68/r2/`, b31cc8a9, manifest 21c1ab05) is round 1's patch applied on f2f2861b with `git apply --index --3way`; its `+` and `-` lines are byte-identical to round 1's. Sage's gate on f2f2861b plus the patch finished 21:37:18Z: cli 112, seat 27, harness 57 node tests and nine `scripts/test-*.sh`, all 0 failed, Docker on, manifest OK before and after. Filbert approved round 2 (27374), Dewey too (27375, after a rerun: their first harness run failed 5 pi tests on a missing node_modules link).
Landed as 11dae0c7; `queue review verify-commit 68 11dae0c7` matched the manifest (13 paths). Installed 21:42:39Z with `bus-service.sh install --claude /home/jwoltje/.local/bin/claude`: the unit's diff was its comments and `Environment=MOSAIC_CLAUDE_BIN=/home/jwoltje/.local/bin/claude`, then `daemon-reload` only. The symlink resolves to 2.1.296. Probe at 21:43:03Z, `adapters/claude/adapter.sh` under `env -i` with the unit's PATH, claude-opus-5-5, empty settings and MCP config, in a scratch dir since removed: the pin answered "OK" rc 0; `/usr/bin/claude` (2.1.259) got "2.1.280 or newer is required" rc 1. The running bus (PID 1242258, since 13:19:28 CDT) was not restarted; it picks up the pin at Mos's watched Q18 `--pm` restart. Lead decision 91 amends 89: Jason's package upgrade is no longer needed.
Row 68 done at rev 463 (4100fa68). The surviving mutants (a directory pin in both scripts, the symlink default, an adapter pin with a space) and the dead `task.reassign` grant in `roles/coder.json` that decision 90 named go to two Rocko rows, brief `docs/plans/2026-10-11_claude-pin-and-coder-grant.md`.