diff --git a/docs/plans/QUEUE.md b/docs/plans/QUEUE.md index 5e366a0d6..b972d9eaa 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 635 by `queue render`. Do not edit between the markers; change the queue with `scripts/mosaic queue`. +Generated from `docs/plans/queue.json` revision 664 by `queue render`. Do not edit between the markers; change the queue with `scripts/mosaic queue`. | # | Piece | Owner | Issues | State | After | Gate | Brief | Note | |---|---|---|---|---|---|---|---|---| @@ -85,7 +85,7 @@ Generated from `docs/plans/queue.json` revision 635 by `queue render`. Do not ed | 46 | Conversation cohort: K1, K3 and K10 fail on the scope fixtures | darkwing; reviewers dewey | #1528 | done | — | dewey approves on #1528; conversation 152/152 and K1, K3, K10 green 3 times in isolation on Sage's rerun (sage) | `docs/plans/2026-10-09_s4-follow-up-and-cohort.md` § Conversation cohort: K1, K3 and K10 fail on the scope fixtures | lead decision 72; row 40 gates on this suite | | 47 | S5 follow-up: stacked-hold flows test and conversation test cleanup | dewey; reviewers darkwing, filbert | #1533 | done | 40 done | darkwing and filbert approve on #1533; conversation, webui and every test-*.sh green on Sage's gate rerun; mutant Mr killed (sage) | `docs/plans/2026-10-10_s5-follow-up-and-hygiene.md` § S5 follow-up: stacked-hold flows test and conversation test cleanup | first follow-up after row 40 (08b428ec); Dewey's draft ~/dewey-scratch/s5/mr-test.patch | | 48 | Test hygiene: commit.test exit wait and test-task Docker skip | dewey; reviewers darkwing, filbert | #1534 | done | — | darkwing and filbert approve on #1534; queue node suite and every test-*.sh green, test-task shown with and without Docker (sage) | `docs/plans/2026-10-10_s5-follow-up-and-hygiene.md` § Test hygiene: commit.test exit wait and test-task Docker skip | Filbert's row 41 round 1 notes | -| 49 | Bus comment cursor across restarts | sage; reviewers darkwing, filbert | #1535 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 41 done | darkwing and filbert approve on #1535; bus, tasks and every test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_s5-follow-up-and-hygiene.md` § Bus comment cursor across restarts | found in Q14 cutover planning; after S6 | +| 49 | Bus comment cursor across restarts | sage; reviewers darkwing, filbert | #1535 | briefed | 41 done | darkwing and filbert approve on #1535; bus, tasks and every test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-10_s5-follow-up-and-hygiene.md` § Bus comment cursor across restarts | found in Q14 cutover planning; after S6. Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | | 50 | Cohort scope release after a force stop | dewey; reviewers darkwing, filbert | #1536 | done | 47 done | darkwing and filbert approve on #1536; conversation, webui and every test-*.sh green on Sage's gate rerun; no mosaic-chat scope left after the suites (sage) | `docs/plans/2026-10-10_cohort-scope-release.md` § Cohort scope release after a force stop | Dewey's row 47 finding, comment 27037 | | 51 | Cohort release follow-ups: engine exit, crash window and close | dewey; reviewers darkwing, filbert | #1537 | done | 50 done | darkwing and filbert approve on #1537; conversation, webui and every test-*.sh green on Sage's gate rerun; no mosaic-chat scope left after the suites (sage) | `docs/plans/2026-10-10_cohort-release-follow-ups.md` § Cohort release follow-ups: engine exit, crash window and close | Row 50 deviation and review follow-ups, comment 27054 | | 52 | CHAT-01 engine-exit stop and release at engine exit | dewey; reviewers darkwing, filbert | #1538 | done | 51 done | darkwing and filbert approve on #1538 naming the four CHAT-01 hashes; chat-01 check.mjs passes; conversation, webui and every test-*.sh green on Sage's gate rerun; no mosaic-chat scope left after the suites (sage) | `docs/plans/2026-10-10_cohort-release-follow-ups.md` § CHAT-01 engine-exit stop and release at engine exit | Decision 79, split from row 51 | @@ -97,27 +97,27 @@ Generated from `docs/plans/queue.json` revision 635 by `queue render`. Do not ed | 58 | Bus read: task priority and requirement | darkwing; reviewers dewey, filbert | #1547 | done | 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 | 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: agent state per role | Drifted: rows 74 (351464ce) and 58 (aaf87213) landed on its manifest paths since base f2f2861b (Darkwing, 2026-10-12). Re-round after row 60 lands, on row 60's landing commit: rebase, digest check, merged hunks in broker.mjs and the bus README. Then Dewey and Darkwing re-approve, then Sage's gate. Lead call: 60 first, 59 second. | | 60 | Bus read: credential status on the broker | filbert; reviewers darkwing, dewey | #1549 | 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: credential status on the broker | Re-round after row 58 (aaf87213): digest check, the serve.mjs merge with row 74's preview checks, and Filbert's Q2, the missing decisions README row, folded in (Sage, on Darkwing's 27531 recommendation). Dewey's README N1 too. | -| 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 | — | +| 61 | Task field-writer table as data | darkwing; reviewers dewey, filbert | #1550 | briefed | 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 | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | | 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) | — | -| 64 | Managed sessions get their role's skills on both harnesses | sage; reviewers darkwing, filbert | #1557 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 49 done | darkwing and filbert approve on #1557 naming the candidate manifest; business, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the role's skills (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Managed sessions get their role's skills on both harnesses | — | -| 65 | Model routing table: sessions resolve harness, model and thinking from one table | sage; reviewers darkwing, dewey | #1558 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 64 done | darkwing and dewey approve on #1558 naming the candidate manifest; business, harness, seat, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session shows the entry used, family counted and thinking passed (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Model routing table: sessions resolve harness, model and thinking from one table | — | -| 66 | Managed sessions run the unslop check on both harnesses | sage; reviewers dewey, filbert | #1559 | blocked (from briefed): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 65 done | dewey and filbert approve on #1559 naming the candidate manifest; unslop, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the notice, the correction and the counts (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Managed sessions run the unslop check on both harnesses | — | +| 63 | Multi-project verbs: task verbs across the tree | darkwing; reviewers dewey, filbert | #1556 | briefed | 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) | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 64 | Managed sessions get their role's skills on both harnesses | sage; reviewers darkwing, filbert | #1557 | briefed | 49 done | darkwing and filbert approve on #1557 naming the candidate manifest; business, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the role's skills (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Managed sessions get their role's skills on both harnesses | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 65 | Model routing table: sessions resolve harness, model and thinking from one table | sage; reviewers darkwing, dewey | #1558 | briefed | 64 done | darkwing and dewey approve on #1558 naming the candidate manifest; business, harness, seat, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session shows the entry used, family counted and thinking passed (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Model routing table: sessions resolve harness, model and thinking from one table | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 66 | Managed sessions run the unslop check on both harnesses | sage; reviewers dewey, filbert | #1559 | briefed | 65 done | dewey and filbert approve on #1559 naming the candidate manifest; unslop, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the notice, the correction and the counts (sage) | `docs/plans/2026-10-11_managed-session-config.md` § Managed sessions run the unslop check on both harnesses | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | | 67 | Decisions read follow-up: seen-then-resolve, list-before-503 and full-row tests | filbert; reviewers darkwing, dewey | #1560 | done | — | darkwing and dewey approve on #1560 naming the candidate manifest; bus, webui and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_decisions-read-follow-up.md` § Decisions read follow-up: seen-then-resolve, list-before-503 and full-row tests | — | | 68 | Bus host runs an explicit Claude Code binary | sage; reviewers dewey, filbert | #1561 | done | — | Filbert and Dewey approve; cli, seat, harness suites and every scripts/test-*.sh green on Sage's gate rerun; unit reinstalled and opus probe through MOSAIC_CLAUDE_BIN (sage) | `docs/plans/2026-10-11_bus-claude-binary.md` § Bus host runs an explicit Claude Code binary | — | -| 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 | — | +| 69 | Terminal app follow-up: narrow-terminal guard test, hidden-box way out and width tests | darkwing; reviewers dewey, filbert | #1562 | briefed | 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 | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 70 | Docs say mosaic on PATH is the estate CLI; after Q81 it can be this one | sage; reviewers filbert | #1564 | briefed | — | 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 | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 71 | Tree read follow-up: confirm-read tests and the fake's view 404 | darkwing; reviewers dewey, filbert | #1565 | briefed | — | 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 | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | | 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 | done | — | 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 | done | — | 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 | done | 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 | Fold in row 74 README wording notes: Filbert N1 (27485), 'first request' should read 'first signed-in request' since a Host-rewriting proxy's unsigned requests still take the loopback path; Darkwing (27486), the tunnel sentence should say anything reaching a tunnel's local end can send a loopback Host without HEADER, so bind it to loopback. Add the README pointer to scripts/webui-service.sh. | -| 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. | +| 77 | Console pinned copy, update step and service hardening (row 75 N1-N5, Vikunja 146 147) | rocko; reviewers darkwing, filbert | #1571 | briefed | 75 done | darkwing and filbert approve on 1571 naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun; Mos notified before landing (decision 109) (sage) | `docs/plans/2026-10-12_console-pinned-copy.md` § Console pinned copy, update step and service hardening | Brief replaced by lead decision 112. Mos does the one reinstall after landing. Vikunja 146, 147, 155. | | 78 | Claude pin default-path tests: row 72 review follow-up N1 | rocko; reviewers filbert | #1572 | done | 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 | — | | 79 | Coder grant stale text: row 73 packet follow-up | rocko; reviewers dewey | #1573 | done | 73 done | dewey approves on the issue naming the candidate manifest; tasks and business 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 grant stale text | Rev for Dewey's row 73 N1 (comment 27506): brief amended. Row 79 also pins the coder's untyped list in packages/harness/tests/tools.test.mjs with one deepEqual, records Dewey's mutants.sh header correction in the packet, and adds the harness suite to the gate. | -| 80 | Bus: list messages stranded by a holder change (row 59 review Note B) | darkwing; reviewers filbert | #1574 | blocked (from queued): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94) | 59 done | filbert approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_bus-stranded-delivery.md` § Show messages stranded by a holder change | — | -| 81 | Console shows the reply to a web send | dewey; reviewers darkwing | #1575 | blocked (from queued): deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94); also after row 59 (Darkwing), which edits broker.mjs reads (lead decision 97) | 76 done | darkwing approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_console-reply-view.md` § Show replies to a message without receiving them | — | +| 80 | Bus: list messages stranded by a holder change (row 59 review Note B) | darkwing; reviewers filbert | #1574 | queued | 59 done | filbert approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_bus-stranded-delivery.md` § Show messages stranded by a holder change | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | +| 81 | Console shows the reply to a web send | dewey; reviewers darkwing | #1575 | queued | 76 done | darkwing approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-11_console-reply-view.md` § Show replies to a message without receiving them | Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091. | | 82 | Runs list survives a damaged run record | rocko; reviewers filbert | #1551 | done | — | filbert approves on the issue naming the candidate manifest; runs node suite and every scripts/test-*.sh green on Sage's gate rerun (sage) | `docs/plans/2026-10-12_runs-list-damaged-record.md` § Runs list survives a damaged run record | — | | 83 | Console service: the unit script takes --send | dewey; reviewers darkwing, filbert | #1576 | done | — | darkwing and filbert each approve 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-12_console-service-send.md` § The unit script takes --send | — | diff --git a/docs/plans/queue.json b/docs/plans/queue.json index 0a916bc85..ccc084b4e 100644 --- a/docs/plans/queue.json +++ b/docs/plans/queue.json @@ -1,7 +1,7 @@ { "version": 1, "canonicalRoot": "/mnt/storage/src/mosaic-stack", - "revision": 635, + "revision": 664, "rows": [ { "id": 1, @@ -3218,8 +3218,8 @@ "closes": [ 1535 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "darkwing and filbert approve on #1535; bus, tasks and every test-*.sh green on Sage's gate rerun", @@ -3241,10 +3241,10 @@ ], "review": null, "claim": null, - "note": "found in Q14 cutover planning; after S6", - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "found in Q14 cutover planning; after S6. Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-10T03:10:07.235Z", - "updatedAt": "2026-10-11T22:17:56.110Z", + "updatedAt": "2026-10-12T18:09:36.120Z", "updatedBy": "sage" }, { @@ -4754,8 +4754,8 @@ "closes": [ 1550 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "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", @@ -4777,10 +4777,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-10T16:36:19.686Z", - "updatedAt": "2026-10-11T22:17:57.486Z", + "updatedAt": "2026-10-12T18:08:54.738Z", "updatedBy": "sage" }, { @@ -4974,8 +4974,8 @@ "closes": [ 1556 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "dewey and filbert approve on the issue naming the candidate manifest; tasks, harness and every scripts/test-*.sh green on Sage's gate rerun", @@ -4997,10 +4997,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T18:13:06.911Z", - "updatedAt": "2026-10-11T22:17:58.888Z", + "updatedAt": "2026-10-12T18:08:57.866Z", "updatedBy": "sage" }, { @@ -5013,8 +5013,8 @@ "closes": [ 1557 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "darkwing and filbert approve on #1557 naming the candidate manifest; business, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the role's skills", @@ -5036,10 +5036,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T19:53:24.315Z", - "updatedAt": "2026-10-11T22:18:00.267Z", + "updatedAt": "2026-10-12T18:09:01.578Z", "updatedBy": "sage" }, { @@ -5052,8 +5052,8 @@ "closes": [ 1558 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "darkwing and dewey approve on #1558 naming the candidate manifest; business, harness, seat, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session shows the entry used, family counted and thinking passed", @@ -5075,10 +5075,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T19:53:25.833Z", - "updatedAt": "2026-10-11T22:18:01.799Z", + "updatedAt": "2026-10-12T18:09:04.917Z", "updatedBy": "sage" }, { @@ -5091,8 +5091,8 @@ "closes": [ 1559 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "dewey and filbert approve on #1559 naming the candidate manifest; unslop, harness, cli and every test-*.sh green on Sage's gate rerun; Sage's landing session on each harness shows the notice, the correction and the counts", @@ -5114,10 +5114,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T19:53:27.579Z", - "updatedAt": "2026-10-11T22:18:03.189Z", + "updatedAt": "2026-10-12T18:09:08.539Z", "updatedBy": "sage" }, { @@ -5396,8 +5396,8 @@ "closes": [ 1562 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "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", @@ -5419,10 +5419,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T21:02:55.478Z", - "updatedAt": "2026-10-11T22:18:04.589Z", + "updatedAt": "2026-10-12T18:09:11.643Z", "updatedBy": "sage" }, { @@ -5435,8 +5435,8 @@ "closes": [ 1564 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "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", @@ -5452,10 +5452,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T21:20:50.391Z", - "updatedAt": "2026-10-11T22:18:05.949Z", + "updatedAt": "2026-10-12T18:09:14.648Z", "updatedBy": "sage" }, { @@ -5468,8 +5468,8 @@ "closes": [ 1565 ], - "state": "blocked", - "previousState": "briefed", + "state": "briefed", + "previousState": null, "required": false, "requiredSince": null, "gate": "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", @@ -5486,10 +5486,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T21:30:24.467Z", - "updatedAt": "2026-10-11T22:18:07.230Z", + "updatedAt": "2026-10-12T18:09:17.927Z", "updatedBy": "sage" }, { @@ -6032,7 +6032,7 @@ }, { "id": 77, - "piece": "Console service hardening: row 75 review follow-ups N1-N5", + "piece": "Console pinned copy, update step and service hardening (row 75 N1-N5, Vikunja 146 147)", "owner": "rocko", "issues": [ 1571 @@ -6040,16 +6040,16 @@ "closes": [ 1571 ], - "state": "queued", + "state": "briefed", "previousState": null, "required": false, "requiredSince": null, - "gate": "filbert approves on the issue naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun", + "gate": "darkwing and filbert approve on 1571 naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun; Mos notified before landing (decision 109)", "gateOwner": "sage", "brief": { - "path": "docs/plans/2026-10-11_console-service-followups.md", - "anchor": "Console service hardening", - "blob": "93cc575187b7815d662828164935808698a32a4b" + "path": "docs/plans/2026-10-12_console-pinned-copy.md", + "anchor": "Console pinned copy, update step and service hardening", + "blob": "e17c8be7ca6ad5c1a083f267d9f37c5d0b848722" }, "after": [ { @@ -6058,14 +6058,15 @@ } ], "reviewers": [ + "darkwing", "filbert" ], "review": null, "claim": null, - "note": "After the cutover (2026-10-12T21:30Z). Source: Filbert comment 27430 on #1569.", + "note": "Brief replaced by lead decision 112. Mos does the one reinstall after landing. Vikunja 146, 147, 155.", "blockedReason": null, "createdAt": "2026-10-11T22:46:07.285Z", - "updatedAt": "2026-10-11T22:46:07.285Z", + "updatedAt": "2026-10-12T18:08:00.716Z", "updatedBy": "sage" }, { @@ -6268,8 +6269,8 @@ "closes": [ 1574 ], - "state": "blocked", - "previousState": "queued", + "state": "queued", + "previousState": null, "required": false, "requiredSince": null, "gate": "filbert approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun", @@ -6290,10 +6291,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T23:39:02.508Z", - "updatedAt": "2026-10-11T23:39:05.627Z", + "updatedAt": "2026-10-12T18:09:20.943Z", "updatedBy": "sage" }, { @@ -6306,8 +6307,8 @@ "closes": [ 1575 ], - "state": "blocked", - "previousState": "queued", + "state": "queued", + "previousState": null, "required": false, "requiredSince": null, "gate": "darkwing approves on the issue naming the candidate manifest; bus, webui, control-board and cli node suites and every scripts/test-*.sh green on Sage's gate rerun", @@ -6328,10 +6329,10 @@ ], "review": null, "claim": null, - "note": null, - "blockedReason": "deferred until after the mosaic.woltje.com dogfood cutover (lead decision 94); also after row 59 (Darkwing), which edits broker.mjs reads (lead decision 97)", + "note": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091.", + "blockedReason": null, "createdAt": "2026-10-11T23:52:30.693Z", - "updatedAt": "2026-10-11T23:53:35.907Z", + "updatedAt": "2026-10-12T18:09:24.037Z", "updatedBy": "sage" }, { @@ -24009,6 +24010,656 @@ "receipt": "ok sage-row83-done-1a8ba587 rev 635 row 83 in-review→done round 1" }, "viewSha": "180c3c8e12ead401f5b8afaded5662f0e6c528d23db6bf1567c64fcc70228af1" + }, + { + "rev": 636, + "op": "sage-r77-note-1012", + "verb": "note", + "args": { + "id": 77, + "text": "Brief replaced by lead decision 112. Mos does the one reinstall after landing. Vikunja 146, 147, 155." + }, + "by": "sage", + "at": "2026-10-12T18:07:15.155Z", + "semantics": 2, + "result": { + "row": 77, + "field": "note", + "receipt": "ok sage-r77-note-1012 rev 636 row 77 note" + }, + "viewSha": "8de121ff56dc5566569a013f2c9f2c03dfd04c2cba2ee20af9d981fb61bc001d" + }, + { + "rev": 637, + "op": "sage-r77-brief-1012", + "verb": "set", + "args": { + "id": 77, + "field": "brief", + "value": "docs/plans/2026-10-12_console-pinned-copy.md#Console pinned copy, update step and service hardening", + "reason": null + }, + "by": "sage", + "at": "2026-10-12T18:07:21.573Z", + "semantics": 2, + "result": { + "row": 77, + "field": "brief", + "from": { + "path": "docs/plans/2026-10-11_console-service-followups.md", + "anchor": "Console service hardening", + "blob": "93cc575187b7815d662828164935808698a32a4b" + }, + "to": { + "path": "docs/plans/2026-10-12_console-pinned-copy.md", + "anchor": "Console pinned copy, update step and service hardening", + "blob": "e17c8be7ca6ad5c1a083f267d9f37c5d0b848722" + }, + "receipt": "ok sage-r77-brief-1012 rev 637 row 77 brief: docs/plans/2026-10-11_console-service-followups.md § Console service hardening @93cc575187b7→docs/plans/2026-10-12_console-pinned-copy.md § Console pinned copy, update step and service hardening @e17c8be7ca6a" + }, + "viewSha": "a6315e0e3e9c5afd8927336c36d0abd5cec65baaaf126933955f85acf375a889" + }, + { + "rev": 638, + "op": "sage-r77-piece-1012", + "verb": "set", + "args": { + "id": 77, + "field": "piece", + "value": "Console pinned copy, update step and service hardening (row 75 N1-N5, Vikunja 146 147)", + "reason": null + }, + "by": "sage", + "at": "2026-10-12T18:07:24.352Z", + "semantics": 2, + "result": { + "row": 77, + "field": "piece", + "from": "Console service hardening: row 75 review follow-ups N1-N5", + "to": "Console pinned copy, update step and service hardening (row 75 N1-N5, Vikunja 146 147)", + "receipt": "ok sage-r77-piece-1012 rev 638 row 77 piece: Console service hardening: row 75 review follow-ups N1-N5→Console pinned copy, update step and service hardening (row 75 N1-N5, Vikunja 146 147)" + }, + "viewSha": "792ffab19de7cce080f996ddab6061f94ec8975bac80f3e0cd2be37f38c7999a" + }, + { + "rev": 639, + "op": "sage-r77-reviewers-1012", + "verb": "set", + "args": { + "id": 77, + "field": "reviewers", + "value": [ + "darkwing", + "filbert" + ], + "reason": null + }, + "by": "sage", + "at": "2026-10-12T18:07:27.346Z", + "semantics": 2, + "result": { + "row": 77, + "field": "reviewers", + "from": [ + "filbert" + ], + "to": [ + "darkwing", + "filbert" + ], + "receipt": "ok sage-r77-reviewers-1012 rev 639 row 77 reviewers: filbert→darkwing, filbert" + }, + "viewSha": "9dfe0f1638241f06d175c2a8e7cb2ff3e59c173c1930521d2b6a00b4b733bb2e" + }, + { + "rev": 640, + "op": "sage-r77-gate-1012", + "verb": "set", + "args": { + "id": 77, + "field": "gate", + "value": "darkwing and filbert approve on 1571 naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun; Mos notified before landing (decision 109)", + "reason": null + }, + "by": "sage", + "at": "2026-10-12T18:07:30.024Z", + "semantics": 2, + "result": { + "row": 77, + "field": "gate", + "from": "filbert approves on the issue naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun", + "to": "darkwing and filbert approve on 1571 naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun; Mos notified before landing (decision 109)", + "receipt": "ok sage-r77-gate-1012 rev 640 row 77 gate: filbert approves on the issue naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun→darkwing and filbert approve on 1571 naming the candidate manifest; webui node suite and every scripts/test-*.sh green on Sage's gate rerun; Mos notified before landing (decision 109)" + }, + "viewSha": "12bf8fc03f964c258b891fe4a664f98bce34b8a6e2f7c14f837b7f11d11d2a46" + }, + { + "rev": 641, + "op": "sage-r77-briefed-1012", + "verb": "move", + "args": { + "id": 77, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:00.716Z", + "semantics": 2, + "result": { + "row": 77, + "from": "queued", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r77-briefed-1012 rev 641 row 77 queued→briefed" + }, + "viewSha": "5d85c0da532708a44f06f67d5032d7548a042588750af8df05b0d66120be0b96" + }, + { + "rev": 642, + "op": "sage-r49-unhold-1012", + "verb": "move", + "args": { + "id": 49, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:03.507Z", + "semantics": 2, + "result": { + "row": 49, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r49-unhold-1012 rev 642 row 49 blocked→briefed" + }, + "viewSha": "3c1eb4d321a6c9ffbb21b23b141f5ddbb6a863c6ae450ab0121a21203af43805" + }, + { + "rev": 643, + "op": "sage-r61-unhold-1012", + "verb": "move", + "args": { + "id": 61, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:07.169Z", + "semantics": 2, + "result": { + "row": 61, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r61-unhold-1012 rev 643 row 61 blocked→briefed" + }, + "viewSha": "b49e24e991d7e0b9a7084871efc6bc5b7481abe0ee5622169315283fba051e8b" + }, + { + "rev": 644, + "op": "sage-r63-unhold-1012", + "verb": "move", + "args": { + "id": 63, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:11.069Z", + "semantics": 2, + "result": { + "row": 63, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r63-unhold-1012 rev 644 row 63 blocked→briefed" + }, + "viewSha": "1b249fd97e7d0baf612f02e60043be3676d3ff655141b4a6aca69aed3c500551" + }, + { + "rev": 645, + "op": "sage-r64-unhold-1012", + "verb": "move", + "args": { + "id": 64, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:14.321Z", + "semantics": 2, + "result": { + "row": 64, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r64-unhold-1012 rev 645 row 64 blocked→briefed" + }, + "viewSha": "248cbc8e212a762c4cedc1ef2601bd5cd143804e741f31811560a8c218d06b04" + }, + { + "rev": 646, + "op": "sage-r65-unhold-1012", + "verb": "move", + "args": { + "id": 65, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:18.272Z", + "semantics": 2, + "result": { + "row": 65, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r65-unhold-1012 rev 646 row 65 blocked→briefed" + }, + "viewSha": "805ecc44d77f37bf5a385eae36c50aeead5eac52e6288b8fd8dc0518b24ef31b" + }, + { + "rev": 647, + "op": "sage-r66-unhold-1012", + "verb": "move", + "args": { + "id": 66, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:22.945Z", + "semantics": 2, + "result": { + "row": 66, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r66-unhold-1012 rev 647 row 66 blocked→briefed" + }, + "viewSha": "dfc18a4f6e78d0e229968cacffbf49cc127a7ee377dd099f8ea495c94d5e11ad" + }, + { + "rev": 648, + "op": "sage-r69-unhold-1012", + "verb": "move", + "args": { + "id": 69, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:28.995Z", + "semantics": 2, + "result": { + "row": 69, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r69-unhold-1012 rev 648 row 69 blocked→briefed" + }, + "viewSha": "b3deb31e080c857908090d5e9b0cb78d23c02087cd4167c966c78011197953cd" + }, + { + "rev": 649, + "op": "sage-r70-unhold-1012", + "verb": "move", + "args": { + "id": 70, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:34.047Z", + "semantics": 2, + "result": { + "row": 70, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r70-unhold-1012 rev 649 row 70 blocked→briefed" + }, + "viewSha": "e226daae46e43f653230aff813c7d3c3fdfceca06415fe17ce6e37143c548828" + }, + { + "rev": 650, + "op": "sage-r71-unhold-1012", + "verb": "move", + "args": { + "id": 71, + "to": "briefed", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:38.823Z", + "semantics": 2, + "result": { + "row": 71, + "from": "blocked", + "to": "briefed", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r71-unhold-1012 rev 650 row 71 blocked→briefed" + }, + "viewSha": "aa4412fc5747a6e5bd233ea0de62c18889084a6858d71cef9850dbb3ca749dd6" + }, + { + "rev": 651, + "op": "sage-r80-unhold-1012", + "verb": "move", + "args": { + "id": 80, + "to": "queued", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:43.440Z", + "semantics": 2, + "result": { + "row": 80, + "from": "blocked", + "to": "queued", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r80-unhold-1012 rev 651 row 80 blocked→queued" + }, + "viewSha": "9d01d912bd22834bdfd6b07baac49f2a6331a2881853c4b5349dcd75e118887f" + }, + { + "rev": 652, + "op": "sage-r81-unhold-1012", + "verb": "move", + "args": { + "id": 81, + "to": "queued", + "reason": null, + "candidate": null, + "evidence": null, + "issue": null + }, + "by": "sage", + "at": "2026-10-12T18:08:47.686Z", + "semantics": 2, + "result": { + "row": 81, + "from": "blocked", + "to": "queued", + "round": null, + "issue": null, + "candidate": null, + "receipt": "ok sage-r81-unhold-1012 rev 652 row 81 blocked→queued" + }, + "viewSha": "34e31096d39e943938590e74bc470d663bccc2b3af49c7cbc28c6deead382e50" + }, + { + "rev": 653, + "op": "sage-r49-unhold-note-1012", + "verb": "note", + "args": { + "id": 49, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:08:51.300Z", + "semantics": 2, + "result": { + "row": 49, + "field": "note", + "receipt": "ok sage-r49-unhold-note-1012 rev 653 row 49 note" + }, + "viewSha": "a8f6dc4c9d1621781de29d20d5d1499ddf0bf7d49c0ddb5913214251da40313d" + }, + { + "rev": 654, + "op": "sage-r61-unhold-note-1012", + "verb": "note", + "args": { + "id": 61, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:08:54.738Z", + "semantics": 2, + "result": { + "row": 61, + "field": "note", + "receipt": "ok sage-r61-unhold-note-1012 rev 654 row 61 note" + }, + "viewSha": "4b8fd7b3c5135a19b5e6513c2f600d585046f5dcfb870fb48033e5e48208bc89" + }, + { + "rev": 655, + "op": "sage-r63-unhold-note-1012", + "verb": "note", + "args": { + "id": 63, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:08:57.866Z", + "semantics": 2, + "result": { + "row": 63, + "field": "note", + "receipt": "ok sage-r63-unhold-note-1012 rev 655 row 63 note" + }, + "viewSha": "198c1e49796cabd7d9f3bdbe9c27d316c400e415083777acb49f3ebbf27b702c" + }, + { + "rev": 656, + "op": "sage-r64-unhold-note-1012", + "verb": "note", + "args": { + "id": 64, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:01.578Z", + "semantics": 2, + "result": { + "row": 64, + "field": "note", + "receipt": "ok sage-r64-unhold-note-1012 rev 656 row 64 note" + }, + "viewSha": "00e0031992bdb4326cae3fb96d65151317aac14432dfbffddc63da4c1edfc3d1" + }, + { + "rev": 657, + "op": "sage-r65-unhold-note-1012", + "verb": "note", + "args": { + "id": 65, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:04.917Z", + "semantics": 2, + "result": { + "row": 65, + "field": "note", + "receipt": "ok sage-r65-unhold-note-1012 rev 657 row 65 note" + }, + "viewSha": "c431b4b4d77ba3edf354b9dc0ae60ea32ef0666c301323ed90b516bfa274cdde" + }, + { + "rev": 658, + "op": "sage-r66-unhold-note-1012", + "verb": "note", + "args": { + "id": 66, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:08.539Z", + "semantics": 2, + "result": { + "row": 66, + "field": "note", + "receipt": "ok sage-r66-unhold-note-1012 rev 658 row 66 note" + }, + "viewSha": "8d0c17b8e79db2db537e04158797b8a54f10b1e043b20bd65bc16c552044f6d6" + }, + { + "rev": 659, + "op": "sage-r69-unhold-note-1012", + "verb": "note", + "args": { + "id": 69, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:11.643Z", + "semantics": 2, + "result": { + "row": 69, + "field": "note", + "receipt": "ok sage-r69-unhold-note-1012 rev 659 row 69 note" + }, + "viewSha": "fe0d2dc5a73ed989f852e204e23df067608c80b831132b0b92e69a56361b926c" + }, + { + "rev": 660, + "op": "sage-r70-unhold-note-1012", + "verb": "note", + "args": { + "id": 70, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:14.648Z", + "semantics": 2, + "result": { + "row": 70, + "field": "note", + "receipt": "ok sage-r70-unhold-note-1012 rev 660 row 70 note" + }, + "viewSha": "d4f54afe8677c57fabf4761734398aa2cc4e7f06ea05dab33c7be5aa8d811472" + }, + { + "rev": 661, + "op": "sage-r71-unhold-note-1012", + "verb": "note", + "args": { + "id": 71, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:17.927Z", + "semantics": 2, + "result": { + "row": 71, + "field": "note", + "receipt": "ok sage-r71-unhold-note-1012 rev 661 row 71 note" + }, + "viewSha": "fe1bd810c88b8ecc97bfc5734d63d8a081a807e6f36734f67b501dd56ca72d4b" + }, + { + "rev": 662, + "op": "sage-r80-unhold-note-1012", + "verb": "note", + "args": { + "id": 80, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:20.943Z", + "semantics": 2, + "result": { + "row": 80, + "field": "note", + "receipt": "ok sage-r80-unhold-note-1012 rev 662 row 80 note" + }, + "viewSha": "d796a04b8fab92979894cc3f280aec57ecdcf3ceebaf4b51c56543b3e855daca" + }, + { + "rev": 663, + "op": "sage-r81-unhold-note-1012", + "verb": "note", + "args": { + "id": 81, + "text": "Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:24.037Z", + "semantics": 2, + "result": { + "row": 81, + "field": "note", + "receipt": "ok sage-r81-unhold-note-1012 rev 663 row 81 note" + }, + "viewSha": "5a0dee4b81b1615734fbb9bce7fbd07795b0ae64d612caea8a03f51adebfe721" + }, + { + "rev": 664, + "op": "sage-r49-unhold-note2-1012", + "verb": "note", + "args": { + "id": 49, + "text": "found in Q14 cutover planning; after S6. Decision 94 hold ended (cutover live 17:21Z); restarted under decision 111 and Mos sage-0091." + }, + "by": "sage", + "at": "2026-10-12T18:09:36.120Z", + "semantics": 2, + "result": { + "row": 49, + "field": "note", + "receipt": "ok sage-r49-unhold-note2-1012 rev 664 row 49 note" + }, + "viewSha": "24f05009caec25b1e43593a95db19c6442dd70111bfc3eeb79f2ac67f40a87d0" } ] }