# Roadmap: GearBox

## Overview

GearBox delivers a gear management and purchase planning web app in three phases. Phase 1 establishes the foundation and builds the complete gear collection feature — the core entity everything else depends on. Phase 2 adds planning threads, the product's differentiator, enabling structured purchase research with candidate comparison and thread resolution into the collection. Phase 3 completes the app with named setups (loadouts composed from collection items) and the dashboard home page that ties everything together.

## Phases

**Phase Numbering:**
- Integer phases (1, 2, 3): Planned milestone work
- Decimal phases (2.1, 2.2): Urgent insertions (marked with INSERTED)

Decimal phases appear between their surrounding integers in numeric order.

- [x] **Phase 1: Foundation and Collection** - Project scaffolding, data model, and complete gear item CRUD with categories and totals (completed 2026-03-14)
- [x] **Phase 2: Planning Threads** - Purchase research workflow with candidates, comparison, and thread resolution (completed 2026-03-15)
- [x] **Phase 3: Setups and Dashboard** - Named loadouts from collection items and dashboard home page (completed 2026-03-15)

## Phase Details

### Phase 1: Foundation and Collection
**Goal**: Users can catalog their gear collection with full item details, organize by category, and see aggregate weight and cost totals
**Depends on**: Nothing (first phase)
**Requirements**: COLL-01, COLL-02, COLL-03, COLL-04
**Success Criteria** (what must be TRUE):
  1. User can add a gear item with name, weight, price, category, notes, and product link and see it in their collection
  2. User can edit any field on an existing item and delete items they no longer want
  3. User can create, rename, and delete categories, and every item belongs to a user-defined category
  4. User can see automatic weight and cost totals per category and for the entire collection
  5. The app runs as a single Bun process with SQLite storage and serves a clean, minimalist UI
**Plans:** 4/4 plans complete

Plans:
- [ ] 01-01-PLAN.md — Project scaffolding, DB schema, shared schemas, and test infrastructure
- [ ] 01-02-PLAN.md — Backend API: item CRUD, category CRUD, totals, image upload with tests
- [ ] 01-03-PLAN.md — Frontend collection UI: card grid, slide-out panel, category picker, totals bar
- [ ] 01-04-PLAN.md — Onboarding wizard and visual verification checkpoint

### Phase 2: Planning Threads
**Goal**: Users can research potential purchases through planning threads — adding candidates, comparing them, and resolving a thread by picking a winner that moves into their collection
**Depends on**: Phase 1
**Requirements**: THRD-01, THRD-02, THRD-03, THRD-04
**Success Criteria** (what must be TRUE):
  1. User can create a planning thread with a descriptive name and see it in a threads list
  2. User can add candidate products to a thread with weight, price, notes, and product link
  3. User can edit and remove candidates from an active thread
  4. User can resolve a thread by selecting a winning candidate, which automatically creates a new item in their collection and archives the thread
**Plans:** 3/3 plans complete

Plans:
- [ ] 02-01-PLAN.md — Backend API: thread/candidate CRUD, resolution transaction, with TDD
- [ ] 02-02-PLAN.md — Frontend: tab navigation, thread list, candidate UI, resolution flow
- [ ] 02-03-PLAN.md — Visual verification checkpoint

### Phase 3: Setups and Dashboard
**Goal**: Users can compose named loadouts from their collection items with live totals, and navigate the app through a dashboard home page
**Depends on**: Phase 1, Phase 2
**Requirements**: SETP-01, SETP-02, SETP-03, DASH-01
**Success Criteria** (what must be TRUE):
  1. User can create a named setup (e.g. "Summer Bikepacking") and see it in a setups list
  2. User can add and remove collection items from a setup
  3. User can see total weight and cost for a setup, computed live from current item data
  4. User sees a dashboard home page with cards linking to their collection, active threads, and setups
**Plans:** 3/3 plans complete

Plans:
- [ ] 03-01-PLAN.md — Backend TDD: setup schema, service, routes, and tests with junction table
- [ ] 03-02-PLAN.md — Frontend: navigation restructure, dashboard, setup UI, and item picker
- [ ] 03-03-PLAN.md — Visual verification checkpoint

## Progress

**Execution Order:**
Phases execute in numeric order: 1 -> 2 -> 3

| Phase | Plans Complete | Status | Completed |
|-------|----------------|--------|-----------|
| 1. Foundation and Collection | 4/4 | Complete    | 2026-03-14 |
| 2. Planning Threads | 3/3 | Complete    | 2026-03-15 |
| 3. Setups and Dashboard | 3/3 | Complete   | 2026-03-15 |
