diff --git a/docs/plans/2026-10-25_prd-1-18-brief.md b/docs/plans/2026-10-25_prd-1-18-brief.md new file mode 100644 index 000000000..d141be43a --- /dev/null +++ b/docs/plans/2026-10-25_prd-1-18-brief.md @@ -0,0 +1,70 @@ +# PRD 1.18 brief: REQ-INST-2 prints the providers entry + +Sage, 2026-10-25, for Mos's ruling mos-1671 on sage-4418. This follows +`docs/plans/BRIEF-TEMPLATE.md`. Vikunja 458 (bundled Pocket ID). + +## PRD 1.18 REQ-INST-2 prints the providers entry (mos-1671) + +### Problem + +REQ-INST-2's second bullet says the stack installs the bundled Pocket ID "and +writes it as the Console's one providers entry". That sentence is Mos's reading +(mos-1202), not Jason's words. The row 255 design, landed at de3e23dde, chose R1: +enroll prints the entry and writes nothing, because config.json is user-authored +and never overwritten (canon invariant 2, Q175). Mos approved R1 in mos-1666 and +ruled the amendment in mos-1671. What the requirement allows or forbids is +unchanged. + +### Owner and reviewer + +- Owner: Gosalyn. +- Reviewer: Webby. +- After: row 255 (landed). + +### Files owned + +- `docs/prd/mosaic-stack.md`. +- `packages/tasks/requirements.json`: version 1.18 only. No id or title changes, + so the count stays 87. +- `packages/tasks/tests/requirements.test.mjs`: the version pin 1.18 (:24). + +### What ships + +- In REQ-INST-2's second bullet (PRD :1519-1520), replace + "and writes it as the Console's one providers entry." + with + "and prints the Console's one providers entry for the user to add to + config.json. The stack never writes config.json (canon invariant 2)." + The rest of the bullet stays, and so does Jason's Q203 quote. +- Status line: version 1.18. +- The header gets a 1.18 sentence: Version 1.18 corrects Mos's reading in + REQ-INST-2 to match the approved row 255 design. The stack prints the + providers entry and never writes config.json. What the requirement allows or + forbids is unchanged (mos-1671, sage-4418). Doc-only, so it takes the 1.11 + path: one seat drafts, a second reviews, Sage lands. +- A "Version 1.18 source" line, placed before the 1.17 one: Mos's ruling + mos-1671 on 2026-10-25, answering sage-4418, with the old and new text. + +### Out of scope + +- The P1 to P6 build rows from the row 255 design. Sage files them after this + lands (mos-1671). +- Any other REQ-INST-2 wording, and REQ-INST-1 and REQ-INST-3. + +### Gate + +- Webby checks that the PRD diff is the replacement, the Status line, the 1.18 + sentence and the source line, and nothing else. +- On Sage's gate: + - tasks, run whole; + - bus, run whole, because the broker loads requirements.json; + - cli `stack-copy.test.mjs`; + - every `scripts/test-*.sh`, under `timeout -k 10`. +- Mos gets the landing commit. + +### Handoffs + +Every seat hands off directly (DECISIONS Q210, mos-1221). When the owner pushes a +round or the reviewer posts a verdict, that seat messages the next seat's T3 +thread and Sage's with `mcp__t3__t3_send_message`. Mos has one step here, which +is receiving the landing commit.