Planning reset: v2 roadmap and phase 4-7 structure
This commit is contained in:
80
.planning/REQUIREMENTS.md
Normal file
80
.planning/REQUIREMENTS.md
Normal file
@@ -0,0 +1,80 @@
|
||||
# TFM aInventory — V2 Requirements
|
||||
|
||||
## V1 Foundation (Validated & Stable)
|
||||
|
||||
All v1 features are locked. These are proven valuable:
|
||||
|
||||
- ✓ Item inventory with barcode/part number/quantity tracking
|
||||
- ✓ Offline QR/barcode scanning
|
||||
- ✓ AI-powered label extraction from photos
|
||||
- ✓ LDAP authentication + credential caching for offline work
|
||||
- ✓ Admin dashboard (users, categories, config, audit logs)
|
||||
- ✓ PWA with offline sync (IndexedDB + UUID idempotency)
|
||||
- ✓ Image adjustment (rotation only) in onboarding flow
|
||||
- ✓ Audit logging (immutable, never deleted)
|
||||
|
||||
## V2 Scope — Phase 4 & 5 (TBD)
|
||||
|
||||
### Must-Have (Table Stakes)
|
||||
|
||||
- [ ] **Mobile UX Polish**: Responsive gesture handling, small-screen affordance fixes, touch-friendly controls
|
||||
- [ ] **Field User Research**: Validate assumptions from 1+ deployed locations; capture pain points
|
||||
- [ ] **Documentation**: Config management guide, deployment runbook, AI provider setup
|
||||
|
||||
### Should-Have (High Value)
|
||||
|
||||
- [ ] **Batch Operations UI**: Multi-item selection + bulk actions (stock adjustment, deletion, relocation)
|
||||
- [ ] **Search & Filtering**: Find items by name/PN/barcode; filter by category or location
|
||||
- [ ] **Export/Reports**: CSV export of inventory state, audit trails for compliance
|
||||
- [ ] **Box Label Printing**: Standardized thermal label layout (improve on current SVG generation)
|
||||
- [ ] **Deployment Docs**: Runbook for single-instance setup (Docker, LDAP integration, offline mode)
|
||||
|
||||
### Nice-to-Have (Deferred to V3)
|
||||
|
||||
- [ ] Advanced analytics (inventory trends, turnover rates)
|
||||
- [ ] Multi-warehouse support (federation, inter-location transfers)
|
||||
- [ ] Custom field schemas (Item type extension)
|
||||
- [ ] Real-time sync (WebSocket updates for concurrent admin sessions)
|
||||
- [ ] Localization (multi-language UI)
|
||||
|
||||
## Success Criteria
|
||||
|
||||
### For V2 Launch
|
||||
|
||||
- [ ] Mobile UX tested with 3+ field users; zero critical usability blockers
|
||||
- [ ] Documentation complete (setup, deployment, config)
|
||||
- [ ] Batch operations reduce bulk work by 50%+ compared to v1
|
||||
|
||||
### For Ongoing Stability
|
||||
|
||||
- [ ] Zero data loss incidents in offline sync (100% UUID idempotency)
|
||||
- [ ] Audit logs complete (all CRUD ops logged, deletions traced)
|
||||
- [ ] Performance: Scan-to-save < 2 seconds; bulk sync < 30 seconds
|
||||
|
||||
## Out of Scope (Rationale)
|
||||
|
||||
- **Cropping**: Rotation covers 90% of rotated/skewed image issues; add if feedback demands it
|
||||
- **Multi-tenancy**: Single-instance per organization; federation is v3+
|
||||
- **Real-time collab**: Async batch workflow matches field ops; collab adds complexity without value
|
||||
- **Custom field schemas**: Predefined Item/Category structure has proven sufficient in deployments
|
||||
|
||||
## Assumptions
|
||||
|
||||
- **Field deployments are active**: At least 1-2 live sites using v1.14.6
|
||||
- **LDAP available**: Enterprise directory integration is mandatory (no guest mode)
|
||||
- **SQLite sufficient**: Single-instance, no sharding/replication needed for v2
|
||||
- **AI providers stable**: Gemini + Claude APIs continue to be available and affordable
|
||||
- **Offline sync works**: UUID idempotency prevents data loss (validated in v1)
|
||||
|
||||
## Acceptance Criteria Template
|
||||
|
||||
For each requirement, specify:
|
||||
|
||||
- **What**: Feature description (1-2 sentences)
|
||||
- **Why**: Business/user value
|
||||
- **How**: Technical approach (can be refined during phase planning)
|
||||
- **Done**: Success metric (tests, UX validation, performance target)
|
||||
|
||||
---
|
||||
|
||||
*Last updated: 2026-04-22 during reset*
|
||||
Reference in New Issue
Block a user