Repository navigation
fix: make session-close's mode-2 closer a combinable menu - #329
Conversation
There was a problem hiding this comment.
{
"verdict": "approve",
"summary": "Docs-only change: `commands/session-close.md` updates the mode-2 closer verb from `pick —` to `pick any —` with an explanation that this renders as checkboxes on the board rather than radios, allowing operators to select multiple follow-up actions. `CHANGELOG.md` records the unreleased change. No code changed.",
"comments": [],
"concerns_addressed": []
}superseded by new automated review
There was a problem hiding this comment.
Based on my analysis of the 3 changed files in this PR:
-
CHANGELOG.md - Accurately describes the fix: mode-2 closer changed from
pick —topick any —to enable combinable checkboxes on the attention board. -
commands/session-close.md - The closer at line 788 correctly reads
👤 You: pick any — 1. /vault-cli:reflect · 2. /coding:self-improve · 3. review the runbook gap · 4. nothing — close -
scripts/mode-membership-rule-test.sh - The
MODE2_CLOSERconstant at line 72 correctly expects👤 You: pick any —
The test script (mode-membership-rule-test.sh) validates the prose rule that all three advisory signals (reflect, self-improve, runbook-improvement) must appear consistently on five surfaces: mode-1 header, mode-2 header, mode-2 closer, mode-2 body, and mode-3 advisory tail. This PR changes only the mode-2 closer surface from pick — to pick any —.
Scope: This is a docs-only change — no Go code was modified, as the PR description states. The concern about "no Go code references the old format" is addressed by the changelog note "commands/session-close.md only — no Go change."
{
"verdict": "approve",
"summary": "Docs-only change: the mode-2 closer in session-close.md is correctly updated to `pick any —` for combinable attention-board rendering, with consistent CHANGELOG entry and test script alignment.",
"comments": [],
"concerns_addressed": [
{
"concern": "correctness: MODE2_CLOSER expected string updated to match new format - verify test passes",
"disposition": "addressed",
"detail": "scripts/mode-membership-rule-test.sh:72 correctly expects '👤 You: pick any —' matching the session-close.md closer"
},
{
"concern": "correctness: no Go code references the old 'pick —' format that would break",
"disposition": "addressed",
"detail": "PR description states and CHANGELOG confirms 'commands/session-close.md only — no Go change'; no Go files in diff"
}
]
}
What
session-close's mode-2 closer becomes a combinable menu:pick any — 1. /vault-cli:reflect · 2. /coding:self-improve · 3. review the runbook gap · 4. nothing — close.The options were never alternatives — a session that wants both the reflection and the self-improvement runs both — but the closer emitted
pick —, and a closer reaches the attention board with notool_inputat all, so the card declared no cardinality and rendered as radios with "(pick one)". The operator could answer "1 + 2" in the console and not on the board.How
commands/session-close.md— the mode-2 closer line and the two sentences that describe it.nothing — closestays last; the combinable form makes it exclusive, so selecting it clears the other picks and any pick clears it.Pieces this depends on
bborbe/claudeStophook parsespick any —, declaresmultiple, marks the last optionexclusivebborbe/attention-controllerexclusivefield and the board rule that clears the other boxesAn older board ignores the unknown
exclusivefield and renders the escape as an ordinary checkbox — it does not reject the card — so this is safe to merge before the deploy, and only the checkbox rendering waits on it.Testing
Markdown only, no Go change. No test in the repo asserts the closer line (
grep -rn "nothing — close"finds only CHANGELOG history).