Add comprehensive wishlist management for capturing and refining feature ideas: • CLI Commands: - markitect wish create: Create new wishlist items with templates - markitect wish list: List and filter wishes by stage - markitect wish promote: Promote wishes through workflow stages - markitect wish convert: Convert ready wishes to regular issues • Workflow Stages: - discussion: Initial idea capture and brainstorming - draft: Create specification and requirements - ready: Prepare for conversion to development issue - archived: Preserve ideas that won't be pursued • Features: - Automatic label management (wish, wish/stage, priority/level) - Multiple output formats (table, simple, json) - Stage filtering and organization - Structured templates for each workflow stage - Comprehensive documentation and best practices 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
8.0 KiB
8.0 KiB
Feature Wishlist System - Issue #85
The Feature Wishlist system provides a structured approach for capturing, discussing, and refining feature ideas before they become formal development tasks.
Overview
The wishlist system helps teams:
- Capture Ideas: Preserve creative insights that emerge during discussions
- Organize Thoughts: Structure rough ideas before formal specification
- Facilitate Discussion: Provide dedicated space for collaborative refinement
- Prevent Loss: Ensure good ideas aren't forgotten
- Gradual Refinement: Allow concepts to mature over time
Workflow Stages
1. 💡 Discussion Stage (wish/discussion)
- Purpose: Initial idea capture and brainstorming
- Activities: Gather thoughts, explore possibilities, ask questions
- Output: Refined understanding of the concept
2. 📝 Draft Stage (wish/draft)
- Purpose: Create initial specification and requirements
- Activities: Document detailed requirements, identify dependencies
- Output: Draft implementation plan
3. ✅ Ready Stage (wish/ready)
- Purpose: Prepare for conversion to regular development issue
- Activities: Final review, priority assignment, resource planning
- Output: Well-formed issue ready for development
4. 🗄️ Archived Stage (wish/archived)
- Purpose: Preserve ideas that won't be pursued currently
- Activities: Document decision rationale, mark for future consideration
- Output: Archived record with context
CLI Commands
Create a Wishlist Item
# Basic wish creation
markitect wish create "Smart document templates"
# With description and priority
markitect wish create "Real-time collaboration" \
--description "Enable multiple users to edit documents simultaneously" \
--priority high \
--stage discussion
List Wishlist Items
# List all wishlist items
markitect wish list
# Filter by stage
markitect wish list --stage discussion
markitect wish list --stage ready
# Different output formats
markitect wish list --format json
markitect wish list --format simple
Promote Wishlist Items
# Promote to next logical stage
markitect wish promote 86
# Promote to specific stage
markitect wish promote 86 --stage ready
Convert to Regular Issue
# Convert ready wish to regular issue
markitect wish convert 86
# Convert with custom title
markitect wish convert 86 --title "Implement smart document templates"
Labels and Organization
Core Labels
wish- Primary wishlist identifierwish/discussion- Currently being discussedwish/draft- Has initial specification draftwish/ready- Ready for developmentwish/archived- Archived or rejected
Additional Labels
priority/low|medium|high- Priority levelseffort/small|medium|large- Estimated effortcategory/ui|api|infrastructure- Feature categories
Issue Templates
Discussion Stage Template
## 💡 Feature Wish
**Summary**: [Brief description of the idea]
## Current Thinking
*What's the initial idea or inspiration?*
## Potential Benefits
*Why might this be valuable?*
## Questions to Explore
*What aspects need more thought?*
## Related Concepts
*Are there similar ideas or existing features this relates to?*
Draft Stage Template
## 📝 Feature Specification Draft
**Summary**: [Refined description]
## Requirements
### Functional Requirements
- [ ] Requirement 1
- [ ] Requirement 2
### Non-Functional Requirements
- [ ] Performance expectations
- [ ] Compatibility requirements
## Implementation Approach
*High-level approach and key considerations*
## Dependencies
*What other features or changes are needed?*
## Success Criteria
*How will we know this feature is successful?*
Best Practices
Creating Good Wishes
- Start Small: Begin with simple, focused ideas
- Be Specific: Include concrete examples when possible
- Ask Questions: Identify what needs exploration
- Link Related: Connect to existing features or issues
Discussion Guidelines
- Stay Open: All ideas deserve consideration
- Ask Clarifying Questions: Help refine the concept
- Share Examples: Provide concrete use cases
- Consider Alternatives: Explore different approaches
Promotion Criteria
Discussion → Draft
- Clear understanding of the problem
- Identified potential solutions
- Community interest confirmed
Draft → Ready
- Detailed requirements documented
- Implementation approach defined
- Dependencies identified
- Success criteria established
Ready → Regular Issue
- Complete specification
- Priority and effort estimated
- Development resources available
Examples
Example 1: Simple Wish Creation
markitect wish create "Export to PDF" \
--description "Allow users to export markdown documents to PDF format" \
--stage discussion
Example 2: Full Workflow
# 1. Create initial wish
markitect wish create "Smart document templates"
# 2. List and review wishes
markitect wish list --stage discussion
# 3. Promote after discussion
markitect wish promote 86 --stage draft
# 4. Add detailed specification (manual editing)
# 5. Promote when ready
markitect wish promote 86 --stage ready
# 6. Convert to development issue
markitect wish convert 86
Example 3: Wish Filtering
# Show only high-priority ready items
markitect wish list --stage ready | grep "priority/high"
# Export all wishes for analysis
markitect wish list --format json > wishlist-export.json
Integration with Development Process
Connecting to Regular Issues
- Converted wishes automatically reference original wishlist item
- Original wish is closed with link to new issue
- Maintains traceability from idea to implementation
Project Planning
- Use
wish/readyitems for sprint planning - Filter by priority and effort for roadmap planning
- Track conversion rate from wishes to implemented features
Community Engagement
- Encourage team members to create wishes freely
- Use wishlist for user feedback and feature requests
- Regular review meetings to promote wishes through stages
Reporting and Analytics
Useful Queries
# Count wishes by stage
markitect wish list --format json | jq 'group_by(.labels[].name | select(startswith("wish/"))) | map({stage: .[0].labels[].name, count: length})'
# Find oldest wishes needing attention
markitect wish list --stage discussion --format json | jq 'sort_by(.created_at) | .[0:5]'
# Track conversion success rate
# (Count of converted wishes vs total wishes created)
Metrics to Track
- Creation Rate: How many wishes are being created
- Promotion Rate: How quickly wishes move through stages
- Conversion Rate: Percentage of wishes that become regular issues
- Stage Distribution: Where wishes tend to accumulate
Troubleshooting
Common Issues
"No wishlist items found"
- Check if labels were created properly:
tea label list | grep wish - Verify issue has correct labels
"Failed to promote wish"
- Ensure issue exists and you have permissions
- Check if labels are properly configured
Convert command fails
- Verify wish is in
readystage - Check issue permissions and repository access
Recovery Commands
# Manually add wish labels to existing issue
tea issue edit 86 --labels "wish,wish/discussion"
# Fix missing stage labels
tea issue edit 86 --labels "wish,wish/draft,priority/medium"
Maintenance
Regular Tasks
- Weekly Review: Check wishes in discussion stage
- Monthly Promotion: Move mature wishes to next stage
- Quarterly Cleanup: Archive stale or obsolete wishes
- Annual Analysis: Review wishlist effectiveness and process improvements
Automated Maintenance (Future)
- Auto-archive wishes inactive for 6+ months
- Remind assignees of wishes ready for promotion
- Generate wishlist health reports
The Feature Wishlist system transforms ad-hoc idea management into a structured, trackable process that ensures valuable insights are captured, refined, and eventually implemented.