Commit Graph
176 Commits
Author SHA1 Message Date
jason.woltjeandClaude Opus 5.5 9391f338d6 review(darkwing): row 67 round 2 review packet, approve (#1560)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:56:39 -05:00
jason.woltjeandClaude Opus 5.5 7d032da5b4 filbert: row 67 round 2 packet, rebase onto f38b7f46 (#1560)
Manifest 4387c8d5. Rebase only: same added and removed lines, three files
re-digested after rows 58, 60 and 59. Gate green, round 1 mutants all killed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:53:36 -05:00
jason.woltjeandClaude Opus 5.5 7e6f25e4de packet(rocko): row 82 round 2 candidate dbf36e92, packet manifest 2afecca7, BUILD-LOG entry (#1551)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:43:09 -05:00
jason.woltjeandClaude Opus 5.5 4a00aaca1b review(darkwing): row 67 round 1 review packet, approve (#1560)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:30:54 -05:00
jason.woltjeandClaude Opus 5.5 29124395f4 review(darkwing): row 76 round 1 review packet, approve (#1570)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:23:26 -05:00
jason.woltjeandClaude Opus 5.5 1deb614344 review(dewey): row 76 round 1 packet, Console sends a human message to a role, on 3d298920 (#1570)
Built on bbd22f1b, rebased on row 60 (3d298920): the bus.mjs header
comment conflict merged, serve.mjs BUS_VERBS and the README credentials
paragraphs merged cleanly. 21 of 21 mutants killed, full gate green.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:10:35 -05:00
jason.woltjeandClaude Opus 5.5 8c704ddde1 review(darkwing): row 59 round 2, approve (#1548)
Rebase-only round on 3d298920. Merged hunks against rows 58 and 60 keep
both sides; 21 round 1 mutants give round 1's results. Comment 27591.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:52:53 -05:00
jason.woltjeandClaude Opus 5.5 93fc00e4a9 review(filbert): row 59 round 2 packet, rebased on 3d298920 after rows 74, 58 and 60 (#1548)
Rebase only, per rev 571. Two conflicts resolved: the agents branch in
broker.mjs next to row 58's tasks line, and the bus.css widths line.
Merged hunks in broker.mjs and the bus README are named in build.md.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:46:40 -05:00
jason.woltjeandClaude Opus 5.5 a030b895fc darkwing: row 60 round 2 review, approve, comment 27575 (#1549)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:36:08 -05:00
jason.woltjeandClaude Opus 5.5 1735f27d37 rocko: row 79 round 1 packet, BUILD-LOG and SESSIONS (#1573)
Packet agents/rocko/work/queue-79/ (packet manifest b6b11e7b, 42 files,
candidate manifest 16b12387), Rocko's BUILD-LOG and SESSIONS appends.
Committed by Sage for Rocko, who has no credential.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:19:14 -05:00
jason.woltjeandClaude Opus 5.5 5fc7635cd8 review(filbert): row 60 round 2 packet, rebased on bbd22f1b, decisions row and Dewey's N1 (#1549)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:12:07 -05:00
jason.woltjeandClaude Opus 5.5 2ece44919e rocko: row 78 round 1 packet, BUILD-LOG and SESSIONS (#1572)
Packet agents/rocko/work/queue-78/ (packet manifest 9e067f40, 32 files,
candidate manifest 3016dbf1), Rocko's BUILD-LOG and SESSIONS appends.
Committed by Sage for Rocko, who has no credential.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 19:10:16 -05:00
jason.woltjeandClaude Opus 5.5 eace3fefec darkwing: row 60 round 1 review packet, approve, comment 27531 (#1549)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 18:57:16 -05:00
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 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 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 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 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 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.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
jason.woltjeandClaude Opus 5.5 bce20fcbbe review(rocko): row 75 round 1 packet, the Console as a user service (#1569)
Committed by sage for rocko (no credential). Candidate manifest 7dc571db, packet manifest 0bc9a870, base 43d2328f.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:33:54 -05:00
jason.woltjeandClaude Opus 5.5 a3d1700539 sage: M1 draft role brief and I1 survey dispatch (next-target, waits on Q97)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:29:11 -05:00
jason.woltjeandClaude Opus 5.5 7f92a1039b review(darkwing): row 58 round 1 packet, task priority and requirement on the bus read (#1547)
Candidate build.patch on ae428a54, manifest e63e4c4f. Gate on f2f2861b: bus 83,
tasks 71, webui 40, every scripts/test-*.sh exit 0. Mutants 16 of 17 killed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:23:08 -05:00
jason.woltjeandClaude Opus 5.5 69761f73a2 review(filbert): row 67 round 1 packet, decisions read follow-up tests (#1560)
Manifest pins 4 files on base 970ef729; candidate source is not committed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 17:11:46 -05:00
jason.woltjeandClaude Opus 5.5 e7e6950819 review(filbert): row 60 round 1 packet, broker credential status read (#1549)
Manifest pins 9 files on base 4100fa68; candidate source is not committed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:57:51 -05:00
jason.woltjeandClaude Opus 5.5 e82f7c32e2 row 59 (#1548): round 1 packet, agent state per role (filbert)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:39:10 -05:00
jason.woltjeandClaude Opus 5.5 b31cc8a90c row 68 (#1561): round 2 packet, round 1 rebased onto f2f2861b after row 55
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:37:32 -05:00
jason.woltjeandClaude Opus 5.5 902b3d0eac vikunja: row 62 live tick on #19 with descendants on, GETs only (sage)
tick-62.mjs runs the candidate's discover(), reconcile() and tick()
against tasks.woltje.com with the sync key, a real Store and Broker in a
scratch root, and a fetch guard that refuses anything but GET. The
startup scope probes are not sent. Reconcile 15 GETs, 42 snapshots; tick
8 GETs, 0 snapshots; 18, 20 and 21 watch-only. A missing view id on #18
answers 404 code 3014 while #18 reads 200 (the fake says 13001).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:29:18 -05:00
jason.woltjeandClaude Opus 5.5 d3ca2c22d6 ops(q81): the wrapper forwards __lease-capability to mosaic-old (Mos)
Mos amended ruling (2): with no environment location for
MOSAIC_LEASE_VERSION_PROBE_COMMAND, the wrapper sends only
`__lease-capability` to ~/.npm-global/bin/mosaic-old, so the old CLI's
lease gate still gets its answer. Every other subcommand reaches the
pinned worktree; undo removes the forward with the wrapper. update now
rewrites the wrapper, and status flags a wrapper that differs from what
the script writes. Checked live at 21:17:58Z: the probe answered
{"name":"lease-runtime-activation","version":1}, exit 0.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:18:21 -05:00
jason.woltjeandClaude Opus 5.5 b93211e37e docs(queue-62): the correction's fail-closed sentence overclaimed; name the assumption
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:17:16 -05:00
jason.woltjeandClaude Opus 5.5 ba5e74ad36 docs(queue-62): correct round 3's live-instance claim, which came from the fake
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:17:04 -05:00
jason.woltjeandClaude Opus 5.5 918a4a1937 ops(q81): mosaic on PATH runs the pinned mosaic-stack CLI (sage-0042)
agents/sage/work/q81/mosaic-cli.sh does install, update, undo and status.
~/.npm-global/bin/mosaic is now a wrapper that execs scripts/mosaic in a
detached worktree at ~/.local/share/mosaic-cli/stack, pinned to pushed
ee129aa6. The estate CLI symlink was renamed in place to mosaic-old.
Only commits on origin/refactor can be pinned. `mosaic queue` refuses
from the worktree (the queue runs only in the canonical checkout), so
queue work stays on scripts/mosaic. status flags a wrapper replaced by
`npm i -g --force`.

lease-gate-notes.md: no single environment location for
MOSAIC_LEASE_VERSION_PROBE_COMMAND exists outside fleet state, so the
old-path lease gate fails closed, as Mos ruled for that case.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 16:16:28 -05:00
jason.woltjeandClaude Opus 5.5 ccccc16932 row 68 (#1561) round 1 packet: bus host pins MOSAIC_CLAUDE_BIN
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 15:57:01 -05:00
jason.woltjeandClaude Opus 5.5 90e568624f row 62 (#1555) round 3 packet: confirm read before a child drops, candidate 8b81e836
R2/B1: after a forbidden or not-found refusal on a child, the tick reads
GET /projects/<id> and drops the child only on 403 or 404; a deleted
kanban view (project read 200) fails the tick as in round 1. Tests 18
and 19, 23/23 mutants killed, gate on ae428a54 green (14 suites).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 15:54:19 -05:00
jason.woltjeandClaude Opus 5.5 fa3cc6e1df docs(queue-57): row 57 candidate packet, decisions read for roles and recent (filbert)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 15:00:47 -05:00
jason.woltjeandClaude Opus 5.5 26926d183a docs(queue-55): row 55 round 3 candidate packet, R3 and B1 (darkwing)
One rule for Filbert's R3 and Dewey's B1: y resolves only while the
whole decide box is shown. Adds N9 widths, the start-unguarded and
timeout fixes, and two defects found by the cheap tests (wrap at
graphemes, answer render throw). 51/51 mutants killed; gate on
122b1223 green, cli 110.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 14:59:13 -05:00
jason.woltjeandClaude Opus 5.5 620c0e89fd docs(queue-62): row 62 round 2 candidate packet, R1 and six test gaps (darkwing)
Filbert's R1 (27279) and Dewey's matching blocking item (27280): a child
that answers 403 or 404 in a tick leaves the tree, and the root still
refuses. Tests for Filbert's N1-N3 and Dewey's three gaps. 18 mutants
killed; all 13 suites green at 122b1223. Manifest sha256 55316d88.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 14:55:12 -05:00
jason.woltjeandClaude Opus 5.5 02da0929c4 vikunja: Q80, delete #19 view 76 extra buckets 55, 56, 158, 160 with a one-time key (sage)
Jason: "Q80: Have the PM decide. Then fix". project-manager decided to
delete all four and moved their tasks to todo. Mos ruled no standing
delete scope on any bot key. svc-mosaic-stack minted key 10 for the pm
user with only projects.views_buckets_delete and a 30-minute expiry,
held in memory only. The pre-read showed all four buckets empty. Four
DELETEs answered 200, and key 10 was revoked (204) at once. The pm user
now lists only key 8. The read-back shows buckets 57 done, 159 todo
(default), 161 in-progress, 248 in-review and 162 blocked, with task
counts unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 14:47:29 -05:00
jason.woltjeandClaude Opus 5.5 ef69a2c4ac vikunja: row 62 gate-read probe, cross-project task read works for the sync key (sage)
GETs only, sync key 9. Project list 200, total 30 (31 with archived #15).
#18, #20 and #21 have parent 19, none archived. GET /tasks with
filter project in 19, 18, 20, 21: 200, 42 tasks across all four. The
per-project open reads give 18, 4, 3 and 1. A follow-up row moves a tick
to the single read after row 62 is done.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 14:14:43 -05:00
jason.woltjeandClaude Opus 5.5 6b83edc36a docs(queue-62): row 62 candidate packet, project trees (darkwing)
Candidate manifest sha256 ec3f7a42f3bf6436634a5a83a12bb5678ca1e58a10ff4f66a23dfca7ff3f375f,
13 files on edc5de71. Gate on 6ae8b844: 13 suites green. The candidate
itself is not committed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 14:12:05 -05:00
jason.woltjeandClaude Opus 5.5 892e765f37 review(41): recorded acceptance run met, ACCEPTANCE.md and run evidence (filbert)
Jason ran run.sh (sha256 c609c682) from a human shell on fe5c68fa,
2026-10-11T18:32:45Z to 18:32:54Z. The PM launched coder r2810c6373900,
recorded by pm in the launch log, and mosaic agents shows it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 13:42:00 -05:00
jason.woltjeandClaude Opus 5.5 fa6d889cb7 queue-55: round 2 candidate packet (darkwing)
Answers Filbert's comment 27251 and Dewey's comment 27253: R1 type-ahead
window, R2 terminal cell widths, B1 cut inside the question, 30 mutants
killed, N1-N8. Candidate manifest sha256 3f2d8f8e. Gate on c506c6ec:
cli 106/106 and every scripts/test-*.sh exit 0. The feature stays
uncommitted.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 13:39:05 -05:00
jason.woltjeandClaude Opus 5.5 c8a7389615 vikunja: Q61a #19 install, bus on #19, SetSpark #35 and Launchpad #36; shares read (sage)
install-19.mjs renames 57 done, 159 todo, 161 in-progress, 162 blocked,
adds 248 in-review and moves the default to 159; no task moved. Writes go
to /api/v1 (v2.7.0 405s bucket writes under /api/v2). create-33.mjs adds
#35 and #36 under #33. Records hold no secret; shares-read titles removed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 13:22:50 -05:00
jason.woltjeandClaude Opus 5.5 8060426035 vikunja: Q61a re-mint, pm key 8 and sync key 9; rows A and B brief; decision 86 (sage)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 13:12:39 -05:00
jason.woltjeandClaude Opus 5.5 20735a3706 vikunja: Q58a/Q60 teams 1 and 2, pm key 7 replaces key 2 (sage)
svc-mosaic-stack created mosaic-agents (team 1, bots pm/cto/coder/reviewer)
and mosaic-sync (team 2, bot sync), made jason.woltje team admin, then left
both teams so a team share gives svc no project access. The pm key gained
projects read_all, read_one and update; no key has task or project delete
or a share route (read back via GET /tokens?owner_id). Old pm key 2 revoked,
now 401. Record holds ids and scopes only; checked for secrets.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 12:56:04 -05:00
jason.woltjeandClaude Opus 5.5 4acadaae4e review(55): Sage's dispatch test ruling and the transport follow-up note
BUILD.md records Sage's 2026-10-11 ruling that packages/queue/tests/
dispatch.test.mjs is in scope. FOLLOWUP-transport-code.md writes up the
transport's did-not-finish error with no .code, for the 10-12 batch.
The candidate (manifest 93fa48c1cdfe) is unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 12:54:43 -05:00
jason.woltjeandClaude Opus 5.5 93bd679069 review(55): Darkwing round 1 build packet (candidate manifest 93fa48c1cdfe)
The full-screen terminal app (#1544): BUILD.md, build.patch over fe5c68fa
(9 files), candidate manifest, the gate logs on 23d566d6 and the pty smoke
script. The candidate itself is not committed.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 12:51:09 -05:00
jason.woltjeandClaude Opus 5.5 10225d6185 review(54): Dewey rounds 1 and 2 build packet (candidate afb2ae0e)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-10 17:11:26 -05:00
jason.woltjeandClaude Opus 5.5 cbd79cf666 feat(webui): read-only Queue, Business and Settings views (#1543, row 54)
The Console gains three read-only views. Queue lists every row from
rows() in packages/queue (lead decision 83: the same lock-free read as
`queue list`, writing nothing), run in a child with a timeout and an
output cap; a row page shows the full row. Business shows names, an
allowlist of vars, arbiters, authority per action and credential
metadata (service, account, role, date, never a value, file or
variable). Settings shows RELEASE, the board origin and the notifier
binding. Every route is GET only, and every string in a body or
refusal passes a redactor: the config directory and dataRoot become
<config> and <dataRoot>, other absolute, ~/ and file:// paths <path>,
and 17 to 20 digit runs <id>. A queue-read that fails to start sends a
fixed message, never node's stderr.

Four fixes to HEAD behaviour, each with a test: the bus view's refresh
timer is cleared at render, a same-page refresh keeps focus on the H1,
#conv-pick is emptied when a conversation opens, and error() returns
focus to <main> only when something had focus. Filbert's T8 tests the
failed first read.

Dewey built it in two rounds. Round 1 (dba2429e) got changes from
Filbert (27185: After rendered [object Object], ~/ and :/ paths leaked)
and Darkwing (27186: Arbiters always none, queue-read import failure
leaked a file:// path and stack). Round 2 (afb2ae0e) was approved by
Filbert (27190) and Darkwing (27191, correction 27192). Sage's gate on
d64f434f plus the candidate: 13 package node suites 0 failed (queue
149, webui 39), every scripts/test-*.sh 0 failed (task 98/0 with
Docker, 26/0 without; release 14/0), build-tokens --check current.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-10 17:11:17 -05:00
jason.woltjeandClaude Opus 5.5 bfbcf626de review(row54): round 2 packet, approve (darkwing)
Comment 27191 on #1543, correction 27192. Candidate afb2ae0e.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-10 17:10:15 -05:00