Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 18 additions & 6 deletions skills/brainstorming/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ You MUST create a task for each of these items and complete them in order:
5. **Present design** — in sections scaled to their complexity, get user approval after each section
6. **Write design doc** — save to `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md` and commit
7. **Spec review loop** — dispatch spec-document-reviewer subagent; fix issues and re-dispatch until approved (max 5 iterations, then surface to human)
8. **User reviews written spec** — ask user to review the spec file before proceeding
8. **User reviews written spec** — ask user to review the spec file; if changes requested, apply them and ask again; repeat until user explicitly approves
9. **Transition to implementation** — invoke writing-plans skill to create implementation plan

## Process Flow
Expand All @@ -45,7 +45,9 @@ digraph brainstorming {
"Write design doc" [shape=box];
"Spec review loop" [shape=box];
"Spec review passed?" [shape=diamond];
"User reviews spec?" [shape=diamond];
"Apply user changes" [shape=box];
"Ask user to review again" [shape=box];
"User satisfied?" [shape=diamond];
"Invoke writing-plans skill" [shape=doublecircle];

"Explore project context" -> "Visual questions ahead?";
Expand All @@ -60,9 +62,11 @@ digraph brainstorming {
"Write design doc" -> "Spec review loop";
"Spec review loop" -> "Spec review passed?";
"Spec review passed?" -> "Spec review loop" [label="issues found,\nfix and re-dispatch"];
"Spec review passed?" -> "User reviews spec?" [label="approved"];
"User reviews spec?" -> "Write design doc" [label="changes requested"];
"User reviews spec?" -> "Invoke writing-plans skill" [label="approved"];
"Spec review passed?" -> "Ask user to review again" [label="approved"];
"Ask user to review again" -> "User satisfied?";
"User satisfied?" -> "Apply user changes" [label="changes requested"];
"Apply user changes" -> "Spec review loop" [label="re-run review"];
"User satisfied?" -> "Invoke writing-plans skill" [label="approved"];
Comment on lines +65 to +69
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Inconsistency: Diagram mandates spec re-review, but text suggests it's optional.

The flow diagram (line 68) shows a mandatory path from "Apply user changes" back to "Spec review loop", but line 139 states "Re-run the spec review loop if needed", suggesting it's optional.

Potential issue: If a user requests changes that the automated spec reviewer doesn't approve (e.g., stylistic preferences, domain-specific terminology), the AI could get caught in a conflict trying to satisfy both the user's intent and the automated reviewer's rules.

Consider: Should the spec review re-run be:

  1. Always mandatory (as the diagram shows) - update line 139 to remove "if needed"
  2. Conditionally optional (as the text suggests) - update the diagram to show an optional path or decision node
  3. User-controlled - ask the user if they want to re-run the automated review after their changes
Suggested clarification approaches

Option 1: Make it clearly mandatory

-  2. Re-run the spec review loop if needed
+  2. Re-run the spec review loop to validate the changes

Option 2: Make it clearly conditional with criteria

-  2. Re-run the spec review loop if needed
+  2. Re-run the spec review loop if the changes affect spec content (not just typos/formatting)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/brainstorming/SKILL.md` around lines 65 - 69, The diagram and text
disagree about whether the spec re-review is mandatory; make them consistent by
changing the flow to be conditional: modify the diagram edge from "Apply user
changes" -> "Spec review loop" (currently unconditional) to include a decision
node or label like "[if user requests/reviewer fails]" and update the prose
phrase "Re-run the spec review loop if needed" (the sentence containing "Re-run
the spec review loop") to spell out the trigger criteria (e.g., automated-review
failure, user-requested changes, or user opt-in) and/or note that the system
will prompt the user to re-run the automated review when those criteria are met.
Ensure references to "Apply user changes", "Spec review loop", and the sentence
"Re-run the spec review loop" are updated together so diagram and text match.

}
```

Expand Down Expand Up @@ -128,7 +132,15 @@ After the spec review loop passes, ask the user to review the written spec befor

> "Spec written and committed to `<path>`. Please review it and let me know if you want to make any changes before we start writing out the implementation plan."

Wait for the user's response. If they request changes, make them and re-run the spec review loop. Only proceed once the user approves.
Wait for the user's response:
- **If they approve:** proceed to invoke writing-plans skill
- **If they request changes:**
1. Make the requested changes to the spec document
2. Re-run the spec review loop if needed
3. **Return to this User Review Gate** - ask again: "I've updated the spec based on your feedback. Please review the changes and let me know if you need any further modifications, or if we can proceed to the implementation plan."
4. Repeat this loop until the user explicitly approves

**Critical:** Do NOT proceed to writing-plans until the user explicitly confirms they are satisfied with the spec.

**Implementation:**

Expand Down