feat(todo): recurring tasks, set through a picker (ADR 0033, D7)
A task's date may recur: every n days, weeks (on which weekdays), months (on its day, or its nth or last weekday), years, from its date or from when it is done, until a day or for n times. Done, it moves on to the next day after both its date and today, its deadline as far, its time kept, its done sub-tasks open again and when it was done kept in its payload; undo writes all of it back. The date sheet offers the rules that fit the task's day and a rule of the person's own; rows show a recurring date with its own icon, the task sheet the rule in words. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
030c62ddde
commit
aa013f5a00
1 changed files with 1655 additions and 25 deletions
|
|
@ -1,8 +1,8 @@
|
|||
# ADR 0033: Halkyon Todo, what it does and how it looks
|
||||
|
||||
- **Status:** decided 1 Nov 2026, by the developer (D1–D10 below, the agent's
|
||||
recommendations taken as a whole). Built the same day: steps 1 to 3 and Today and
|
||||
Upcoming as lists (step 4 without recurrence, reminders and the week strip).
|
||||
recommendations taken as a whole). Built the same day: steps 1 to 3, Today and
|
||||
Upcoming as lists, and recurrence (step 4 without reminders and the week strip).
|
||||
- **Numbering:** 0025–0029 are held (ADR 0030's note), 0032 is Jellyfin's; this is the
|
||||
next free number.
|
||||
- **Builds on:** ADR 0030, D7, D12, D14, D15 and D60 (Train's sealed rows, its shell, its
|
||||
|
|
@ -102,6 +102,17 @@ the rail, a wash of strawberry, settings grouped as theirs. What the screenshots
|
|||
or the nth weekday), years, from the date or from completion, until a day or for n
|
||||
times. Dates and tokens typed into quick add ("tomorrow 6am", "every Monday", `#project`,
|
||||
`p1`), in English and German, are a later step, built on the same rule.
|
||||
As built (1 Nov): the rule is part of the task's date (`Repeat` in `TaskDate`, its
|
||||
payload's `date.repeat`), so a task without a date doesn't recur and clearing the date
|
||||
ends it; schema 1 holds it, as no task was written before. Done, a task counted from its
|
||||
date moves to the rule's first day after both its date and today (an overdue one isn't
|
||||
moved onto a day already past), counted from completion it moves the rule's units on
|
||||
from today, on no particular weekday; its deadline moves as far, its time is kept, its
|
||||
done sub-tasks open again, and when it was done is added to its `completions`. Undo
|
||||
writes back every task that changed. The picker offers the rules that fit its day
|
||||
(every day, every weekday, its weekday, its day or nth weekday of the month, its day of
|
||||
the year) and a rule of the person's own; weeks start on Monday for every n weeks, until
|
||||
the week's first day is a setting (D4).
|
||||
- **D8 The first version** (recommended): Inbox and projects with sections, shown as a
|
||||
list; sub-tasks; Today (Overdue first, rescheduling them together, then today's); Upcoming
|
||||
as an agenda with the week strip opening into the month; the task sheet (rows for the
|
||||
|
|
|
|||
Loading…
Reference in a new issue