From e4bf7d10a7193ca50d6966e5413175e8b0592cfb Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Sun, 11 Oct 2026 18:18:05 -0500 Subject: [PATCH] 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) --- docs/plans/QUEUE.md | 11 +- docs/plans/queue.json | 260 +++++++++++++++++++++++++++++++++++++++--- 2 files changed, 249 insertions(+), 22 deletions(-) diff --git a/docs/plans/QUEUE.md b/docs/plans/QUEUE.md index 2565eb64d..ad8a0d900 100644 --- a/docs/plans/QUEUE.md +++ b/docs/plans/QUEUE.md @@ -33,7 +33,7 @@ Gaps found while working go to `docs/plans/DEFERRED.md`, not here. -Generated from `docs/plans/queue.json` revision 530 by `queue render`. Do not edit between the markers; change the queue with `scripts/mosaic queue`. +Generated from `docs/plans/queue.json` revision 536 by `queue render`. Do not edit between the markers; change the queue with `scripts/mosaic queue`. | # | Piece | Owner | Issues | State | After | Gate | Brief | Note | |---|---|---|---|---|---|---|---|---| @@ -94,9 +94,9 @@ Generated from `docs/plans/queue.json` revision 530 by `queue render`. Do not ed | 55 | Full-screen terminal app | darkwing; reviewers dewey, filbert | #1544 | done | — | dewey and filbert approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Full-screen terminal app | Sage gate rerun 2026-10-11T18:02Z on 23d566d6 plus build.patch, candidate manifest 93fa48c1cdfe verified: packages/cli 97/0, packages/queue 150/0, every scripts/test-*.sh exit 0 with Docker on (test-task 98/0, live hello ran). dispatch.test.mjs ruled in scope (Darkwing 4acadaae). Waiting on dewey and filbert verdicts. | | 56 | Runs and releases reader module | rocko; reviewers darkwing, filbert | #1545 | done | — | darkwing and filbert approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun; mosaic-task list/show output byte-identical (sage) | `docs/plans/2026-10-10_design-implementation.md` § Runs and releases reader module | — | | 57 | Bus read: decisions routed to roles and recent decisions | filbert; reviewers darkwing, dewey | #1546 | done | 41 done | darkwing and dewey approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: decisions routed to roles and recent decisions | — | -| 58 | Bus read: task priority and requirement | darkwing; reviewers dewey, filbert | #1547 | in-review, round 1, request posted | 41 done | dewey and filbert approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: task priority and requirement | — | +| 58 | Bus read: task priority and requirement | darkwing; reviewers dewey, filbert | #1547 | in-review, round 1, request posted | 41 done | dewey and filbert approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: task priority and requirement | Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. Both approvals are in (27426, 27461), but 58 shares packages/webui/README.md with row 74, which is on the cutover path. After 74 lands, Darkwing re-rounds 58 on the new HEAD (only the README should move; reviewers re-approve the delta), then Sage gates and lands it. Reviewers' three test-gap notes go to one follow-up row. | | 59 | Bus read: agent state per role | filbert; reviewers darkwing, dewey | #1548 | in-review, round 1, request posted | 41 done | darkwing and dewey approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: agent state per role | — | -| 60 | Bus read: credential status on the broker | filbert; reviewers darkwing, dewey | #1549 | in-review, round 1, request posted | 41 done | darkwing and dewey approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: credential status on the broker | Landing order (Sage, 2026-10-11): row 74 lands first, since it's on the cutover path. Rows 74 and 60 both touch serve.mjs (BUS_VERBS) and README.md, so if 60 is approved before 74 lands, 60 waits, then re-rounds on the new base. That round should be quick, since Dewey reports the patches compose. | +| 60 | Bus read: credential status on the broker | filbert; reviewers darkwing, dewey | #1549 | in-review, round 1, request posted | 41 done | darkwing and dewey approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Bus read: credential status on the broker | Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. 60 shares broker.mjs and webui tests/bus.test.mjs with 58 and serve.mjs and the README with 74, so it re-rounds once, after both land. | | 61 | Task field-writer table as data | darkwing; reviewers dewey, filbert | #1550 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 41 done | dewey and filbert approve on the issue naming the candidate manifest; suites in the brief's Gate plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_design-implementation.md` § Task field-writer table as data | — | | 62 | Multi-project sync: the adapter reads a project tree | darkwing; reviewers dewey, filbert | #1555 | done | — | dewey and filbert approve on the issue naming the candidate manifest; tasks, business, bus and every scripts/test-*.sh green on Sage's gate rerun, then Sage's live read on #19 (sage) | `docs/plans/2026-10-11_multi-project-sync.md` § Multi-project sync: the adapter reads a project tree (row A) | — | | 63 | Multi-project verbs: task verbs across the tree | darkwing; reviewers dewey, filbert | #1556 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 62 done | dewey and filbert approve on the issue naming the candidate manifest; tasks, harness and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_multi-project-sync.md` § Multi-project verbs: task verbs across the tree (row B) | — | @@ -108,12 +108,13 @@ Generated from `docs/plans/queue.json` revision 530 by `queue render`. Do not ed | 69 | Terminal app follow-up: narrow-terminal guard test, hidden-box way out and width tests | darkwing; reviewers dewey, filbert | #1562 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 55 done | dewey and filbert approve on the issue naming the candidate manifest; cli and queue node suites plus every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_terminal-app-follow-up.md` § Terminal app follow-up: narrow-terminal guard test, hidden-box way out and width tests | — | | 70 | Docs say mosaic on PATH is the estate CLI; after Q81 it can be this one | sage; reviewers filbert | #1564 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | — | filbert approves on the issue naming the candidate manifest; cli, queue and seat node suites and every scripts/test-*.sh green on Sage's gate run (sage) | `docs/plans/2026-10-11_mosaic-on-path-docs.md` § Docs say mosaic on PATH is the estate CLI; after Q81 it can be this one | — | | 71 | Tree read follow-up: confirm-read tests and the fake's view 404 | darkwing; reviewers dewey, filbert | #1565 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | — | dewey and filbert approve on the issue naming the candidate manifest; tasks and bus node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_tree-read-follow-up.md` § Tree read follow-up: confirm-read tests and the fake's view 404 | — | -| 72 | Claude pin tests: a directory pin, a symlink default, a pin with a space | rocko; reviewers filbert | #1566 | in-review, round 1, request posted | 68 done | filbert approves on the issue naming the candidate manifest; cli and harness node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_claude-pin-and-coder-grant.md` § Claude pin tests: a directory pin, a symlink default, a pin with a space | — | -| 73 | Coder role: drop the task.reassign grant the broker always refuses | rocko; reviewers dewey | #1567 | in-progress | — | dewey approves on the issue naming the candidate manifest; tasks, bus, business and harness node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_claude-pin-and-coder-grant.md` § Coder role: drop the task.reassign grant the broker always refuses | — | +| 72 | Claude pin tests: a directory pin, a symlink default, a pin with a space | rocko; reviewers filbert | #1566 | done | 68 done | filbert approves on the issue naming the candidate manifest; cli and harness node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_claude-pin-and-coder-grant.md` § Claude pin tests: a directory pin, a symlink default, a pin with a space | — | +| 73 | Coder role: drop the task.reassign grant the broker always refuses | rocko; reviewers dewey | #1567 | in-review, round 1, request failed | — | dewey approves on the issue naming the candidate manifest; tasks, bus, business and harness node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_claude-pin-and-coder-grant.md` § Coder role: drop the task.reassign grant the broker always refuses | — | | 74 | WebUI preview: a signed-in, read-only Console behind the edge proxy | dewey; reviewers darkwing, filbert | #1568 | in-review, round 1, request posted | — | darkwing and filbert approve on the issue naming the candidate manifest; webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun; Sage starts it after landing once rev-sol-01 passes ops-01's route (decision 93) (sage) | `docs/plans/2026-10-11_webui-preview.md` § WebUI preview: a signed-in, read-only Console behind the edge proxy | Round 2 also carries Darkwing's finding: a proxy that rewrites Host to its upstream lands on the loopback path and skips the ID check (Host 127.0.0.1:PORT, wrong user, 200). In preview mode a request whose Host isn't NAME but carries HEADER is refused. Plus Darkwing's HEAD tests and two README lines for ops-01, including that the edge must forward Host unchanged. | | 75 | Console as a user service: render, install and status, Jason starts it | rocko; reviewers filbert | #1569 | done | — | filbert approves on the issue naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_dogfood-cutover.md` § Console as a user service | — | | 76 | Console sends a human message to a role | dewey; reviewers darkwing, filbert | #1570 | briefed | 74 done | darkwing and filbert approve on the issue naming the candidate manifest; webui, bus, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun; Jason's Q95 recorded first (sage) | `docs/plans/2026-10-11_dogfood-cutover.md` § Console sends a message to a role | From row 74 round 1 (Dewey, point 5): the page shows 'Delivery may be unknown; check the seat before sending again.' for a 403 read-only refusal. That's wrong for a refusal. src/public/app.js is row 76's file, so row 76 fixes the message: a refusal says it was refused, and only outcome-unknown says delivery may be unknown. | | 77 | Console service hardening: row 75 review follow-ups N1-N5 | rocko; reviewers filbert | #1571 | queued | 75 done | filbert approves on the issue naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_console-service-followups.md` § Console service hardening | After the cutover (2026-10-12T21:30Z). Source: Filbert comment 27430 on #1569. | +| 78 | Claude pin default-path tests: row 72 review follow-up N1 | rocko; reviewers filbert | #1572 | queued | 73 done | filbert approves on the issue naming the candidate manifest; cli node suite and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_claude-pin-and-coder-grant.md` § Claude pin default-path tests | — | diff --git a/docs/plans/queue.json b/docs/plans/queue.json index 33ab111c9..7b27af77d 100644 --- a/docs/plans/queue.json +++ b/docs/plans/queue.json @@ -1,7 +1,7 @@ { "version": 1, "canonicalRoot": "/mnt/storage/src/mosaic-stack", - "revision": 530, + "revision": 536, "rows": [ { "id": 1, @@ -4417,11 +4417,11 @@ "seat": "darkwing", "op": "darkwing-58-start" }, - "note": null, + "note": "Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. Both approvals are in (27426, 27461), but 58 shares packages/webui/README.md with row 74, which is on the cutover path. After 74 lands, Darkwing re-rounds 58 on the new HEAD (only the README should move; reviewers re-approve the delta), then Sage gates and lands it. Reviewers' three test-gap notes go to one follow-up row.", "blockedReason": null, "createdAt": "2026-10-10T16:36:17.488Z", - "updatedAt": "2026-10-11T23:12:36.601Z", - "updatedBy": "dewey" + "updatedAt": "2026-10-11T23:17:24.771Z", + "updatedBy": "sage" }, { "id": 59, @@ -4587,11 +4587,11 @@ "seat": "filbert", "op": "filbert-60-start-1" }, - "note": "Landing order (Sage, 2026-10-11): row 74 lands first, since it's on the cutover path. Rows 74 and 60 both touch serve.mjs (BUS_VERBS) and README.md, so if 60 is approved before 74 lands, 60 waits, then re-rounds on the new base. That round should be quick, since Dewey reports the patches compose.", + "note": "Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. 60 shares broker.mjs and webui tests/bus.test.mjs with 58 and serve.mjs and the README with 74, so it re-rounds once, after both land.", "blockedReason": null, "createdAt": "2026-10-10T16:36:18.951Z", - "updatedAt": "2026-10-11T22:42:31.051Z", - "updatedBy": "dewey" + "updatedAt": "2026-10-11T23:17:26.336Z", + "updatedBy": "sage" }, { "id": 61, @@ -5298,7 +5298,7 @@ "closes": [ 1566 ], - "state": "in-review", + "state": "done", "previousState": null, "required": false, "requiredSince": null, @@ -5376,15 +5376,12 @@ } ] }, - "claim": { - "seat": "rocko", - "op": "rocko-72-start-1" - }, + "claim": null, "note": null, "blockedReason": null, "createdAt": "2026-10-11T21:47:53.131Z", - "updatedAt": "2026-10-11T23:11:59.291Z", - "updatedBy": "filbert" + "updatedAt": "2026-10-11T23:16:56.434Z", + "updatedBy": "sage" }, { "id": 73, @@ -5396,7 +5393,7 @@ "closes": [ 1567 ], - "state": "in-progress", + "state": "in-review", "previousState": null, "required": false, "requiredSince": null, @@ -5411,7 +5408,41 @@ "reviewers": [ "dewey" ], - "review": null, + "review": { + "rounds": [ + { + "n": 1, + "op": "rocko-73-review-1", + "by": "rocko", + "at": "2026-10-11T23:17:17.755Z", + "issue": 1567, + "candidate": { + "kind": "manifest", + "digest": "bf4e5ed646301d06617004770aaaf9599e743f1e00d226f8a9e0c2450f12710d", + "text": "e3300acd1f85f7c7c495dc2228ec904c0af992f9ea09693adcf3e5b1121d5f83 agents/rocko/work/queue-73/mutants.sh\n6c451be1461b903e2072af0a592b1be33b2e4cf9245e2fa8609ab678d7f39848 packages/business/tests/resolve.test.mjs\n17fbdd672e9daca32401b96d8cad0893aaa2ef14db9f3a6f4834e9f8b8f1b50c packages/business/tests/role.test.mjs\nbca2e886b021831ada150dfa76be247dbe489072fb249d1a5b63e98582077853 packages/bus/tests/broker.test.mjs\n9cd45207694693734207ded38b65c99e59787db74e562668b88a499c4454ed0f packages/harness/tests/tools.test.mjs\n5df33892007143de7537ff97059762372c78041ad3bd8be456758d3c51ec984b packages/tasks/tests/verbs.test.mjs\n2d1c06d38617d1affd58034f5a5441fe1413b7bc2a2333fedda99c6e26baf2f0 packages/tasks/tests/world.mjs\n5b00c49dc1c998156798e0fd9fbe1e1c7e2bb62373dc9f80efaa60902b66b228 roles/coder.json\n" + }, + "request": "comment", + "attempts": [ + { + "op": "rocko-73-review-1", + "by": "rocko", + "at": "2026-10-11T23:17:17.755Z", + "state": "failed", + "comment": null, + "transport": { + "outcome": "failed", + "status": null, + "comment": null, + "detail": "pre-send: the credential or account check failed" + }, + "resolutions": [] + } + ], + "duplicateRisk": false, + "receipts": [] + } + ] + }, "claim": { "seat": "rocko", "op": "rocko-73-start" @@ -5419,7 +5450,7 @@ "note": null, "blockedReason": null, "createdAt": "2026-10-11T21:47:55.159Z", - "updatedAt": "2026-10-11T23:05:50.481Z", + "updatedAt": "2026-10-11T23:17:19.368Z", "updatedBy": "rocko" }, { @@ -5668,6 +5699,44 @@ "createdAt": "2026-10-11T22:46:07.285Z", "updatedAt": "2026-10-11T22:46:07.285Z", "updatedBy": "sage" + }, + { + "id": 78, + "piece": "Claude pin default-path tests: row 72 review follow-up N1", + "owner": "rocko", + "issues": [ + 1572 + ], + "closes": [ + 1572 + ], + "state": "queued", + "previousState": null, + "required": false, + "requiredSince": null, + "gate": "filbert approves on the issue naming the candidate manifest; cli node suite and every scripts/test-*.sh green on Sage's gate rerun", + "gateOwner": "sage", + "brief": { + "path": "docs/plans/2026-10-11_claude-pin-and-coder-grant.md", + "anchor": "Claude pin default-path tests", + "blob": "2f6a9b19b69bdf81d9b0c22a239edcb8e4298621" + }, + "after": [ + { + "id": 73, + "when": "done" + } + ], + "reviewers": [ + "filbert" + ], + "review": null, + "claim": null, + "note": null, + "blockedReason": null, + "createdAt": "2026-10-11T23:13:47.280Z", + "updatedAt": "2026-10-11T23:13:47.280Z", + "updatedBy": "sage" } ], "log": [ @@ -20500,6 +20569,163 @@ "receipt": "ok dewey-r58-verdict-1 rev 530 row 58 round 1 approve by dewey (comment 27461)" }, "viewSha": "b6de7a46bfe7c7a72f3f2a0001d518eb684f874caf0b1373a7a8b15d60048ce8" + }, + { + "rev": 531, + "op": "sage-add-pin-default-tests", + "verb": "add", + "args": { + "piece": "Claude pin default-path tests: row 72 review follow-up N1", + "gate": "filbert approves on the issue naming the candidate manifest; cli node suite and every scripts/test-*.sh green on Sage's gate rerun", + "brief": "docs/plans/2026-10-11_claude-pin-and-coder-grant.md#Claude pin default-path tests", + "issues": [ + 1572 + ], + "note": null, + "owner": "rocko", + "gateOwner": "sage", + "after": [ + { + "id": 73, + "when": "done" + } + ], + "reviewers": [ + "filbert" + ], + "required": null + }, + "by": "sage", + "at": "2026-10-11T23:13:47.280Z", + "semantics": 2, + "result": { + "row": 78, + "from": null, + "to": "queued", + "brief": { + "path": "docs/plans/2026-10-11_claude-pin-and-coder-grant.md", + "anchor": "Claude pin default-path tests", + "blob": "2f6a9b19b69bdf81d9b0c22a239edcb8e4298621" + }, + "receipt": "ok sage-add-pin-default-tests rev 531 row 78 none→queued" + }, + "viewSha": "f21539887a3f7bd5ded102a9518e85d6e8ecc53643226a5171f71426715cfee6" + }, + { + "rev": 532, + "op": "sage-72-done", + "verb": "move", + "args": { + "id": 72, + "to": "done", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-11T23:16:56.434Z", + "semantics": 2, + "result": { + "row": 72, + "from": "in-review", + "to": "done", + "round": 1, + "issue": null, + "candidate": null, + "receipt": "ok sage-72-done rev 532 row 72 in-review→done round 1" + }, + "viewSha": "644a6eabb81f9ccb3ccffaed97ff82cdfe790a5d99eab358e22edec53672a495" + }, + { + "rev": 533, + "op": "rocko-73-review-1", + "verb": "move", + "args": { + "id": 73, + "to": "in-review", + "reason": null, + "candidate": "agents/rocko/work/queue-73/candidate-manifest.sha256", + "evidence": null, + "issue": 1567 + }, + "by": "rocko", + "at": "2026-10-11T23:17:17.755Z", + "semantics": 2, + "result": { + "row": 73, + "from": "in-progress", + "to": "in-review", + "round": 1, + "issue": 1567, + "candidate": { + "kind": "manifest", + "digest": "bf4e5ed646301d06617004770aaaf9599e743f1e00d226f8a9e0c2450f12710d", + "text": "e3300acd1f85f7c7c495dc2228ec904c0af992f9ea09693adcf3e5b1121d5f83 agents/rocko/work/queue-73/mutants.sh\n6c451be1461b903e2072af0a592b1be33b2e4cf9245e2fa8609ab678d7f39848 packages/business/tests/resolve.test.mjs\n17fbdd672e9daca32401b96d8cad0893aaa2ef14db9f3a6f4834e9f8b8f1b50c packages/business/tests/role.test.mjs\nbca2e886b021831ada150dfa76be247dbe489072fb249d1a5b63e98582077853 packages/bus/tests/broker.test.mjs\n9cd45207694693734207ded38b65c99e59787db74e562668b88a499c4454ed0f packages/harness/tests/tools.test.mjs\n5df33892007143de7537ff97059762372c78041ad3bd8be456758d3c51ec984b packages/tasks/tests/verbs.test.mjs\n2d1c06d38617d1affd58034f5a5441fe1413b7bc2a2333fedda99c6e26baf2f0 packages/tasks/tests/world.mjs\n5b00c49dc1c998156798e0fd9fbe1e1c7e2bb62373dc9f80efaa60902b66b228 roles/coder.json\n" + }, + "receipt": "ok rocko-73-review-1 rev 533 row 73 in-progress→in-review round 1 on #1567; request rocko-73-review-1 requesting" + }, + "viewSha": "90dc33b09afccb9d3cd5cd8620862449308a75d674531fe6cd0d499f9b0d5158" + }, + { + "rev": 534, + "op": "rocko-73-review-1.outcome", + "verb": "review-outcome", + "args": { + "id": 73, + "attempt": "rocko-73-review-1", + "outcome": "failed", + "status": null, + "comment": null, + "detail": "pre-send: the credential or account check failed" + }, + "by": "rocko", + "at": "2026-10-11T23:17:19.368Z", + "semantics": 2, + "result": { + "row": 73, + "round": 1, + "attempt": "rocko-73-review-1", + "state": "failed", + "receipt": "ok rocko-73-review-1.outcome rev 534 row 73 round 1 request rocko-73-review-1 failed" + }, + "viewSha": "3c9c0e19285ac0bde84ec961efe20159705e582083d8d2699122d29fbce01e1b" + }, + { + "rev": 535, + "op": "sage-58-order", + "verb": "note", + "args": { + "id": 58, + "text": "Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. Both approvals are in (27426, 27461), but 58 shares packages/webui/README.md with row 74, which is on the cutover path. After 74 lands, Darkwing re-rounds 58 on the new HEAD (only the README should move; reviewers re-approve the delta), then Sage gates and lands it. Reviewers' three test-gap notes go to one follow-up row." + }, + "by": "sage", + "at": "2026-10-11T23:17:24.771Z", + "semantics": 2, + "result": { + "row": 58, + "field": "note", + "receipt": "ok sage-58-order rev 535 row 58 note" + }, + "viewSha": "d209b0ab6ecea7b470d313b73ac47b18987f71ca0c0c4f5165b7f456bc62a24b" + }, + { + "rev": 536, + "op": "sage-60-order", + "verb": "note", + "args": { + "id": 60, + "text": "Landing order (Sage, 2026-10-11T23:20Z): 74, then 58, then 60. 60 shares broker.mjs and webui tests/bus.test.mjs with 58 and serve.mjs and the README with 74, so it re-rounds once, after both land." + }, + "by": "sage", + "at": "2026-10-11T23:17:26.336Z", + "semantics": 2, + "result": { + "row": 60, + "field": "note", + "receipt": "ok sage-60-order rev 536 row 60 note" + }, + "viewSha": "1727669eea034b7ef1ed54188d94caecc0cf05a55eaacf2fc048789d50126f77" } ] }