Add dependency management to issue workflows
Updated skills and commands to identify and formally link issue dependencies using tea CLI: Skills updated: - issue-writing: Document deps in description + link with tea CLI - backlog-grooming: Check for formal dependency links in checklist - roadmap-planning: Link dependencies after creating issues Commands updated: - create-issue: Ask about and link dependencies for new issues - plan-issues: Create in dependency order, link with tea issues deps add - groom: Check dependency status, suggest missing links 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -28,13 +28,16 @@ If title provided:
|
||||
1. Create an issue with that title
|
||||
2. Ask for description
|
||||
3. Assign to appropriate milestone (see above)
|
||||
4. Ask if this issue depends on any existing issues
|
||||
5. If dependencies exist, link them: `tea issues deps add <new-issue> <blocker>`
|
||||
|
||||
## Batch Mode
|
||||
|
||||
If $1 is "batch":
|
||||
1. Ask user for the plan/direction
|
||||
2. Fetch available milestones
|
||||
3. Generate list of issues with titles, descriptions, and milestone assignments
|
||||
3. Generate list of issues with titles, descriptions, milestone assignments, and dependencies
|
||||
4. Show for approval
|
||||
5. Create each issue with milestone
|
||||
6. Display all created issue numbers
|
||||
5. Create each issue with milestone (in dependency order)
|
||||
6. Link dependencies between created issues: `tea issues deps add <issue> <blocker>`
|
||||
7. Display all created issue numbers with dependency graph
|
||||
|
||||
@@ -11,23 +11,27 @@ argument-hint: [issue-number]
|
||||
|
||||
## If issue number provided ($1):
|
||||
|
||||
1. **Fetch the issue** details
|
||||
2. **Evaluate** against grooming checklist
|
||||
3. **Suggest improvements** for:
|
||||
1. **Fetch the issue** details with `tea issues <number> --comments`
|
||||
2. **Check dependencies** with `tea issues deps list <number>`
|
||||
3. **Evaluate** against grooming checklist
|
||||
4. **Suggest improvements** for:
|
||||
- Title clarity
|
||||
- Description completeness
|
||||
- Acceptance criteria quality
|
||||
- Scope definition
|
||||
4. **Ask user** if they want to apply changes
|
||||
5. **Update issue** if approved
|
||||
- Missing or incorrect dependencies
|
||||
5. **Ask user** if they want to apply changes
|
||||
6. **Update issue** if approved
|
||||
7. **Link/unlink dependencies** if needed: `tea issues deps add/remove <issue> <dep>`
|
||||
|
||||
## If no argument (groom all):
|
||||
|
||||
1. **List open issues**
|
||||
2. **Review each** against grooming checklist
|
||||
2. **Review each** against grooming checklist (including dependencies)
|
||||
3. **Categorize**:
|
||||
- Ready: Well-defined, can start work
|
||||
- Needs work: Missing info or unclear
|
||||
- Ready: Well-defined, dependencies linked, can start work
|
||||
- Blocked: Has unresolved dependencies
|
||||
- Needs work: Missing info, unclear, or missing dependency links
|
||||
- Stale: No longer relevant
|
||||
4. **Present summary** table
|
||||
5. **Offer to improve** issues that need work
|
||||
4. **Present summary** table with dependency status
|
||||
5. **Offer to improve** issues that need work (including linking dependencies)
|
||||
|
||||
@@ -43,6 +43,6 @@ argument-hint: <feature-description>
|
||||
- Proceed anyway (with justification)
|
||||
|
||||
6. **Ask for approval** before creating issues
|
||||
7. **Create issues** in order
|
||||
8. **Update dependencies** with actual issue numbers after creation
|
||||
9. **Present summary** with links to created issues
|
||||
7. **Create issues** in dependency order (blockers first)
|
||||
8. **Link dependencies** using `tea issues deps add <issue> <blocker>` for each dependency
|
||||
9. **Present summary** with links to created issues and dependency graph
|
||||
|
||||
@@ -33,10 +33,18 @@ For each issue, verify:
|
||||
- [ ] Clear boundaries (what's included/excluded)
|
||||
|
||||
### 5. Dependencies
|
||||
- [ ] Dependencies identified
|
||||
- [ ] Dependencies identified in description
|
||||
- [ ] Dependencies formally linked (`tea issues deps list <number>`)
|
||||
- [ ] No circular dependencies
|
||||
- [ ] Blocking issues are tracked
|
||||
|
||||
To check/fix dependencies:
|
||||
```bash
|
||||
tea issues deps list <number> # View current dependencies
|
||||
tea issues deps add <issue> <blocker> # Add missing dependency
|
||||
tea issues deps remove <issue> <dep> # Remove incorrect dependency
|
||||
```
|
||||
|
||||
### 6. Labels
|
||||
- [ ] Type label (bug/feature/etc)
|
||||
- [ ] Priority if applicable
|
||||
|
||||
@@ -104,7 +104,19 @@ Use labels to categorize:
|
||||
|
||||
## Dependencies
|
||||
|
||||
Reference related issues:
|
||||
- "Depends on #N" - Must complete first
|
||||
- "Blocks #N" - This blocks another
|
||||
- "Related to #N" - Informational link
|
||||
Identify and link dependencies when creating issues:
|
||||
|
||||
1. **In the description**, document dependencies:
|
||||
```markdown
|
||||
## Dependencies
|
||||
- Depends on #12 (must complete first)
|
||||
- Related to #15 (informational)
|
||||
```
|
||||
|
||||
2. **After creating the issue**, formally link blockers using tea CLI:
|
||||
```bash
|
||||
tea issues deps add <this-issue> <blocker-issue>
|
||||
tea issues deps add 5 3 # Issue #5 is blocked by #3
|
||||
```
|
||||
|
||||
This creates a formal dependency graph that tools can query.
|
||||
|
||||
@@ -80,6 +80,13 @@ In issue descriptions:
|
||||
- Depends on #13 (API setup)
|
||||
```
|
||||
|
||||
After creating issues, formally link dependencies:
|
||||
```bash
|
||||
tea issues deps add <issue> <blocker>
|
||||
tea issues deps add 14 12 # Issue #14 depends on #12
|
||||
tea issues deps add 14 13 # Issue #14 depends on #13
|
||||
```
|
||||
|
||||
## Creating Issues
|
||||
|
||||
Use the gitea skill for issue operations.
|
||||
|
||||
Reference in New Issue
Block a user