docs: archive v1.3 and v2.0 milestones with roadmap, requirements, and retrospective
This commit is contained in:
@@ -9,43 +9,43 @@ Requirements for this milestone. Each maps to roadmap phases.
|
||||
|
||||
### Database Migration
|
||||
|
||||
- [ ] **DB-01**: Application runs on PostgreSQL instead of SQLite
|
||||
- [ ] **DB-02**: All service functions use async database operations
|
||||
- [ ] **DB-03**: Test infrastructure uses PGlite instead of bun:sqlite in-memory databases
|
||||
- [ ] **DB-04**: Existing SQLite data can be migrated to Postgres via a one-time script
|
||||
- [ ] **DB-05**: Docker Compose provides Postgres for local development
|
||||
- [x] **DB-01**: Application runs on PostgreSQL instead of SQLite
|
||||
- [x] **DB-02**: All service functions use async database operations
|
||||
- [x] **DB-03**: Test infrastructure uses PGlite instead of bun:sqlite in-memory databases
|
||||
- [x] **DB-04**: Existing SQLite data can be migrated to Postgres via a one-time script
|
||||
- [x] **DB-05**: Docker Compose provides Postgres for local development
|
||||
|
||||
### Authentication
|
||||
|
||||
- [ ] **AUTH-01**: User can register an account via external OIDC auth provider
|
||||
- [ ] **AUTH-02**: User can log in via external auth provider and access their data
|
||||
- [ ] **AUTH-03**: API keys remain functional for programmatic access (MCP, scripts)
|
||||
- [ ] **AUTH-04**: Auth provider runs self-hosted alongside the application
|
||||
- [ ] **AUTH-05**: E2E tests authenticate via API keys without depending on the auth provider
|
||||
- [x] **AUTH-01**: User can register an account via external OIDC auth provider
|
||||
- [x] **AUTH-02**: User can log in via external auth provider and access their data
|
||||
- [x] **AUTH-03**: API keys remain functional for programmatic access (MCP, scripts)
|
||||
- [x] **AUTH-04**: Auth provider runs self-hosted alongside the application
|
||||
- [x] **AUTH-05**: E2E tests authenticate via API keys without depending on the auth provider
|
||||
|
||||
### Multi-User Data Model
|
||||
|
||||
- [ ] **MULTI-01**: Every item, category, thread, and setup is owned by a specific user
|
||||
- [ ] **MULTI-02**: User can only see and modify their own data (cross-user isolation)
|
||||
- [ ] **MULTI-03**: Categories use composite unique constraint (userId + name)
|
||||
- [ ] **MULTI-04**: Existing data is assigned to the original user during migration
|
||||
- [ ] **MULTI-05**: MCP tools operate within the authenticated user's scope
|
||||
- [ ] **MULTI-06**: Settings are per-user rather than global
|
||||
- [x] **MULTI-01**: Every item, category, thread, and setup is owned by a specific user
|
||||
- [x] **MULTI-02**: User can only see and modify their own data (cross-user isolation)
|
||||
- [x] **MULTI-03**: Categories use composite unique constraint (userId + name)
|
||||
- [x] **MULTI-04**: Existing data is assigned to the original user during migration
|
||||
- [x] **MULTI-05**: MCP tools operate within the authenticated user's scope
|
||||
- [x] **MULTI-06**: Settings are per-user rather than global
|
||||
|
||||
### Image Storage
|
||||
|
||||
- [ ] **IMG-01**: Images are stored in MinIO (S3-compatible) instead of local filesystem
|
||||
- [ ] **IMG-02**: Existing uploaded images are migrated to MinIO
|
||||
- [ ] **IMG-03**: Image upload and retrieval work through the new storage layer
|
||||
- [ ] **IMG-04**: Docker Compose provides MinIO for local development
|
||||
- [x] **IMG-01**: Images are stored in MinIO (S3-compatible) instead of local filesystem
|
||||
- [x] **IMG-02**: Existing uploaded images are migrated to MinIO
|
||||
- [x] **IMG-03**: Image upload and retrieval work through the new storage layer
|
||||
- [x] **IMG-04**: Docker Compose provides MinIO for local development
|
||||
|
||||
### Global Item Database
|
||||
|
||||
- [ ] **GLOB-01**: A global item catalog exists with brand, model, category, manufacturer specs, and image
|
||||
- [ ] **GLOB-02**: Global catalog is seeded with initial items from manufacturer data
|
||||
- [ ] **GLOB-03**: User can search the global catalog by name or brand
|
||||
- [ ] **GLOB-04**: User can link a personal collection item to a global catalog entry
|
||||
- [ ] **GLOB-05**: Global item pages show basic info and owner count
|
||||
- [x] **GLOB-01**: A global item catalog exists with brand, model, category, manufacturer specs, and image
|
||||
- [x] **GLOB-02**: Global catalog is seeded with initial items from manufacturer data
|
||||
- [x] **GLOB-03**: User can search the global catalog by name or brand
|
||||
- [x] **GLOB-04**: User can link a personal collection item to a global catalog entry
|
||||
- [x] **GLOB-05**: Global item pages show basic info and owner count
|
||||
|
||||
### Catalog-Driven Gear Flow
|
||||
|
||||
@@ -140,37 +140,36 @@ Which phases cover which requirements. Updated during roadmap creation.
|
||||
|
||||
| Requirement | Phase | Status |
|
||||
|-------------|-------|--------|
|
||||
| DB-01 | Phase 14 | Pending |
|
||||
| DB-02 | Phase 14 | Pending |
|
||||
| DB-03 | Phase 14 | Pending |
|
||||
| DB-04 | Phase 14 | Pending |
|
||||
| DB-05 | Phase 14 | Pending |
|
||||
| AUTH-01 | Phase 15 | Pending |
|
||||
| AUTH-02 | Phase 15 | Pending |
|
||||
| AUTH-03 | Phase 15 | Pending |
|
||||
| AUTH-04 | Phase 15 | Pending |
|
||||
| AUTH-05 | Phase 15 | Pending |
|
||||
| MULTI-01 | Phase 16 | Pending |
|
||||
| MULTI-02 | Phase 16 | Pending |
|
||||
| MULTI-03 | Phase 16 | Pending |
|
||||
| MULTI-04 | Phase 16 | Pending |
|
||||
| MULTI-05 | Phase 16 | Pending |
|
||||
| MULTI-06 | Phase 16 | Pending |
|
||||
| IMG-01 | Phase 17 | Pending |
|
||||
| IMG-02 | Phase 17 | Pending |
|
||||
| IMG-03 | Phase 17 | Pending |
|
||||
| IMG-04 | Phase 17 | Pending |
|
||||
| GLOB-01 | Phase 18 | Pending |
|
||||
| GLOB-02 | Phase 18 | Pending |
|
||||
| GLOB-03 | Phase 18 | Pending |
|
||||
| GLOB-04 | Phase 18 | Pending |
|
||||
| GLOB-05 | Phase 18 | Pending |
|
||||
| DB-01 | Phase 14 | Complete |
|
||||
| DB-02 | Phase 14 | Complete |
|
||||
| DB-03 | Phase 14 | Complete |
|
||||
| DB-04 | Phase 14 | Complete |
|
||||
| DB-05 | Phase 14 | Complete |
|
||||
| AUTH-01 | Phase 15 | Complete |
|
||||
| AUTH-02 | Phase 15 | Complete |
|
||||
| AUTH-03 | Phase 15 | Complete |
|
||||
| AUTH-04 | Phase 15 | Complete |
|
||||
| AUTH-05 | Phase 15 | Complete |
|
||||
| MULTI-01 | Phase 16 | Complete |
|
||||
| MULTI-02 | Phase 16 | Complete |
|
||||
| MULTI-03 | Phase 16 | Complete |
|
||||
| MULTI-04 | Phase 16 | Complete |
|
||||
| MULTI-05 | Phase 16 | Complete |
|
||||
| MULTI-06 | Phase 16 | Complete |
|
||||
| IMG-01 | Phase 17 | Complete |
|
||||
| IMG-02 | Phase 17 | Complete |
|
||||
| IMG-03 | Phase 17 | Complete |
|
||||
| IMG-04 | Phase 17 | Complete |
|
||||
| GLOB-01 | Phase 18 | Complete |
|
||||
| GLOB-02 | Phase 18 | Complete |
|
||||
| GLOB-03 | Phase 18 | Complete |
|
||||
| GLOB-04 | Phase 18 | Complete |
|
||||
| GLOB-05 | Phase 18 | Complete |
|
||||
| PROF-01 | Phase 18 | Complete |
|
||||
| PROF-02 | Phase 18 | Complete |
|
||||
| PROF-03 | Phase 18 | Complete |
|
||||
| PROF-04 | Phase 18 | Complete |
|
||||
| PROF-05 | Phase 18 | Complete |
|
||||
|
||||
| CATFLOW-01 | Phase 20 | Complete |
|
||||
| CATFLOW-02 | Phase 20 | Complete |
|
||||
| CATFLOW-03 | Phase 19, 22 | Complete |
|
||||
@@ -181,9 +180,9 @@ Which phases cover which requirements. Updated during roadmap creation.
|
||||
| CATFLOW-08 | Phase 23 | Complete |
|
||||
| TAG-01 | Phase 19 | Complete |
|
||||
| TAG-02 | Phase 19 | Complete |
|
||||
| DETAIL-01 | Phase 21 | Pending |
|
||||
| DETAIL-02 | Phase 21 | Pending |
|
||||
| DETAIL-03 | Phase 21 | Pending |
|
||||
| DETAIL-01 | Phase 21 | Complete |
|
||||
| DETAIL-02 | Phase 21 | Complete |
|
||||
| DETAIL-03 | Phase 21 | Complete |
|
||||
| DETAIL-04 | Phase 21 | Complete |
|
||||
| DETAIL-05 | Phase 21 | Complete |
|
||||
|
||||
@@ -194,4 +193,4 @@ Which phases cover which requirements. Updated during roadmap creation.
|
||||
|
||||
---
|
||||
*Requirements defined: 2026-04-03*
|
||||
*Last updated: 2026-04-03 after roadmap creation*
|
||||
*Last updated: 2026-04-08 — all v2.0 requirements complete*
|
||||
|
||||
Reference in New Issue
Block a user