Description
Investigate the design for recurring tasks in Phase 4. Tasks can be configured to recur on a schedule — weekdays, weekly, or monthly. When the next occurrence arrives, a fresh task instance is created. This spike determines the recurrence data model, instance generation strategy, overdue handling behavior, and how recurrence settings are presented in the UI.
Background
Recurring tasks automate repetitive work. A user should be able to set a task to repeat (e.g. every weekday, every Monday, every 1st of the month) and have new task instances created automatically. Overdue recurring tasks need a defined behavior (carry forward, mark overdue, or keep old and create new). Before implementing, we need to decide on the data model and generation strategy.
Current Knowledge
- Tasks have all Phase 1 fields including due date
- No recurrence concept exists yet
- The app uses Room for local persistence
- Cloud sync (Phase 1 spike) will need to account for recurring tasks in the sync model
- Recurrence settings will be added to the existing settings screen
Scope
In scope: recurrence data model (schedule type, interval, end condition), instance generation strategy (when and how new instances are created), overdue recurring task handling (carry forward, mark overdue, or keep old while creating new), recurrence UI in create/edit task screen, recurrence settings in the settings screen, visual indicators for recurring status in the task list.
Out of scope: implementation of recurring tasks, cloud sync of recurrence data, pomodoro timer or task-timer integration.
Outcomes
Description
Investigate the design for recurring tasks in Phase 4. Tasks can be configured to recur on a schedule — weekdays, weekly, or monthly. When the next occurrence arrives, a fresh task instance is created. This spike determines the recurrence data model, instance generation strategy, overdue handling behavior, and how recurrence settings are presented in the UI.
Background
Recurring tasks automate repetitive work. A user should be able to set a task to repeat (e.g. every weekday, every Monday, every 1st of the month) and have new task instances created automatically. Overdue recurring tasks need a defined behavior (carry forward, mark overdue, or keep old and create new). Before implementing, we need to decide on the data model and generation strategy.
Current Knowledge
Scope
In scope: recurrence data model (schedule type, interval, end condition), instance generation strategy (when and how new instances are created), overdue recurring task handling (carry forward, mark overdue, or keep old while creating new), recurrence UI in create/edit task screen, recurrence settings in the settings screen, visual indicators for recurring status in the task list.
Out of scope: implementation of recurring tasks, cloud sync of recurrence data, pomodoro timer or task-timer integration.
Outcomes