Description
Investigate the design for connecting tasks to timer sessions — the defining feature of Phase 3. Each task gets a "play" button that starts a timer session linked to that task. As sprints complete, the task's session counter increments. This spike determines the data model for linking sessions to tasks, session estimation and auto-completion behavior, and how the task detail screen presents session progress.
Background
Phase 2 delivers a standalone pomodoro timer. Phase 3 connects tasks to timer sessions, transforming two independent features into one cohesive experience: the pomodoro-first todo app. Before implementing, we need to decide how sessions are linked to tasks, how estimation works, and what happens when the estimated count is reached.
Current Knowledge
- Phase 2 will deliver a working standalone timer with sprint, short break, and long break states
- Tasks already exist with all Phase 1 fields
- The task list and detail screens exist from Phase 1
- Session completions are persisted locally from Phase 2
- The app uses Orbit MVI, Koin DI, and Room persistence
Scope
In scope: data model for task-session linkage (session counter on task vs. separate session entity), session estimation (user estimates how many sprints a task needs), auto-completion behavior (optionally mark task done when estimated count is reached), task detail screen session progress display, "play" button UX on task rows, settings for timer defaults and auto-completion.
Out of scope: standalone timer implementation (Phase 2), cloud sync of session data, recurring tasks (Phase 4).
Outcomes
Description
Investigate the design for connecting tasks to timer sessions — the defining feature of Phase 3. Each task gets a "play" button that starts a timer session linked to that task. As sprints complete, the task's session counter increments. This spike determines the data model for linking sessions to tasks, session estimation and auto-completion behavior, and how the task detail screen presents session progress.
Background
Phase 2 delivers a standalone pomodoro timer. Phase 3 connects tasks to timer sessions, transforming two independent features into one cohesive experience: the pomodoro-first todo app. Before implementing, we need to decide how sessions are linked to tasks, how estimation works, and what happens when the estimated count is reached.
Current Knowledge
Scope
In scope: data model for task-session linkage (session counter on task vs. separate session entity), session estimation (user estimates how many sprints a task needs), auto-completion behavior (optionally mark task done when estimated count is reached), task detail screen session progress display, "play" button UX on task rows, settings for timer defaults and auto-completion.
Out of scope: standalone timer implementation (Phase 2), cloud sync of session data, recurring tasks (Phase 4).
Outcomes