Files
GearBox/.planning/REQUIREMENTS.md
Jean-Luc Makiola a9f802ab68 docs(07-02): complete weight unit UI wiring plan
- Created 07-02-SUMMARY.md with task commits and deviations
- Updated STATE.md: Phase 7 complete, progress 100%
- Updated ROADMAP.md: Phase 07 marked complete
- Marked UNIT-01 requirement complete in REQUIREMENTS.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 12:25:22 +01:00

120 lines
4.5 KiB
Markdown

# Requirements: GearBox v1.2 Collection Power-Ups
**Defined:** 2026-03-16
**Core Value:** Make it effortless to manage gear and plan new purchases -- see how a potential buy affects your total setup weight and cost before committing.
## v1.2 Requirements
Requirements for this milestone. Each maps to roadmap phases.
### Search & Filter
- [ ] **SRCH-01**: User can search items by name with instant filtering as they type
- [ ] **SRCH-02**: User can filter collection items by category via dropdown
- [ ] **SRCH-03**: User can combine text search with category filter simultaneously
- [ ] **SRCH-04**: User can see result count when filters are active (e.g., "showing 12 of 47 items")
- [ ] **SRCH-05**: User can clear all active filters with one action
### Weight Units
- [x] **UNIT-01**: User can select preferred weight unit (g, oz, lb, kg) from settings
- [x] **UNIT-02**: All weight displays across the app reflect the selected unit
- [x] **UNIT-03**: Weight unit preference persists across sessions
### Weight Classification
- [ ] **CLAS-01**: User can classify each item within a setup as base weight, worn, or consumable
- [ ] **CLAS-02**: Setup totals display base weight, worn weight, consumable weight, and total separately
- [ ] **CLAS-03**: Items default to "base weight" classification when added to a setup
- [ ] **CLAS-04**: Same item can have different classifications in different setups
### Weight Visualization
- [ ] **VIZZ-01**: User can view a donut chart showing weight distribution by category in a setup
- [ ] **VIZZ-02**: User can toggle chart between category view and classification view (base/worn/consumable)
- [ ] **VIZZ-03**: User can hover chart segments to see category name, weight, and percentage
### Candidate Status
- [ ] **CAND-01**: Each candidate displays a status badge (researching, ordered, or arrived)
- [ ] **CAND-02**: User can change a candidate's status via click interaction
- [ ] **CAND-03**: New candidates default to "researching" status
### Planning UI
- [ ] **PLAN-01**: Planning category filter dropdown shows Lucide icons alongside category names
## Future Requirements
Deferred to future milestones. Tracked but not in current roadmap.
### Planning Enhancements
- **COMP-01**: User can compare candidates side-by-side on weight and price
- **RANK-01**: User can rank/prioritize candidates within a thread
- **IMPC-01**: User can preview how a candidate affects setup weight/cost before resolving
### Data Management
- **DATA-01**: User can import gear collection from CSV
- **DATA-02**: User can export gear collection to CSV
### Social & Multi-User
- **SOCL-01**: User can create an account with authentication
- **SOCL-02**: User can share collections and setups publicly
- **SOCL-03**: User can view other users' public profiles and setups
### Automation
- **AUTO-01**: System can auto-fill product information (price, weight, images) from external sources
## Out of Scope
Explicitly excluded. Documented to prevent scope creep.
| Feature | Reason |
|---------|--------|
| Per-item weight input in multiple units | Parsing complexity, ambiguous storage -- display-only conversion is sufficient |
| Interactive chart drill-down (click to zoom) | Adds significant interaction complexity for minimal value |
| Weight goals / targets | Opinionated norms conflict with hobby-agnostic design |
| Custom classification labels | base/worn/consumable covers 95% of use cases |
| Server-side full-text search | Premature for single-user app with <1000 items |
| Classification at item level (not setup level) | Same item has different roles in different setups |
| Status change timestamps | Useful but adds schema complexity -- defer |
## Traceability
Which phases cover which requirements. Updated during roadmap creation.
| Requirement | Phase | Status |
|-------------|-------|--------|
| SRCH-01 | Phase 8 | Pending |
| SRCH-02 | Phase 8 | Pending |
| SRCH-03 | Phase 8 | Pending |
| SRCH-04 | Phase 8 | Pending |
| SRCH-05 | Phase 8 | Pending |
| UNIT-01 | Phase 7 | Complete |
| UNIT-02 | Phase 7 | Complete |
| UNIT-03 | Phase 7 | Complete |
| CLAS-01 | Phase 9 | Pending |
| CLAS-02 | Phase 9 | Pending |
| CLAS-03 | Phase 9 | Pending |
| CLAS-04 | Phase 9 | Pending |
| VIZZ-01 | Phase 9 | Pending |
| VIZZ-02 | Phase 9 | Pending |
| VIZZ-03 | Phase 9 | Pending |
| CAND-01 | Phase 8 | Pending |
| CAND-02 | Phase 8 | Pending |
| CAND-03 | Phase 8 | Pending |
| PLAN-01 | Phase 8 | Pending |
**Coverage:**
- v1.2 requirements: 19 total
- Mapped to phases: 19
- Unmapped: 0
---
*Requirements defined: 2026-03-16*
*Last updated: 2026-03-16 after roadmap creation*