Files
GearBox/.planning/MILESTONES.md
Jean-Luc Makiola f564e8cb54
All checks were successful
CI / ci (push) Successful in 1m7s
CI / e2e (push) Has been skipped
CI / deploy (push) Successful in 7s
docs: archive v1.3 and v2.0 milestones with roadmap, requirements, and retrospective
2026-04-08 23:10:50 +02:00

4.6 KiB

Milestones

v2.0 Platform Foundation (Shipped: 2026-04-08)

Phases completed: 10 phases, 32 plans Timeline: 22 days (2026-03-17 to 2026-04-08) Codebase: 23,970 LOC TypeScript (17,859 src + 6,111 tests), 210 files changed (+47,370 / -2,244)

Key accomplishments:

  • PostgreSQL migration: 13 pgTable definitions, async services, PGlite test infrastructure, Docker Compose
  • External OIDC authentication via Logto with three-way auth middleware (browser sessions, API keys, MCP OAuth)
  • Multi-user data model with userId on all entities, cross-user isolation, and composite constraints
  • S3 object storage via MinIO replacing local filesystem for all image operations
  • Global item catalog with search, owner count aggregation, idempotent seeding, and 18-item bikepacking catalog
  • User profiles with avatar, bio, public setup sharing, and visibility toggle
  • Reference item model with COALESCE merge pattern for transparent global-to-personal data overlay
  • Tag system for global item discovery with AND-filtered search
  • Global FAB with animated mini menu and full-screen catalog search overlay with tag chip filtering
  • Item and catalog detail pages replacing slide-out panels, with edit mode toggle
  • Add-from-catalog flow for both collection items and thread candidates
  • Manual entry fallback with non-functional catalog submission prompt

Archive: .planning/milestones/v2.0-ROADMAP.md, .planning/milestones/v2.0-REQUIREMENTS.md


v1.3 Research & Decision Tools (Shipped: 2026-04-08)

Phases completed: 4 phases, 6 plans Timeline: 23 days (2026-03-16 to 2026-04-08) Codebase: ~8,300 LOC TypeScript, 52 files changed (+3,106 / -158)

Key accomplishments:

  • Pros/cons text fields on candidates with full-stack support (schema, service, Zod, form, card indicator)
  • Candidate ranking with sortOrder column, drag-to-reorder UI, and gold/silver/bronze rank badges
  • Side-by-side comparison table with sticky labels, weight/price delta highlighting, and resolved-thread winner marking
  • Setup impact preview showing per-candidate weight and cost deltas against a selected setup with replacement detection

Archive: .planning/milestones/v1.3-ROADMAP.md, .planning/milestones/v1.3-REQUIREMENTS.md


v1.2 Collection Power-Ups (Shipped: 2026-03-16)

Phases completed: 3 phases, 6 plans, 11 tasks Timeline: 3 days (2026-03-14 → 2026-03-16) Codebase: 7,310 LOC TypeScript, 66 files changed (+7,243 / -206)

Key accomplishments:

  • Weight unit conversion (g/oz/lb/kg) with segmented toggle wired across all 8 display call sites
  • Candidate status tracking (researching/ordered/arrived) with clickable StatusBadge popup
  • Sticky search/filter toolbar with text search and icon-aware CategoryFilterDropdown
  • Per-setup item classification (base/worn/consumable) with click-to-cycle badge
  • Recharts donut chart with category/classification toggle, hover tooltips, and weight subtotals
  • Classification-preserving sync that maintains metadata across atomic setup re-sync

Archive: .planning/milestones/v1.2-ROADMAP.md, .planning/milestones/v1.2-REQUIREMENTS.md


v1.1 Fixes & Polish (Shipped: 2026-03-15)

Phases completed: 3 phases, 7 plans Timeline: 1 day (2026-03-15) Codebase: 6,134 LOC TypeScript, 65 files changed (+5,049 / -1,109)

Key accomplishments:

  • Fixed threads table and thread creation with categoryId support, modal dialog flow
  • Overhauled planning tab with educational empty state, pill tabs, and category filter
  • Fixed image display bug (Zod schemas missing imageFilename — silently stripped by validator)
  • Redesigned image upload as hero preview area with 4:3 placeholders on all cards
  • Migrated categories from emoji to Lucide icons with 119-icon curated picker
  • Built IconPicker component with search, 8 group tabs, portal popover

Archive: .planning/milestones/v1.1-ROADMAP.md, .planning/milestones/v1.1-REQUIREMENTS.md


v1.0 MVP (Shipped: 2026-03-15)

Phases completed: 3 phases, 10 plans Timeline: 2 days (2026-03-14 → 2026-03-15) Codebase: 5,742 LOC TypeScript, 53 commits, 114 files

Key accomplishments:

  • Full gear collection with item CRUD, categories, weight/cost totals, and image uploads
  • Planning threads with candidate comparison and thread resolution into collection
  • Named setups (loadouts) composed from collection items with live totals
  • Dashboard home page with summary cards linking to all features
  • Onboarding wizard for first-time setup experience
  • Complete test suite with service-level and route-level integration tests

Archive: .planning/milestones/v1.0-ROADMAP.md, .planning/milestones/v1.0-REQUIREMENTS.md