What happened
setup-pstack was rerun on a machine whose override sheet already held every role and every per-family effort, and whose four probes all passed. Steps 4, 6 and 7 still put their operator prompts (the four effort questions, the keep-roles confirmation, the write confirmation) in front of the human. Every answer was already on disk and the human's reaction was that none of it should have reached them.
Proposal
On a rerun where the parsed sheet passes matrix validation and every probe passes, steps 4, 6 and 7 take the parsed sheet as their answers and print what they kept, unless the caller names a change (a new lane, a new family, a different effort). A first run, a failed probe, or an invalid sheet still asks.
Why upstream
The skill body owns the prompts, so the idempotent rerun belongs in the skill rather than in a per-project wrapper. This project does not fork pstack.
Context: open-pstack 1.2.1 on Claude Code, macOS. Happy to send a PR if you prefer.
What happened
setup-pstackwas rerun on a machine whose override sheet already held every role and every per-family effort, and whose four probes all passed. Steps 4, 6 and 7 still put their operator prompts (the four effort questions, the keep-roles confirmation, the write confirmation) in front of the human. Every answer was already on disk and the human's reaction was that none of it should have reached them.Proposal
On a rerun where the parsed sheet passes matrix validation and every probe passes, steps 4, 6 and 7 take the parsed sheet as their answers and print what they kept, unless the caller names a change (a new lane, a new family, a different effort). A first run, a failed probe, or an invalid sheet still asks.
Why upstream
The skill body owns the prompts, so the idempotent rerun belongs in the skill rather than in a per-project wrapper. This project does not fork pstack.
Context: open-pstack 1.2.1 on Claude Code, macOS. Happy to send a PR if you prefer.