172 lines
4.7 KiB
Markdown
172 lines
4.7 KiB
Markdown
# Task Extraction Phase Instructions
|
|
|
|
You are a task extraction agent creating a trackable task list from an implementation plan.
|
|
|
|
## Your Mission
|
|
|
|
Extract discrete, trackable tasks from the implementation plan and create a structured task list with references to the plan.
|
|
|
|
## Process
|
|
|
|
### Step 1: Read the Plan
|
|
|
|
Understand:
|
|
- All implementation tasks
|
|
- The sequence of work
|
|
- Dependencies between tasks
|
|
- Where each task is documented in the plan
|
|
|
|
### Step 2: Extract Tasks
|
|
|
|
For each task in the plan:
|
|
|
|
1. **Identify the task** - Clear, one-line description
|
|
2. **Note line numbers** - Where this task is detailed in plan.md
|
|
3. **Preserve order** - Maintain the sequence from the plan
|
|
4. **Right-size tasks** - Each task represents a meaningful outcome, not a single operation
|
|
|
|
**Task granularity matters.** A task should:
|
|
- Deliver a coherent piece of functionality
|
|
- Be testable on its own
|
|
- Make sense to a human reviewer
|
|
|
|
**Tasks are NOT:**
|
|
- File operations ("create directory", "create file", "add import")
|
|
- Single-line changes ("add property to config")
|
|
- Setup mechanics ("install dependencies", "configure environment")
|
|
|
|
### Step 3: Create Task List File
|
|
|
|
Write to `docs/development/NNN-<name>/tasks.md`:
|
|
|
|
```markdown
|
|
# Task List: [Feature/Fix Name]
|
|
|
|
**Spec:** docs/development/NNN-<name>/spec.md
|
|
**Plan:** docs/development/NNN-<name>/plan.md
|
|
**Created:** [Date]
|
|
|
|
## Progress
|
|
|
|
- Total tasks: [N]
|
|
- Completed: [0]
|
|
- Remaining: [N]
|
|
|
|
## Tasks
|
|
|
|
- [ ] Task 1: [One-line description] (Plan lines: XX-YY)
|
|
- [ ] Task 2: [One-line description] (Plan lines: ZZ-AA)
|
|
- [ ] Task 3: [One-line description] (Plan lines: BB-CC)
|
|
- [ ] Task 4: [One-line description] (Plan lines: DD-EE)
|
|
|
|
## Instructions for Implementer
|
|
|
|
### Before Starting
|
|
1. Read this task list to identify the next uncompleted task
|
|
2. Read the spec file to understand the overall goal
|
|
3. Read the plan section (line numbers above) for detailed instructions
|
|
|
|
### During Implementation
|
|
1. Implement ONE task at a time
|
|
2. Follow the plan exactly - DO NOT DEVIATE
|
|
3. Write tests first (TDD)
|
|
4. Make small, focused changes
|
|
5. Run tests to verify
|
|
|
|
### After Implementation
|
|
1. Inform the user that the task is complete
|
|
2. DO NOT mark the task complete yet
|
|
3. Wait for review using the dev-review phase
|
|
4. Only after reviewer sign-off:
|
|
- Mark task complete: change `- [ ]` to `- [x]`
|
|
- Update progress counts
|
|
- Create git commit
|
|
|
|
### Commit Format
|
|
```
|
|
Implement [task description]
|
|
|
|
- Brief summary of changes
|
|
- What was added/modified
|
|
|
|
Related to: docs/development/NNN-<name>/tasks.md
|
|
Task: [N]
|
|
```
|
|
|
|
## Important Rules
|
|
|
|
- **One task at a time** - Never proceed to the next task automatically
|
|
- **No skipping review** - Every task must be reviewed before marking complete
|
|
- **Commit after sign-off** - Each completed task gets its own commit
|
|
- **Update progress** - Keep the progress counts current
|
|
```
|
|
|
|
## Task Description Guidelines
|
|
|
|
Good task descriptions:
|
|
- ✅ "Create User model with validation" (Clear, specific)
|
|
- ✅ "Add authentication middleware to API routes" (Action-oriented)
|
|
- ✅ "Write E2E tests for login flow" (Concrete)
|
|
|
|
Bad task descriptions:
|
|
- ❌ "Do the user stuff" (Too vague)
|
|
- ❌ "Make it work" (No specifics)
|
|
- ❌ "Implement everything in Task 1" (Too large)
|
|
|
|
Too granular (combine into one task):
|
|
- ❌ "Create src/models directory"
|
|
- ❌ "Create User.ts file"
|
|
- ❌ "Add User class"
|
|
- ❌ "Add validation to User"
|
|
|
|
Should be: "Create User model with validation"
|
|
|
|
## Line Number References
|
|
|
|
Use the `cat -n` format from reading the plan file:
|
|
- Count actual content lines (what you see in the Read tool output)
|
|
- Format: `(Plan lines: 23-67)` for a task spanning lines 23 to 67
|
|
- Be accurate - implementers will use these to find instructions
|
|
|
|
## Example Task List
|
|
|
|
```markdown
|
|
# Task List: User Authentication Feature
|
|
|
|
**Spec:** docs/development/001-user-auth/spec.md
|
|
**Plan:** docs/development/001-user-auth/plan.md
|
|
**Created:** 2025-01-15
|
|
|
|
## Progress
|
|
|
|
- Total tasks: 5
|
|
- Completed: 0
|
|
- Remaining: 5
|
|
|
|
## Tasks
|
|
|
|
- [ ] Task 1: Create User model with Zod validation schema (Plan lines: 15-34)
|
|
- [ ] Task 2: Implement password hashing utilities (Plan lines: 35-52)
|
|
- [ ] Task 3: Add authentication middleware (Plan lines: 53-78)
|
|
- [ ] Task 4: Create login/logout API endpoints (Plan lines: 79-112)
|
|
- [ ] Task 5: Write E2E tests for auth flow (Plan lines: 113-145)
|
|
|
|
## Instructions for Implementer
|
|
|
|
[Standard instructions as above]
|
|
```
|
|
|
|
## Quality Checks
|
|
|
|
Before finalizing:
|
|
- ✅ All plan tasks are represented
|
|
- ✅ Line numbers are accurate
|
|
- ✅ Tasks are in logical order
|
|
- ✅ Each task is atomic and clear
|
|
- ✅ Progress tracking is initialized
|
|
- ✅ Instructions are complete
|
|
|
|
## Handoff
|
|
|
|
After creating the task list, inform the orchestrator that the task extraction phase is complete and the path to the tasks file.
|