From 1082224b6ba9289a0b57a647abd34bb34a45d0a9 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Mon, 31 Aug 2026 01:58:45 +0000 Subject: [PATCH] docs: sync TODOS.md ship dispatch entry with the v1.76.0.0 contract Codex doc-review finding: the SHIPPED entry for /ship auto-invoking /document-release still described the four-key JSON contract. Adds the decisions key (console-printed, never PR markdown), the GSTACK_SESSION_KIND=spawned dispatch marking (#2733), and the new spawned-dispatch gate E2E to the proven-by list. Co-Authored-By: Claude Fable 5 --- TODOS.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/TODOS.md b/TODOS.md index f61b765ed..f82c82119 100644 --- a/TODOS.md +++ b/TODOS.md @@ -2686,12 +2686,17 @@ Shipped in v0.8.4; redesigned twice since. Current design (v0.18.2.0+, carved in v1.54.0.0): `/ship` Step 18 (`ship/sections/pr-body.md`) dispatches `/document-release` as a general-purpose subagent AFTER Step 17 (push) and BEFORE Step 19 (PR creation); the subagent's JSON contract (`files_updated`, -`commit_sha`, `pushed`, `documentation_section`) is baked into the initial PR -body. Subagent failure is non-blocking. The skeleton names "the -/document-release subagent" at three touchpoints (section-index trigger + STOP -pointer, Step 17 handoff, hoisted doc-sync invariant). Pinned by -`test/ship-document-release-dispatch.test.ts` + carve-guards anchors; behavior -proven by the `ship-docsync` gate E2E (`test/skill-e2e-ship-docsync.test.ts`). +`commit_sha`, `pushed`, `documentation_section`, `decisions` since v1.76.0.0) +is baked into the initial PR body — except `decisions`, which prints to the +ship console and never enters PR markdown. Since v1.76.0.0 (#2733) the dispatch +marks the subagent `GSTACK_SESSION_KIND=spawned` so its interactive gates +auto-choose the recommended option. Subagent failure is non-blocking. The +skeleton names "the /document-release subagent" at three touchpoints +(section-index trigger + STOP pointer, Step 17 handoff, hoisted doc-sync +invariant). Pinned by `test/ship-document-release-dispatch.test.ts` + +carve-guards anchors; behavior proven by the `ship-docsync` gate E2E +(`test/skill-e2e-ship-docsync.test.ts`) and the spawned-dispatch gate E2E +(`test/skill-e2e-docsync-spawned.test.ts`). ### Machine-checkable Step 18 dispatch receipt in /ship's Section self-check