Files
stack/agents/sage/work/queue-68/r2/build.md
T

2.1 KiB

Row 68 (#1561): the bus host runs an explicit Claude Code binary, round 2

Sage, 2026-10-11. Round 2 is round 1 rebased, nothing else.

Round 1 (manifest a2008d8b, base a86de1f1) has both approvals: Dewey 27350 and Filbert 27349. It can't land as approved. Row 55 (79d9fc2d) landed after a86de1f1 and changed two of the 13 candidate paths, docs/TOOLS.md and packages/cli/README.md, so no commit on refactor can hash to round 1's manifest.

Base f2f2861b. build.patch is round 1's patch applied there with git apply --index --3way (every file applied cleanly) and taken back out with git diff --cached. candidate-manifest.sha256 pins the same 13 paths in round 1's order.

What changed from round 1

Only context. The + and - lines of the two patches, with the file headers dropped, are byte-identical:

grep -E '^[+-]' PATCH | grep -vE '^(\+\+\+|---) '

gives the same output for ../build.patch and build.patch. Eleven of the 13 hashes are round 1's. The two that differ are the two files row 55 changed, and row 55's additions there say nothing about the claude binary, MOSAIC_CLAUDE_BIN, bus-service.sh or systemd.

To check it: in a worktree of f2f2861b, git apply --index build.patch, then sha256sum -c candidate-manifest.sha256; and git diff a86de1f1 f2f2861b -- docs/TOOLS.md packages/cli/README.md is row 55's change alone.

Round 1 notes

Carried, not addressed here. After landing, the install names the binary (install --claude /home/jwoltje/.local/bin/claude) and the version is checked at or above 2.1.280. The surviving mutants (a directory pin, bs-status-no-env, bs-resolve-default, the x-only checks) go to a follow-up row.

Gate

Sage's gate, a detached worktree of f2f2861b with build.patch applied, sequential, Docker on, finished 2026-10-11T21:37:18Z: cli 112, seat 27 and harness 57 node tests, 0 failed (cli and harness have more tests than round 1's gate because row 55's are in this base). test-auth 15, test-conductor 17, test-config 24, test-discord 66, test-extension-package 18, test-foundation 44, test-queue 27, test-release 14, test-task 98, all 0 failed. The manifest checked OK before and after.