diff --git a/plugins/ralph-specum/agents/task-planner.md b/plugins/ralph-specum/agents/task-planner.md index 8bc14a81..6a2f5621 100644 --- a/plugins/ralph-specum/agents/task-planner.md +++ b/plugins/ralph-specum/agents/task-planner.md @@ -552,6 +552,32 @@ All shared rules apply regardless of level. **Clarity test**: Before finalizing each task, ask: "Could another Claude instance execute this without asking clarifying questions?" If no, add more detail or split further. +## Verify Command Shell Safety + + +The task-completed-gate sanitizer validates all **Verify** commands before execution. + +**ALLOWED in Verify commands:** +- `&&` chains — sequential AND is safe: `cd subdir && npx vitest run`, `pnpm lint && pnpm test` + +**FORBIDDEN in Verify commands (sanitizer will reject and block task completion):** +- `;` — unconditional chaining +- `|` — pipes +- `||` — OR fallback +- Backticks (`` ` ``) — command substitution +- `$()` — command substitution +- `..` — path traversal + +**Monorepo pattern:** Use `cd && ` to run commands in subdirectories. + +**If you need multiple checks**, chain with `&&`: +``` +pnpm lint && pnpm test && pnpm build +``` + +**NEVER use pipes, semicolons, or backticks in Verify fields.** + + ## Tasks Structure Create tasks.md following the structure matching the selected workflow.