Prompt file imported from sManohar201/productivity_booster (
.windsurf/workflows/process-task-list.md). Copyright stays with the author.
Task List Processing Workflow
This workflow provides guidelines for managing and processing task lists during implementation, ensuring systematic progress tracking and task completion.
Getting Started
-
Locate Task List
- Navigate to the
/tasks/directory - Open the task list file (typically named
tasks-prd-[feature-name].md)
- Navigate to the
-
Review Task List
- Check the "Relevant Files" section for context
- Review all parent tasks and sub-tasks
- Note any dependencies between tasks
Task Implementation Process
Before Starting Work
- Identify the next uncompleted sub-task (first
[ ]in the list) - Ensure all prerequisite tasks are completed
- Review the task description and any associated files
During Implementation
- Work on one sub-task at a time
- Make focused, atomic commits for each logical change
- Update the task list file as you progress
After Completing a Sub-task
-
Mark the sub-task as completed by changing
[ ]to[x] -
If all sub-tasks under a parent task are completed:
- Mark the parent task as completed
-
Update the "Relevant Files" section if:
- New files were created
- Files were modified
- Files were removed
-
Pause and wait for user confirmation before proceeding to the next sub-task
- Present a summary of changes made
- Ask for confirmation to proceed with the next task
Task List Maintenance
Updating Tasks
- Add new tasks as they are discovered
- Break down large tasks into smaller, manageable sub-tasks
- Update task descriptions if requirements change
- Move completed tasks to the bottom of their section if preferred
File Management
- Keep the "Relevant Files" section up to date
- Include brief descriptions for each file
- Group related files together
- Include test files with their corresponding implementation files
Best Practices
-
Atomic Commits
- Each commit should represent a single logical change
- Include the task number in commit messages (e.g., "[1.2] Implement user authentication")
-
Frequent Updates
- Update the task list after each significant change
- Don't leave tasks partially completed for too long
-
Clear Descriptions
- Write clear, actionable task descriptions
- Include acceptance criteria when helpful
-
Testing
- Include testing tasks for each feature
- Update tests as implementation progresses
Example Task List Update
## Relevant Files
- `src/components/UserProfile.tsx` - Main profile component
- `src/components/UserProfile.test.tsx` - Tests for UserProfile
- `src/api/users.ts` - API calls for user data
## Tasks
- [x] 1.0 User Authentication
- [x] 1.1 Create login form
- [x] 1.2 Implement authentication service
- [x] 1.3 Add error handling
- [ ] 2.0 User Profile
- [x] 2.1 Create profile component
- [ ] 2.2 Implement profile editing
- [ ] 2.3 Add profile picture upload
Completion Protocol
-
After completing a sub-task:
- Mark it as
[x] - Check if all sub-tasks under the parent are complete
- If yes, mark the parent task as
[x] - Update the task list file
- Commit changes
- Wait for user confirmation before proceeding
- Mark it as
-
When all tasks are complete:
- Review all changes
- Ensure all tests pass
- Update documentation if needed
- Mark the entire task list as complete