Commit Graph
1955 Commits
Author SHA1 Message Date
jason.woltjeandClaude Opus 5.5 48b0b64869 review(58): Darkwing round 2 candidate, rebased on row 74's tree (#1547)
Round 1's build.patch applies cleanly on 424ada49 (row 74 landed as 351464ce).
Only packages/webui/README.md's digest changes; the bullet text is the same.
Manifest eb2b26c1. Gate 23:41:10Z-23:44:25Z: bus 83, tasks 71, webui 61, every
scripts/test-*.sh green. 16 of 17 mutants fail, output identical to round 1.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:49:52 -05:00
jason.woltjeandClaude Opus 5.5 0c1e3fe866 plans: row 79 brief takes Dewey's row 73 N1, the harness untyped-list pin (#1573)
The coder-without-a-tracker test in packages/harness/tests/tools.test.mjs
joins row 79's files with one deepEqual on the untyped list, the packet
records Dewey's mutants.sh header correction, and the harness suite
joins the gate. Queue note rev 551.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:49:19 -05:00
jason.woltjeandClaude Opus 5.5 0453da7e10 feat(roles): coder drops the task.reassign grant the broker always refuses (#1567, row 73)
roles/coder.json crossRole goes from ["task.reassign", "task.scope.change"]
to ["task.scope.change"]. The broker refuses a non-pm task.reassign at the
writer check before it looks at authority, so the grant could never be
used. A coder's task.reassign now classifies as gated and goes to the
human. Backed by lead decision 90.

Tests: business role and resolve (the narrowing test moves to the pm,
which still holds two cross-role actions), a bus test on the shipped role
files, a harness test that a coder with a tracker gets no task_reassign,
the tasks fixture, and a verbs line showing a coder's task.reassign
refuses field-writer with no action.allowed. mutants.sh is Rocko's packet
rerun script, already committed.

Author: Rocko (packet agents/rocko/work/queue-73/, commit 2137dd7f).
Candidate manifest sha256 bf4e5ed6, base 324c064b, no drift on the
candidate paths through 8a42e819.
Approval: Dewey, round 1, comment 27506 on #1567.
Gate (Sage, /tmp/sage-g73 on 8a42e819, 23:42-23:48Z): tasks 71, bus 81,
business 60, harness 59, cli 113, webui 61, seat 27 node tests, 0 failed;
every scripts/test-*.sh exit 0, 0 failed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:49:09 -05:00
jason.woltje fb619befd0 queue: revs 551-552, row 79 N1 note (sage) and row 76 started (#1570) (dewey) 2026-10-11 18:45:54 -05:00
jason.woltjeandClaude Opus 5.5 8a42e819fc sessions: dewey row 73 round 1 review (#1567)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:42:03 -05:00
jason.woltjeandClaude Opus 5.5 af29701296 queue: rev 550, row 73 round 1 approve (comment 27506) (#1567) (dewey)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:41:58 -05:00
jason.woltjeandClaude Opus 5.5 abf2b4f6ad sessions: sage row 80 stranded-delivery ruling (#1574)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:39:59 -05:00
jason.woltje 18a44ebb64 queue: revs 548-549, row 80 added (#1574) and held behind the cutover (decision 94) (sage) 2026-10-11 18:39:53 -05:00
jason.woltjeandClaude Opus 5.5 d45ed67ca7 plans: bus stranded-delivery brief from row 59 review (Note B)
Darkwing's row 59 review (comment 27487) found that a message delivered
to a run that releases the role unread can't be received or read by the
next holder. Sage's ruling: keep at-most-once delivery, as the bus
README promises, and list stranded messages in the agents read so a
person decides whether to resend. Owner Darkwing after row 59, reviewer
Filbert, held behind the cutover with the other bus rows (decision 94).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:38:56 -05:00
jason.woltjeandClaude Opus 5.5 424ada49c0 sessions: darkwing row 59 round 1 review, approve (#1548)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:37:41 -05:00
jason.woltjeandClaude Opus 5.5 0c3817587e build-log: row 74 landed (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:34:09 -05:00
jason.woltje b1c4acf327 queue: revs 545-547, row 74 done (351464ce), row 76 README notes (sage); darkwing's 545, row 59 round 1 review record 2026-10-11 18:33:51 -05:00
jason.woltjeandClaude Opus 5.5 351464ce42 feat(webui): signed-in read-only Console preview behind the edge proxy (#1568, row 74)
serve takes --public-host NAME --auth-header HEADER --allow-user ID, all
three or none. With them, a request whose Host is NAME must carry HEADER
equal to ID or gets 403; a request that carries HEADER with any other Host
gets 403, so a proxy that rewrites Host can't reach the loopback path with
a signed-in request; every POST is refused read-only. A repeated Host gets
400 in both modes. Host and header names compare case-insensitively
(Traefik sends X-Authentik-Uid). The README states the proxy contract:
the edge forwards Host unchanged and strips client copies of HEADER.

Author: Dewey. Round 2 candidate manifest
17b6d7f62d106a23d99441eefa46e34ab2e9bd1442a1d02e219f126a82a8668d (base
17ea0dbc, no drift on the 4 paths through 60c8dcf9). Approved by Filbert
(comment 27485) and Darkwing (comment 27486) on #1568. Their wording
notes on the README (first signed-in request; the tunnel sentence) go to
row 76, which owns the README next.

Sage gate rerun on a worktree of a55915f0 with the patch: manifest OK;
webui 61/61, control-board 124/124, cli 113/113; test-auth 15, conductor
17, config 24, extension-package 18, foundation 44, queue 27, release 14,
task 98, all 0 failed. test-discord failed one timing test (engine: a
timed-out run outlives the grace, 280 ms at load 30) on the sequential
run and passed 66/66 on a solo rerun of the same worktree; the patch
touches no discord file.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:32:51 -05:00
jason.woltjeandClaude Opus 5.5 3417d21483 review(59): Darkwing round 1 packet, approve (#1548 comment 27487)
Candidate 90d5bddc on f2f2861b. bus 86/0, webui 40/0, every scripts/test-*.sh
green 23:23:30Z-23:26:25Z; 20 of 21 mutants killed, any-role-msg equivalent.
Notes: a claim that outlives its runner, a stranded delivered message (bus
follow-up to Sage), overlap with row 58.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:32:46 -05:00
jason.woltjeandClaude Opus 5.5 60c8dcf970 sessions: filbert row 74 round 2 review, approve (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:32:20 -05:00
jason.woltjeandClaude Opus 5.5 d754869702 sessions: darkwing row 74 round 2 review, approve (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:31:50 -05:00
jason.woltje 5fbb681b7e queue: revs 543-544, row 74 round 2 approvals, Filbert (543) and Darkwing comment 27486 (#1568) (darkwing) 2026-10-11 18:31:41 -05:00
jason.woltjeandClaude Opus 5.5 3a2b051736 review(74): Darkwing round 2 packet, approve (#1568 comment 27486)
Round 2 candidate 17b6d7f6 on 17ea0dbc. 22 of 23 mutants killed, joined-value
equivalent; probes cover repeated Host, proxy Host, HEAD and absolute-form.
r1/ holds the round 1 findings sent to Dewey in place of a verdict.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:30:48 -05:00
jason.woltjeandClaude Opus 5.5 a55915f067 sessions: dewey row 74 round 2 candidate and review request (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:24:56 -05:00
jason.woltjeandClaude Opus 5.5 821e183d19 queue: revs 540-542, row 74 in review round 2, comment 27484 (#1568) (dewey)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:24:49 -05:00
jason.woltjeandClaude Opus 5.5 fce04c1556 review(dewey): row 74 round 2 packet, repeated-Host 400 and proxy-Host 403 (#1568)
Round 2 per Sage's notes revs 521 and 523: a repeated Host is 400 before
any check; HEADER with a Host other than NAME is 403 proxy Host refused;
HEAD, x.NAME and --auth-header tests; the README proxy contract lines.
Candidate manifest 17b6d7f6, base 17ea0dbc. 34 of 34 mutants killed;
gate green.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:23:26 -05:00
jason.woltjeandClaude Opus 5.5 0cd7e6cf08 build-log: row 72 landed (#1566)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:21:43 -05:00
jason.woltje 4376f50582 queue: revs 537-539, row 73 round 1 request posted as jarvis (comment 27467), row 79 added (#1573) (sage) 2026-10-11 18:21:22 -05:00
jason.woltjeandClaude Opus 5.5 2137dd7f5d review(rocko): row 73 round 1 packet, coder role drops task.reassign (#1567)
Rocko's packet agents/rocko/work/queue-73/ (candidate manifest bf4e5ed6,
packet manifest 41ffcd5c, 53 files), their BUILD-LOG entry and SESSIONS
line. Sage's SESSIONS line for the review request (comment 27467) and
row 79 (#1573) for the stale text the packet names.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:20:34 -05:00
jason.woltjeandClaude Opus 5.5 4e714509d1 plans: coder grant stale text brief from row 73 packet
Rocko's row 73 packet names three places outside the row's files that
still show the coder's task.reassign grant: the business README example,
the tasks README paragraph and live/run.mjs. They go to a follow-up row
after 73, owner Rocko, reviewer Dewey, so row 73's round 1 isn't
restarted for a scope change.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:20:14 -05:00
jason.woltje e4bf7d10a7 queue: revs 531-536, row 78 added (#1572), row 72 done (d436fe8b), landing order 74-58-60 (sage); rocko's 533-534, row 73 in review round 1, request failed (no credential) 2026-10-11 18:18:05 -05:00
jason.woltjeandClaude Opus 5.5 d436fe8bdc test(cli, harness): Claude pin tests, a directory pin, a symlink default, a pin with a space (#1566, row 72)
One test in packages/cli/tests/host.test.mjs: a directory given with
--claude is refused, and a symlink default stays the symlink path. One
in packages/harness/tests/claude-session.test.mjs: a directory pin exits
2 before claude runs, and a pin under a directory with a space runs.
agents/rocko/work/queue-72/mutants.sh (committed with the packet in
036afdb6) reruns the six row 68 mutants: all killed on the candidate,
all surviving on the base. Accepted deviation: bash's command -v never
returns a directory, so a directory named claude on PATH takes the
no-claude branch, which the test asserts.

Author: Rocko. Candidate manifest e6531a5311f17ea147700e417dfdbd766a9c38acf3c3b44755267c285b78e006
(base a0080da8, no drift on the candidate paths, bus-service.sh or
adapter.sh). Approved by Filbert, comment 27460 on #1566; their N1 is
row 78, #1572.

Sage gate rerun on a worktree of df676fa1 with the patch: manifest OK;
cli 113/113, harness 58/58, 0 skipped; test-auth 15, conductor 17,
config 24, discord 66, extension-package 18, foundation 44, queue 27,
release 14, task 98, all 0 failed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:17:03 -05:00
jason.woltjeandClaude Opus 5.5 f6b9ea4e3f sessions: dewey row 58 round 1 review, approve (#1547)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:14:22 -05:00
jason.woltjeandClaude Opus 5.5 05d9863c7a queue: rev 530, row 58 round 1 approve by dewey, comment 27461 (#1547) (dewey)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:14:13 -05:00
jason.woltjeandClaude Opus 5.5 950a965aef plans: Claude pin default-path tests brief from row 72 review (N1)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:13:34 -05:00
jason.woltjeandClaude Opus 5.5 df676fa154 sessions: filbert row 72 round 1 review, approve (#1566)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:12:50 -05:00
jason.woltjeandClaude Opus 5.5 0a4b7a4e59 queue: rev 529, row 72 round 1 approve by filbert, comment 27460 (#1566) (filbert)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:12:43 -05:00
jason.woltje 324c064b2a queue: revs 524-528, row 72 in review round 1, comment 27454 (#1566) (rocko's 524-526, incl. row 73 started; sage's request as jarvis 527-528) 2026-10-11 18:06:36 -05:00
jason.woltjeandClaude Opus 5.5 036afdb686 review(rocko): row 72 round 1 packet, Claude pin tests (#1566)
Rocko's packet agents/rocko/work/queue-72/ (candidate manifest e6531a53,
base a0080da8) with their BUILD-LOG and SESSIONS appends, and Sage's
SESSIONS line for the jarvis review request (comment 27454).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:06:07 -05:00
jason.woltje 93e8c19327 queue: rev 523, row 74 round 2 note for Darkwing's finding (sage) 2026-10-11 18:05:40 -05:00
jason.woltjeandClaude Opus 5.5 17ea0dbc78 sessions: dewey row 67 round 1 review, approve (#1560)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:04:43 -05:00
jason.woltje 01ef77b04a queue: rev 522, row 67 round 1 approve by dewey, comment 27452 (#1560) (dewey) 2026-10-11 18:04:35 -05:00
jason.woltje ebd905540d queue: revs 520-521, row 74 round 2 note (sage); rev 520 row 72 started (rocko) 2026-10-11 18:01:23 -05:00
jason.woltjeandClaude Opus 5.5 a0080da8c9 docs(sessions): row 74 round 1 review (filbert)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:55:02 -05:00
jason.woltjeandClaude Opus 5.5 09edf65110 build-log, sessions: row 75 landed (743c01e3, #1569)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:54:17 -05:00
jason.woltje f0c37f7502 queue: revs 517-519, row 77 added (#1571), row 75 done (743c01e3) (sage); rev 518 row 74 round 1 approve by filbert, comment 27433 2026-10-11 17:54:05 -05:00
jason.woltjeandClaude Opus 5.5 743c01e34b feat(webui): the Console as a user service (#1569, row 75)
scripts/webui-service.sh render|install|uninstall|status and the
packages/webui/systemd/mosaic-webui.service.in template, on the
bus-service.sh pattern. install writes the unit to a temp file, renames
it and runs only `systemctl --user daemon-reload`. There is no start,
stop, enable or restart verb: the Console reads the bus through the human
transport, so Jason starts it from his own shell (lead decisions 62 and
94). Serve's flags pass through, including row 74's preview set, each
held to a character set the unit can carry. The unit sets no MOSAIC_*,
CLAUDE*, CODEX* or PI_* variable and does not restart on serve's exit 2.
Tests in packages/webui/tests/service.test.mjs; TOOLS.md entry.

Author: Rocko. Candidate manifest 7dc571dbe87a484f465c82e1965e499c57d9af047bfe702faa3fe041138dd154
(agents/rocko/work/queue-75/, base 43d2328f, no drift on the manifest
paths to 8b351c3d). Approved by Filbert, comment 27430 on #1569, with
five non-blocking notes placed in row 77.

Sage gate rerun on a worktree of 8b351c3d with the patch: manifest OK;
webui 50/50; test-auth 15, conductor 17, config 24, discord 66,
extension-package 18, foundation 44, queue 27, release 14, task 98, all
passed, 0 failed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:49:51 -05:00
jason.woltjeandClaude Opus 5.5 8b351c3d7a plans: Console service follow-ups brief from row 75 review (N1-N5)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:45:52 -05:00
jason.woltjeandClaude Opus 5.5 b7d9cfeb54 docs(sessions): row 75 round 1 review (filbert)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:43:57 -05:00
jason.woltjeandClaude Opus 5.5 fc196fe4f1 sessions: dewey row 60 round 1 review, approve (#1549)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:43:43 -05:00
jason.woltje 51d42e5ea5 queue: rev 516, row 60 round 1 approve by dewey, comment 27431 (#1549) (dewey) 2026-10-11 17:43:37 -05:00
jason.woltjeandClaude Opus 5.5 bfa2b317e0 queue: revs 513-514, row 76 note on the 403 message, row 60 landing order after 74 (sage)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:42:10 -05:00
jason.woltjeandClaude Opus 5.5 7b37e27609 sessions: dewey row 74 round 1 candidate and review request (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:40:08 -05:00
jason.woltje b4dd7305ac queue: revs 511-512, row 74 in review round 1, comment 27428 (#1568) (dewey) 2026-10-11 17:38:43 -05:00
jason.woltjeandClaude Opus 5.5 ea07e19c5a review(dewey): row 74 round 1 packet, WebUI preview behind a sign-in proxy (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:37:14 -05:00