docs(phase-03): evolve PROJECT.md after phase completion
This commit is contained in:
@@ -29,10 +29,14 @@ Reliable, persistent visibility into which services need updating — data never
|
|||||||
- ✓ Server struct replaces package-level globals (db, mu, webhookSecret) — Phase 2
|
- ✓ Server struct replaces package-level globals (db, mu, webhookSecret) — Phase 2
|
||||||
- ✓ Schema migrations via golang-migrate with embedded SQL files — Phase 2
|
- ✓ Schema migrations via golang-migrate with embedded SQL files — Phase 2
|
||||||
- ✓ Per-test in-memory databases for isolated, parallel-safe testing — Phase 2
|
- ✓ Per-test in-memory databases for isolated, parallel-safe testing — Phase 2
|
||||||
|
- ✓ PostgreSQL support via pgx/v5 with DATABASE_URL env var selection — Phase 3
|
||||||
|
- ✓ Separate PostgreSQL migration directory with baseline schema — Phase 3
|
||||||
|
- ✓ Docker Compose profiles for optional PostgreSQL service — Phase 3
|
||||||
|
- ✓ Cross-dialect UNIQUE constraint detection (case-insensitive) — Phase 3
|
||||||
|
|
||||||
### Active
|
### Active
|
||||||
|
|
||||||
- [ ] Add PostgreSQL support alongside SQLite (dual DB, user chooses)
|
- [ ] Bulk acknowledge (dismiss all, dismiss by group)
|
||||||
- [ ] Bulk acknowledge (dismiss all, dismiss by group)
|
- [ ] Bulk acknowledge (dismiss all, dismiss by group)
|
||||||
- [ ] Filtering and search across updates
|
- [ ] Filtering and search across updates
|
||||||
- [ ] In-dashboard new-update indicators (badge/counter/toast)
|
- [ ] In-dashboard new-update indicators (badge/counter/toast)
|
||||||
@@ -69,7 +73,9 @@ Reliable, persistent visibility into which services need updating — data never
|
|||||||
|
|
||||||
| Decision | Rationale | Outcome |
|
| Decision | Rationale | Outcome |
|
||||||
|----------|-----------|---------|
|
|----------|-----------|---------|
|
||||||
| Dual DB (SQLite + PostgreSQL) | SQLite is fine for simple setups, Postgres for users who want robustness | — Pending |
|
| Dual DB (SQLite + PostgreSQL) | SQLite is fine for simple setups, Postgres for users who want robustness | ✓ Phase 3 |
|
||||||
|
| DATABASE_URL as DB selector | Presence of DATABASE_URL activates PostgreSQL; absence falls back to SQLite with DB_PATH | ✓ Phase 3 |
|
||||||
|
| pgx/v5/stdlib over native pgx | Keeps both stores on database/sql for identical constructor signatures | ✓ Phase 3 |
|
||||||
| Fix SQLite bugs before adding features | Data trust is the #1 priority; features on a broken foundation waste effort | ✓ Phase 1 |
|
| Fix SQLite bugs before adding features | Data trust is the #1 priority; features on a broken foundation waste effort | ✓ Phase 1 |
|
||||||
| Store interface as persistence abstraction | 9 methods, no SQL in handlers; enables PostgreSQL swap without touching HTTP layer | ✓ Phase 2 |
|
| Store interface as persistence abstraction | 9 methods, no SQL in handlers; enables PostgreSQL swap without touching HTTP layer | ✓ Phase 2 |
|
||||||
| Server struct over package globals | Dependency injection via constructor; enables per-test isolated databases | ✓ Phase 2 |
|
| Server struct over package globals | Dependency injection via constructor; enables per-test isolated databases | ✓ Phase 2 |
|
||||||
@@ -94,4 +100,4 @@ This document evolves at phase transitions and milestone boundaries.
|
|||||||
4. Update Context with current state
|
4. Update Context with current state
|
||||||
|
|
||||||
---
|
---
|
||||||
*Last updated: 2026-03-24 after Phase 2 completion*
|
*Last updated: 2026-03-24 after Phase 3 completion*
|
||||||
|
|||||||
Reference in New Issue
Block a user