From cdaaf1347bca31cad7b4e926f6343296d3929cb8 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Tue, 29 Sep 2026 18:21:00 -0400 Subject: [PATCH 1/4] docs(planning): record the interview page deferred list with each decision Refs #4653 Co-Authored-By: Claude Opus 5.5 --- plugins/planning/surface/DEFERRED.md | 35 ++++++++++++++++++++++++++++ plugins/planning/surface/README.md | 1 + 2 files changed, 36 insertions(+) create mode 100644 plugins/planning/surface/DEFERRED.md diff --git a/plugins/planning/surface/DEFERRED.md b/plugins/planning/surface/DEFERRED.md new file mode 100644 index 0000000000..95bda6fde4 --- /dev/null +++ b/plugins/planning/surface/DEFERRED.md @@ -0,0 +1,35 @@ +# Deferred interview page work + +Behaviors the interview page does not build, each with one decision: build (with its issue), park, or drop. Park keeps the entry for a later decision and is the reversible choice. + +Reason for parking: the owner's scope guard, "we want these to be, in most cases, kind of short-lived, on the fly. We ingest them and then move on". Sessions are short-lived and the page is not a durable store. + +## Decision gaps from the commitment rules + +| Entry | Decision | +|---|---| +| 1. A `hedged` decision kind on the page: the skill records a conditional accept as hedged, and the page has no such state | Build: #5471, after #4611 | +| 2. The register gate grades a page export clean while commitments are unticked | Build: #5471, after #4611 | +| 3. Addendum wording lint: whether the coined-term check becomes a script check | No decision recorded: awaiting the owner | + +## Deferred behaviors + +| Entry | Decision | +|---|---| +| "Accept all and have agents check them": a page button that hands a round to `/planning:audit-answers` | Build: #5472 | +| A hidden-tab title badge | Build: #5473 | +| Mermaid rendering, which needs a vendored renderer because the page's CSP allows no network source | Decide the renderer size: #5474 | +| Composer extras: attachments (paste or drop images and video), link detection, markdown with code highlighting, slash autocomplete for skills and `@` for question ids, dragging a note onto a question | Park | +| Hold sends; typed debounce | Park | +| Server as sole writer of both files; SSE deltas with `Last-Event-ID`; a server idle exit | Park | +| The stale cascade (automatic transitive re-staling) | Park | +| Size-signal line and split proposal cards on the page | Park | +| A minimum text size inside SVG | Park | +| Monitor, plugin-monitor and channel wake rungs | Park | +| A "What am I assuming?" button | Park | +| A one-way/two-way door tag | Park | +| An off-screen reply toast with a jump link | Park | +| A SQLite store | Park | +| Image export | Park | +| The self-improvement loop (the interview skill improving the interview process) | Park | +| Several sessions each taking a group | Park | diff --git a/plugins/planning/surface/README.md b/plugins/planning/surface/README.md index dc9515682d..fc39a89443 100644 --- a/plugins/planning/surface/README.md +++ b/plugins/planning/surface/README.md @@ -13,6 +13,7 @@ A local page for interview rounds. The user answers one question at a time on 12 | `watch.sh` | Claude | The watcher, run as a background Bash task | | `exporters.py` | Claude | `export-ledger`, `export-brief`, `export-report`, `import-ledger` (called through `round.py`) | | `schema.py`, `schema/*.schema.json` | shared | JSON Schemas for the question, response, event, visual and ops files, and the stdlib validator `round.py` applies on every write | +| `DEFERRED.md` | docs | Deferred page work, each entry with its decision | | `test_*.py`, `*.test.sh`, `tests/` | tests | Python `unittest` suites, shell suites, browser suites and fixtures | Per data dir: `questions.json` (Claude, through `round.py`), `responses.json` (server only: the event log and derived answers), optional `settings.json` and `theme.json`, and runtime files never exported (`.interview-session.json`, `.interview-session.env`, `.watch-seq`, `.watch-replay`, `questions.json.lock`). From ac5b70e38fc0edc42655156c00904011a6efd531 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Tue, 29 Sep 2026 18:26:53 -0400 Subject: [PATCH 2/4] chore(planning): bump to 0.46.2 for the deferred list Co-Authored-By: Claude Opus 5.5 --- plugins/planning/.claude-plugin/plugin.json | 2 +- plugins/planning/CHANGELOG.md | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/plugins/planning/.claude-plugin/plugin.json b/plugins/planning/.claude-plugin/plugin.json index ac770bd68d..35b13fd097 100644 --- a/plugins/planning/.claude-plugin/plugin.json +++ b/plugins/planning/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json", "name": "planning", - "version": "0.46.1", + "version": "0.46.2", "userConfig": { "surface": { "type": "string", diff --git a/plugins/planning/CHANGELOG.md b/plugins/planning/CHANGELOG.md index 8099512c48..2a72beb455 100644 --- a/plugins/planning/CHANGELOG.md +++ b/plugins/planning/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to the `planning` plugin are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. +## [0.46.2] - 2026-09-29 + +### Added + +- **`surface/DEFERRED.md`** lists the interview page's deferred work, each entry marked build (with its issue), park or drop, and the surface README links it ([#4653](https://github.com/melodic-software/claude-code-plugins/issues/4653)). + ## [0.46.1] - 2026-09-29 ### Changed From 82663deec87c927d0e5c8c4218b8e54216607468 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Tue, 29 Sep 2026 18:41:17 -0400 Subject: [PATCH 3/4] docs(planning): mark undecided deferred entries as open Co-Authored-By: Claude Opus 5.5 --- plugins/planning/CHANGELOG.md | 2 +- plugins/planning/surface/DEFERRED.md | 6 +++--- plugins/planning/surface/README.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/planning/CHANGELOG.md b/plugins/planning/CHANGELOG.md index 41b355cb61..3b3869326a 100644 --- a/plugins/planning/CHANGELOG.md +++ b/plugins/planning/CHANGELOG.md @@ -7,7 +7,7 @@ All notable changes to the `planning` plugin are documented here. Format follows ### Added -- **`surface/DEFERRED.md`** lists the interview page's deferred work, each entry marked build (with its issue), park or drop, and the surface README links it ([#4653](https://github.com/melodic-software/claude-code-plugins/issues/4653)). +- **`surface/DEFERRED.md`** lists the interview page's deferred work, each entry marked build (with its issue), park, drop or open, and the surface README links it ([#4653](https://github.com/melodic-software/claude-code-plugins/issues/4653)). ## [0.47.0] - 2026-09-29 diff --git a/plugins/planning/surface/DEFERRED.md b/plugins/planning/surface/DEFERRED.md index 95bda6fde4..03d9bed619 100644 --- a/plugins/planning/surface/DEFERRED.md +++ b/plugins/planning/surface/DEFERRED.md @@ -1,6 +1,6 @@ # Deferred interview page work -Behaviors the interview page does not build, each with one decision: build (with its issue), park, or drop. Park keeps the entry for a later decision and is the reversible choice. +Behaviors the interview page does not build, each marked build (with its issue), park, drop, or open when the decision is still pending. Park keeps the entry for a later decision and is the reversible choice. Reason for parking: the owner's scope guard, "we want these to be, in most cases, kind of short-lived, on the fly. We ingest them and then move on". Sessions are short-lived and the page is not a durable store. @@ -10,7 +10,7 @@ Reason for parking: the owner's scope guard, "we want these to be, in most cases |---|---| | 1. A `hedged` decision kind on the page: the skill records a conditional accept as hedged, and the page has no such state | Build: #5471, after #4611 | | 2. The register gate grades a page export clean while commitments are unticked | Build: #5471, after #4611 | -| 3. Addendum wording lint: whether the coined-term check becomes a script check | No decision recorded: awaiting the owner | +| 3. Addendum wording lint: whether the coined-term check becomes a script check | Open: awaiting the owner | ## Deferred behaviors @@ -18,7 +18,7 @@ Reason for parking: the owner's scope guard, "we want these to be, in most cases |---|---| | "Accept all and have agents check them": a page button that hands a round to `/planning:audit-answers` | Build: #5472 | | A hidden-tab title badge | Build: #5473 | -| Mermaid rendering, which needs a vendored renderer because the page's CSP allows no network source | Decide the renderer size: #5474 | +| Mermaid rendering, which needs a vendored renderer because the page's CSP allows no network source | Open: the renderer size is undecided, #5474 | | Composer extras: attachments (paste or drop images and video), link detection, markdown with code highlighting, slash autocomplete for skills and `@` for question ids, dragging a note onto a question | Park | | Hold sends; typed debounce | Park | | Server as sole writer of both files; SSE deltas with `Last-Event-ID`; a server idle exit | Park | diff --git a/plugins/planning/surface/README.md b/plugins/planning/surface/README.md index 1e2ed38786..45222b8345 100644 --- a/plugins/planning/surface/README.md +++ b/plugins/planning/surface/README.md @@ -13,7 +13,7 @@ A local page for interview rounds. The user answers one question at a time on 12 | `watch.sh` | Claude | The watcher, run as a background Bash task | | `exporters.py` | Claude | `export-ledger`, `export-brief`, `export-report`, `import-ledger` (called through `round.py`) | | `schema.py`, `schema/*.schema.json` | shared | JSON Schemas for the question, response, event, visual and ops files, and the stdlib validator `round.py` applies on every write | -| `DEFERRED.md` | docs | Deferred page work, each entry with its decision | +| `DEFERRED.md` | docs | Deferred page work, each entry with its decision or marked open | | `test_*.py`, `*.test.sh`, `tests/` | tests | Python `unittest` suites, shell suites, browser suites and fixtures | Per data dir: `questions.json` (Claude, through `round.py`), `responses.json` (server only: the event log and derived answers), optional `settings.json` and `theme.json`, and runtime files never exported (`.interview-session.json`, `.interview-session.env`, `.watch-seq`, `.watch-replay`, `questions.json.lock`). From 8a6e7d4403aca370409946b2b04c3d06bc40cdc9 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Tue, 29 Sep 2026 22:18:17 -0400 Subject: [PATCH 4/4] docs(planning): release the interview page deferred list as 0.47.3 Co-Authored-By: Claude Opus 5.5 --- plugins/planning/.claude-plugin/plugin.json | 2 +- plugins/planning/CHANGELOG.md | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/plugins/planning/.claude-plugin/plugin.json b/plugins/planning/.claude-plugin/plugin.json index fd11342d46..ce92e5f000 100644 --- a/plugins/planning/.claude-plugin/plugin.json +++ b/plugins/planning/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json", "name": "planning", - "version": "0.47.2", + "version": "0.47.3", "userConfig": { "surface": { "type": "string", diff --git a/plugins/planning/CHANGELOG.md b/plugins/planning/CHANGELOG.md index 6f4f775b97..1454c3dfe5 100644 --- a/plugins/planning/CHANGELOG.md +++ b/plugins/planning/CHANGELOG.md @@ -3,6 +3,12 @@ All notable changes to the `planning` plugin are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. +## [0.47.3] - 2026-09-29 + +### Added + +- **`surface/DEFERRED.md`** lists the interview page's deferred work, each entry marked build (with its issue), park, drop or open, and the surface README links it ([#4653](https://github.com/melodic-software/claude-code-plugins/issues/4653)). + ## [0.47.2] - 2026-09-29 ### Added @@ -12,10 +18,6 @@ All notable changes to the `planning` plugin are documented here. Format follows ## [0.47.1] - 2026-09-29 -### Added - -- **`surface/DEFERRED.md`** lists the interview page's deferred work, each entry marked build (with its issue), park, drop or open, and the surface README links it ([#4653](https://github.com/melodic-software/claude-code-plugins/issues/4653)). - ### Fixed - **`goal-condition-length.sh` exits 2 with a usage hint when stdin is a terminal** and no `--file` is given, instead of blocking on input. Piped and `--file` use are unchanged ([#5291](https://github.com/melodic-software/claude-code-plugins/issues/5291)).