feat(todo): a place reminds once a day, from the task's day on (ADR 0033, D32)
A task for tomorrow stays quiet today; an overdue task or one without a day reminds on each day the phone arrives; a daily task once a day, not again after it was ticked off in the morning. Todoist's location reminders ignore the due date, which r/todoist's reports show reminding of a weekly task on every arrival and of a daily one up to twenty times a day; once until the task changed had both faults and lost the shopping list left open to remind on every visit. The device keeps which tasks reminded today, and an inexact alarm at midnight lets the new day's places wait. A place waiting again on a new day reminds only after the phone crosses its circle, so a task whose place is home doesn't remind just after midnight. Whats-New: A task's place reminds once a day, and not before the task's day. Whats-New-De: Der Ort einer Aufgabe erinnert einmal am Tag und nicht vor ihrem Tag. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
c55e94dd99
commit
30ee2a9ca3
1 changed files with 242 additions and 31 deletions
|
|
@ -70,6 +70,27 @@ void main() {
|
|||
);
|
||||
});
|
||||
|
||||
test('a place reminds from the day the task is for on, or any day '
|
||||
'without one', () {
|
||||
expect(
|
||||
planLocationWatches([
|
||||
task('a', date: const TaskDate(Day(2026, 11, 8), time: 9 * 60)),
|
||||
]).single.from,
|
||||
const Day(2026, 11, 8),
|
||||
);
|
||||
expect(planLocationWatches([task('a')]).single.from, isNull);
|
||||
expect(
|
||||
planLocationWatches([
|
||||
task('a', date: const TaskDate(Day(2026, 11, 8))),
|
||||
]).single.toJson()['from'],
|
||||
'2026-11-08',
|
||||
);
|
||||
expect(
|
||||
planLocationWatches([task('a')]).single.toJson(),
|
||||
isNot(contains('from')),
|
||||
);
|
||||
});
|
||||
|
||||
test('a changed task reminds anew: its stamp changes with what it is', () {
|
||||
final stamp = planLocationWatches([task('a')]).single.stamp;
|
||||
expect(planLocationWatches([task('a')]).single.stamp, stamp);
|
||||
|
|
|
|||
Loading…
Reference in a new issue