79 lines
4.6 KiB
Diff
79 lines
4.6 KiB
Diff
diff --git a/docs/plans/DEFERRED.md b/docs/plans/DEFERRED.md
|
|
index 4c0c736f1..f990eb3a9 100644
|
|
--- a/docs/plans/DEFERRED.md
|
|
+++ b/docs/plans/DEFERRED.md
|
|
@@ -431,17 +431,6 @@ at every gate. Started 2026-09-12 during the control board MVP.
|
|
comes near 64 runs. The follow-up row either raises the cap or splits
|
|
the done. Its test: a fire's done over the cap refuses, and the runs it
|
|
left alive still get the alive flag. (2026-10-22)
|
|
-- **A fired or deleted instance keeps its grants.** (Dewey on the row 236
|
|
- rebase look, dewey-0815; Mos mos-1271; Sage sage-2558.) Row 194's
|
|
- `instance.fire` and row 256's delete revoke only the roles entry's
|
|
- credential services through `revoke()` in `runtime.mjs`. The agent's
|
|
- host grants (row 235) and its Gitea user and token (row 236) stay live
|
|
- until a human runs `mosaic hosts revoke` or `mosaic grants revoke`. The
|
|
- Console has no revoke route and doesn't say a grant is left. Row 281
|
|
- (#1786) closes it: a fire or a delete revokes every host and Gitea grant
|
|
- the instance holds, fail closed, with a test for each kind. It lands
|
|
- before the .53 Case 1 install hires an instance with a grant.
|
|
- (2026-10-22)
|
|
|
|
- **The runs suite doesn't gate a change to `scripts/mosaic-task.mjs`.**
|
|
(Dewey N7 on row 191, repeated on the Vikunja 502 review.)
|
|
@@ -460,6 +449,44 @@ at every gate. Started 2026-09-12 during the control board MVP.
|
|
changes `packages/cli/tests/tester.test.mjs`: add the resolve pin so M8
|
|
dies on an assertion. (2026-10-22)
|
|
|
|
+- **Row 274's user reply check is scoped to the thread, not the session.**
|
|
+ (Row 264a r6, sage-2591.) In `packages/bus/src/broker.mjs`, the check that
|
|
+ a run answers a user only in reply to that user's message in its thread
|
|
+ joins `message_threads` by thread. That holds while a user's thread has
|
|
+ only its default session: a user can't call `session.create`, and
|
|
+ `#thread` refuses anyone but the owner. Binds row 272 (264e, #1777), or
|
|
+ any row that lets a user add sessions: make the check session-scoped and
|
|
+ test it with two sessions. (2026-10-22)
|
|
+
|
|
+- **Row 281's refusal texts point the wrong way.** (Dewey N1 and N2 on
|
|
+ the row 281 manifest round, dewey-0842/0843 and dewey-0846; Sage
|
|
+ sage-2653.) N1: when a host decision is still open and the host is
|
|
+ removed, step G's fire or delete job refuses `host-unknown`, and the
|
|
+ inbox hint names a verb that can't help. The way out is to decline or
|
|
+ withdraw the decision (`packages/bus/src/broker.mjs`, the closed check
|
|
+ near :1684 and `decision.withdraw` near :5015). T14 now pins that path.
|
|
+ N2: the chief's fire tool text in `packages/harness/src/tools.mjs`
|
|
+ (near :186) doesn't say the fire's job can come back for an answer.
|
|
+ Neither changes behaviour. Binds the next row that changes the step G
|
|
+ hint text in `broker.mjs` or the fire tool text in `tools.mjs`: fix
|
|
+ both wording gaps and pin the hint in a test. (2026-10-22)
|
|
+
|
|
+- **Row 264a's refusal check in sessions.test doesn't pin the actor.**
|
|
+ (Duckworth N1 on the row 264a r12 delta, duckworth-0138; Sage sage-2695.)
|
|
+ `refusedOnce` in `packages/bus/tests/sessions.test.mjs` checks that each
|
|
+ refused call adds one `action.refused` event with code `not-holder`, but
|
|
+ not that the event's `actor_run` is the refused run. Binds row 269 (264b,
|
|
+ #1774), or the next row that changes `sessions.test.mjs`: pin `actor_run`
|
|
+ in `refusedOnce`. (2026-10-22)
|
|
+
|
|
+- **editor-provenance skips its rebuild check on esbuild 0.28.1.** (Duckworth
|
|
+ N2 on the row 264a manifest round, duckworth-0146.) The webui test
|
|
+ "rebuilding from the source gives the same bytes" needs esbuild 0.28.2,
|
|
+ the checkout has 0.28.1, and the gate logs a skip (webui.log:99). The file
|
|
+ is at base and was not in 264a's manifest. Binds the next gate that
|
|
+ touches the webui build: install the pinned esbuild in the gate checkout
|
|
+ so the check runs, or record why it can't. (2026-10-22)
|
|
+
|
|
## Queue
|
|
|
|
Moved to `docs/plans/QUEUE.md` on 2026-09-13. This file holds only gaps.
|
|
@@ -531,3 +558,10 @@ Moved to `docs/plans/QUEUE.md` on 2026-09-13. This file holds only gaps.
|
|
`packages/cli/tests/gate-lane-auth.test.mjs` proves no gate step mounts
|
|
the host default. The real-model cases this moved off the gate are open
|
|
above.
|
|
+- A fired or deleted instance kept its grants (2026-10-22, Dewey on the
|
|
+ row 236 rebase look, mos-1271): closed by row 281 (#1786), landing
|
|
+ e479521d3. A fire or a delete now runs a step G job that revokes every
|
|
+ host and Gitea grant the instance holds, fail closed, and tells the
|
|
+ human in the inbox when it can't. Megavolt built it; Dewey approved the
|
|
+ design (d6) and the manifest (c30614). The text gaps it left are open
|
|
+ above.
|