docs: update roadmap Phase 2 with completed items

Routine engine (45 tests), NL parser (37 tests), context messages (23 tests),
focus mode, and CreateTimerModal NL integration all marked complete.
Total: 276 tests passing, tsc clean.
This commit is contained in:
saravanakumardb1 2026-02-27 21:46:24 -08:00
parent 065bb1b1a0
commit 1235a2b218

View File

@ -244,14 +244,16 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
### Week 3: Routines + Linked Timers
- [ ] **Routine engine (`lib/routines.ts`)**
- [ ] Routine data model: ordered array of steps (label, duration, transition type)
- [ ] Transition types: immediate, 1m break, 5m break, custom
- [ ] Routine state machine: `ready → step_1_active → step_1_transition → step_2_active → ... → complete`
- [ ] Auto-advance between steps with transition notification
- [ ] Pause/resume entire routine (pauses current step timer)
- [ ] Skip step button
- [ ] Unit tests for multi-step routines with transitions
- [x] **Routine engine (`lib/routines.ts`)** ([8fe5e8e](https://github.com/saravanakumardb1/learning_ai_clock/commit/8fe5e8e))
- [x] Routine data model: ordered array of steps (label, duration, transition type)
- [x] Transition types: immediate, 1m break, 5m break, custom
- [x] Routine state machine: `ready → active → paused → completed/cancelled`
- [x] Auto-advance between steps with transition notification
- [x] Pause/resume entire routine (pauses current step timer)
- [x] Skip step button
- [x] 4 built-in templates (Morning, Workout, Cooking, Wind-Down)
- [x] Template instantiation for reuse
- [x] Unit tests for multi-step routines with transitions (45 tests)
- [ ] **Routine editor (`components/RoutineEditor.tsx`)**
- [ ] Add/remove/reorder steps (drag-and-drop)
@ -276,31 +278,32 @@ ChronoMind ships in **5 phases over ~6 months**, from web MVP to full cross-plat
- [ ] Cancel chain option (cancel one, option to cancel all linked)
- [ ] Unit tests for chain execution
- [ ] **Natural language input (`components/NLInput.tsx` + `lib/nl-parser.ts`)**
- [ ] Integration with `chrono-node` for date/time parsing
- [ ] Examples: "Standup in 30 minutes", "Wake up at 6:30am tomorrow", "Remind me at 3pm to call Mom"
- [ ] Extract: time, duration, label, urgency hints ("important meeting" → Important)
- [ ] Sticky input bar at top of dashboard
- [ ] Parse preview: show parsed timer before confirming
- [ ] Fallback: if parse fails, open manual create form with whatever was understood
- [ ] Unit tests for 20+ natural language patterns
- [x] **Natural language input (`lib/nl-parser.ts` + CreateTimerModal integration)** ([8fe5e8e](https://github.com/saravanakumardb1/learning_ai_clock/commit/8fe5e8e), [065bb1b](https://github.com/saravanakumardb1/learning_ai_clock/commit/065bb1b))
- [x] Regex-based parser (no chrono-node dependency needed)
- [x] Examples: "Standup in 30 minutes", "Wake up at 6:30am", "Remind me at 3pm to call Mom", "pomodoro 4 rounds"
- [x] Extract: time, duration, label, urgency hints ("important meeting" → Important)
- [x] Integrated into CreateTimerModal with live parse preview
- [x] Parse preview: show parsed timer type, label, duration, urgency before confirming
- [x] Enter-to-create shortcut for quick creation
- [x] Unit tests for 37 natural language patterns
### Week 4: Focus Mode + Stats
- [ ] **Focus mode (`app/(app)/focus/`)**
- [ ] Activate focus: choose duration or "until next timer"
- [ ] Block all notifications except CRITICAL urgency
- [ ] Full-screen focus view with minimal distraction
- [x] **Focus mode (`app/focus/page.tsx` + `components/FocusView.tsx`)** ([065bb1b](https://github.com/saravanakumardb1/learning_ai_clock/commit/065bb1b))
- [x] Activate focus: choose duration (6 presets) or "until next timer"
- [x] Block all notifications except CRITICAL urgency (shield badge)
- [x] Full-screen focus view with minimal distraction (countdown ring)
- [ ] Ambient background sound options (rain, white noise, coffee shop) — Web Audio API
- [ ] Integration with Pomodoro (focus mode auto-activates during work intervals)
- [ ] Focus session summary on completion (time focused, distractions blocked)
- [x] Integration with Pomodoro (25m focus shortcut)
- [x] Focus session summary on completion (time focused, distractions blocked)
- [ ] **Contextual pre-warning messages (`lib/context-messages.ts`)**
- [ ] Based on timer label, generate helpful prep messages
- [ ] Rules engine: "meeting" → "Review your agenda", "flight" → "Check in online", "dentist" → "Leave in X minutes"
- [ ] Keyword → message mapping (expandable, no LLM needed)
- [x] **Contextual pre-warning messages (`lib/context-messages.ts`)** ([8fe5e8e](https://github.com/saravanakumardb1/learning_ai_clock/commit/8fe5e8e))
- [x] Based on timer label, generate helpful prep messages
- [x] Rules engine: "meeting" → "Review your agenda", "flight" → "Check in online", "dentist" → "Bring your insurance card"
- [x] Keyword → message mapping (20+ categories, expandable)
- [ ] Custom messages per timer (user override)
- [ ] Show in notification body and on timeline
- [x] Warning message formatting with time remaining context
- [x] Unit tests (23 tests)
- [ ] **Statistics + streaks (`app/(app)/history/`)**
- [ ] Timers created / completed / snoozed / dismissed — daily, weekly, monthly