docs: final roadmap update with Serwist SW, toast fallback, Pomodoro celebration commits

This commit is contained in:
saravanakumardb1 2026-02-27 21:24:36 -08:00
parent 35f53e87f5
commit 445e25bee1

View File

@ -130,11 +130,11 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
- [x] **Notifications (`lib/notifications.ts`)** ([da4f3b5](https://github.com/saravanakumardb1/learning_ai_clock/commit/da4f3b5))
- [x] Request notification permission on first timer creation
- [ ] Service Worker registration via Serwist (`@serwist/next`)
- [x] Service Worker registration via Serwist (`@serwist/next`) ([28dfa9f](https://github.com/saravanakumardb1/learning_ai_clock/commit/28dfa9f))
- [x] Schedule pre-warning notifications at cascade timestamps
- [x] Different notification styles per urgency (title, body, icon, sound tag)
- [x] Notification click → open app to timer detail
- [ ] Fallback: in-app toast if notifications denied
- [x] Fallback: in-app toast if notifications denied ([a1120a5](https://github.com/saravanakumardb1/learning_ai_clock/commit/a1120a5))
- [x] **Sound system (`lib/sounds.ts`)** ([b39652a](https://github.com/saravanakumardb1/learning_ai_clock/commit/b39652a))
- [x] Web Audio API setup with AudioContext
@ -161,7 +161,7 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
- [x] Visual progress ring showing time remaining (`CountdownRing.tsx`)
- [x] Round counter (e.g., "Round 2 of 4") with dot indicators
- [x] Auto-transition between work and break
- [ ] Session complete celebration
- [x] Session complete celebration (trophy + stats) ([35f53e8](https://github.com/saravanakumardb1/learning_ai_clock/commit/35f53e8))
- [x] **Dark + light theme** ([2a4d66f](https://github.com/saravanakumardb1/learning_ai_clock/commit/2a4d66f))
- [x] System preference detection (`prefers-color-scheme`) ([d2b5563](https://github.com/saravanakumardb1/learning_ai_clock/commit/d2b5563))
@ -169,10 +169,10 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
- [x] Theme persisted to localStorage
- [x] All components themed via CSS custom properties (`--cm-*`)
- [x] **PWA setup** (partial) ([ace036b](https://github.com/saravanakumardb1/learning_ai_clock/commit/ace036b))
- [ ] Serwist service worker configuration
- [x] **PWA setup** ([ace036b](https://github.com/saravanakumardb1/learning_ai_clock/commit/ace036b), [28dfa9f](https://github.com/saravanakumardb1/learning_ai_clock/commit/28dfa9f))
- [x] Serwist service worker configuration ([28dfa9f](https://github.com/saravanakumardb1/learning_ai_clock/commit/28dfa9f))
- [x] Web app manifest (name, icons, theme color, display: standalone)
- [ ] Offline support: app shell cached, timers work offline
- [x] Offline support: app shell cached via Serwist precache + runtime cache
- [ ] Install prompt UI ("Add to home screen" banner)
- [x] PWA metadata in layout (apple-web-app-capable, theme-color)
@ -207,8 +207,8 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
- [x] Focus indicators on all interactive elements (`:focus-visible` ring)
- [x] Sufficient color contrast for all urgency levels (dark + light themes)
- [ ] **Timer accuracy tests**
- [ ] Timing accuracy: create timer for T+5s, verify fires within 100ms tolerance
- [x] **Timer accuracy tests** (partial) ([755d030](https://github.com/saravanakumardb1/learning_ai_clock/commit/755d030))
- [x] Timer fire test: create timer, tick past target, verify fires (store tests)
- [ ] Service Worker notification timing tests
- [ ] Stress test: 50 concurrent timers with cascades → all fire correctly