style(13-03): apply Prettier formatting across repo
Mechanical reformat — no logic changes. 398 files changed, 19125 insertions(+), 16457 deletions(-). Prettier 3.8.4 with .prettierrc (singleQuote:true, semi:true, tabWidth:2, trailingComma:all, printWidth:100). Isolated per D-13-08 for reviewability.
This commit is contained in:
@@ -33,7 +33,7 @@ Requirements for initial release. Each maps to roadmap phases.
|
||||
- [x] **CAL-05**: User can edit an existing event
|
||||
- [x] **CAL-06**: User can delete an event
|
||||
- [x] **CAL-07**: User can create a recurring event and see all its occurrences expanded correctly (single-occurrence editing deferred to v1.x)
|
||||
- [ ] **CAL-08**: Each member's personal Fastmail calendar is overlaid into the unified view — *spike-gated in Phase 1*; if cross-account CalDAV sharing proves infeasible, v1 falls back to shared-family-only and this moves to v1.x
|
||||
- [ ] **CAL-08**: Each member's personal Fastmail calendar is overlaid into the unified view — _spike-gated in Phase 1_; if cross-account CalDAV sharing proves infeasible, v1 falls back to shared-family-only and this moves to v1.x
|
||||
|
||||
### Lists
|
||||
|
||||
@@ -75,56 +75,56 @@ Deferred to a near-term follow-up release. Tracked but not in the v1 roadmap.
|
||||
|
||||
Explicitly excluded. Documented to prevent scope creep. Anti-features sourced from research (`.planning/research/FEATURES.md`).
|
||||
|
||||
| Feature | Reason |
|
||||
|---------|--------|
|
||||
| Email features | Members keep existing mail clients; never the product's job |
|
||||
| Self-hosted calendar server (Baikal/Radicale) | Fastmail hosts all calendars via CalDAV; one fewer service |
|
||||
| Vikunja / external task backend | Lists live in MariaDB; cross-ecosystem native task sync is impossible anyway |
|
||||
| React Native / App Store app | PWA delivers app-like UX without publishing overhead |
|
||||
| PostgreSQL | Not in the stack; MariaDB is the database |
|
||||
| Chores / rewards / star system | No children in the household; lists cover any task need |
|
||||
| Meal planning / recipe box | Separate domain, high cost; grocery list covers the coordination need |
|
||||
| Kids / sub-accounts | No children; irrelevant |
|
||||
| AI email-to-event import | Requires email access (out of scope) + LLM backend; privacy risk |
|
||||
| RSVP / invite flows (iTIP/iMIP) | Two people share one calendar; both attend by default |
|
||||
| Event-level comments / photos | Two people can text; adds chat/media storage for ~zero value |
|
||||
| Activity feed / audit log | Obvious with two users |
|
||||
| Multi-household / accounts at scale | One household, two hardcoded Authelia accounts |
|
||||
| Ads / monetization | Self-hosted; no revenue model |
|
||||
| Complex permissions / role tiers | Two equal partners with identical write access |
|
||||
| Offline-first with CRDT conflict resolution | Home WiFi is primary; optimistic updates + retry suffice |
|
||||
| Grocery delivery integration | Third-party dependency; not needed |
|
||||
| Feature | Reason |
|
||||
| --------------------------------------------- | ---------------------------------------------------------------------------- |
|
||||
| Email features | Members keep existing mail clients; never the product's job |
|
||||
| Self-hosted calendar server (Baikal/Radicale) | Fastmail hosts all calendars via CalDAV; one fewer service |
|
||||
| Vikunja / external task backend | Lists live in MariaDB; cross-ecosystem native task sync is impossible anyway |
|
||||
| React Native / App Store app | PWA delivers app-like UX without publishing overhead |
|
||||
| PostgreSQL | Not in the stack; MariaDB is the database |
|
||||
| Chores / rewards / star system | No children in the household; lists cover any task need |
|
||||
| Meal planning / recipe box | Separate domain, high cost; grocery list covers the coordination need |
|
||||
| Kids / sub-accounts | No children; irrelevant |
|
||||
| AI email-to-event import | Requires email access (out of scope) + LLM backend; privacy risk |
|
||||
| RSVP / invite flows (iTIP/iMIP) | Two people share one calendar; both attend by default |
|
||||
| Event-level comments / photos | Two people can text; adds chat/media storage for ~zero value |
|
||||
| Activity feed / audit log | Obvious with two users |
|
||||
| Multi-household / accounts at scale | One household, two hardcoded Authelia accounts |
|
||||
| Ads / monetization | Self-hosted; no revenue model |
|
||||
| Complex permissions / role tiers | Two equal partners with identical write access |
|
||||
| Offline-first with CRDT conflict resolution | Home WiFi is primary; optimistic updates + retry suffice |
|
||||
| Grocery delivery integration | Third-party dependency; not needed |
|
||||
|
||||
## Traceability
|
||||
|
||||
| Requirement | Phase | Status |
|
||||
|-------------|-------|--------|
|
||||
| AUTH-01 | Phase 1 | Pending |
|
||||
| AUTH-02 | Phase 1 | Pending |
|
||||
| AUTH-03 | Phase 1 | Pending |
|
||||
| CAL-01 | Phase 1 | Pending |
|
||||
| CAL-08 | Phase 1 | Pending |
|
||||
| CAL-02 | Phase 2 | Complete |
|
||||
| CAL-03 | Phase 2 | Complete |
|
||||
| CAL-04 | Phase 3 | Complete |
|
||||
| CAL-05 | Phase 3 | Complete |
|
||||
| CAL-06 | Phase 3 | Complete |
|
||||
| CAL-07 | Phase 3 | Complete |
|
||||
| PWA-01 | Phase 3 | Complete |
|
||||
| PWA-02 | Phase 3 | Complete |
|
||||
| LIST-01 | Phase 4 | Complete |
|
||||
| LIST-02 | Phase 4 | Complete |
|
||||
| LIST-03 | Phase 4 | Complete |
|
||||
| LIST-04 | Phase 4 | Complete |
|
||||
| NOTIF-01 | Phase 5 | Complete |
|
||||
| NOTIF-02 | Phase 5 | Complete |
|
||||
| NOTIF-03 | Phase 5 | Complete |
|
||||
| CAL-09 | v1.x | Deferred |
|
||||
| CAL-10 | v1.x | Deferred |
|
||||
| CAL-11 | v1.x | Deferred |
|
||||
| CAL-12 | v1.x | Deferred |
|
||||
| DISP-01 | v2 | Deferred |
|
||||
| DISP-02 | v2 | Deferred |
|
||||
| Requirement | Phase | Status |
|
||||
| ----------- | ------- | -------- |
|
||||
| AUTH-01 | Phase 1 | Pending |
|
||||
| AUTH-02 | Phase 1 | Pending |
|
||||
| AUTH-03 | Phase 1 | Pending |
|
||||
| CAL-01 | Phase 1 | Pending |
|
||||
| CAL-08 | Phase 1 | Pending |
|
||||
| CAL-02 | Phase 2 | Complete |
|
||||
| CAL-03 | Phase 2 | Complete |
|
||||
| CAL-04 | Phase 3 | Complete |
|
||||
| CAL-05 | Phase 3 | Complete |
|
||||
| CAL-06 | Phase 3 | Complete |
|
||||
| CAL-07 | Phase 3 | Complete |
|
||||
| PWA-01 | Phase 3 | Complete |
|
||||
| PWA-02 | Phase 3 | Complete |
|
||||
| LIST-01 | Phase 4 | Complete |
|
||||
| LIST-02 | Phase 4 | Complete |
|
||||
| LIST-03 | Phase 4 | Complete |
|
||||
| LIST-04 | Phase 4 | Complete |
|
||||
| NOTIF-01 | Phase 5 | Complete |
|
||||
| NOTIF-02 | Phase 5 | Complete |
|
||||
| NOTIF-03 | Phase 5 | Complete |
|
||||
| CAL-09 | v1.x | Deferred |
|
||||
| CAL-10 | v1.x | Deferred |
|
||||
| CAL-11 | v1.x | Deferred |
|
||||
| CAL-12 | v1.x | Deferred |
|
||||
| DISP-01 | v2 | Deferred |
|
||||
| DISP-02 | v2 | Deferred |
|
||||
|
||||
**Coverage:**
|
||||
|
||||
@@ -134,5 +134,6 @@ Explicitly excluded. Documented to prevent scope creep. Anti-features sourced fr
|
||||
- Deferred (not in v1 scope): 6 — CAL-09…CAL-12 (v1.x), DISP-01/DISP-02 (v2)
|
||||
|
||||
---
|
||||
*Requirements defined: 2026-06-03*
|
||||
*Last updated: 2026-06-10 — added deferred REQ-IDs (CAL-09…CAL-12, DISP-01/02) to traceability table*
|
||||
|
||||
_Requirements defined: 2026-06-03_
|
||||
_Last updated: 2026-06-10 — added deferred REQ-IDs (CAL-09…CAL-12, DISP-01/02) to traceability table_
|
||||
|
||||
Reference in New Issue
Block a user