| name | Planning |
| description | Break down features into tasks through collaborative discussion. Use for the PLAN phase of XP workflow. |
Planning
Core Rules (Non-Negotiable)
- NEVER skip requirements discussion — understand before decomposing
- Ask at least one clarifying question before breaking down tasks
- Vertical slices only — each task delivers working functionality
- Confirm understanding — summarise and agree before moving on
The Planning Cycle
💬 DISCUSS → Understand the problem and expected behaviour
❓ CLARIFY → Ask questions, resolve ambiguities
✂️ SLICE → Break into tasks
📋 CONFIRM → Summarise and agree on first task
Detailed Steps
💬 DISCUSS — Understand Requirements
- What problem does this feature solve?
- What is the expected behaviour?
- What are the acceptance criteria?
- Are there any constraints or dependencies?
❓ CLARIFY — Resolve Ambiguities
- Identify gaps in understanding
- Ask focused questions
- Challenge assumptions
- STOP — Do not proceed until questions are answered
✂️ SLICE — Break Into Tasks
Create tasks that are:
- Vertical — each delivers working end-to-end functionality
- Small — completable in one TDD cycle
- Ordered — by dependency first, then by value
- Testable — clear acceptance criteria
📋 CONFIRM — Agree on Plan
- Summarise understanding back to user
- Present ordered task list
- STOP — Explicitly agree on the first task to implement
What Makes a Good Task
✅ Good: "Add a book to the library"
- Has clear input (book details)
- Has clear output (book stored)
- Can be tested end-to-end
❌ Bad: "Create the Book class"
- Implementation detail
- No user-visible behaviour
- Can't be validated independently
Announcing Progress
💬 DISCUSS → Understanding [feature]
❓ CLARIFY → Question: [question]
✂️ SLICE → Breaking into tasks
📋 CONFIRM → Proposed tasks: [list]
Output Format
After planning, present tasks as:
## Tasks for [Feature]
1. [ ] [Task description] — [acceptance criteria]
2. [ ] [Task description] — [acceptance criteria]
3. [ ] [Task description] — [acceptance criteria]
**First task:** [Task 1 description]
Common Mistakes
- Diving into implementation without understanding requirements
- Creating horizontal slices (e.g., "build the database layer")
- Tasks too large to complete in one session
- Skipping confirmation step
- Not ordering by dependency