Day-of and crock-pot start-by reminders (Feature 20) #177

Member

Maestro task 30963b62-2803-4879-82ff-c351cc6628cf.

Adds the day_of_reminder schedule at household reminder_time (default 16:30) with period key day_of_reminder:YYYY-MM-DD, emitting Tonight: {dinner} · Recipe → to /dinner/{id} when tonight has a planned dinner. A crock-pot dinner whose start_by is earlier than reminder_time also emits day_of_reminder:start:YYYY-MM-DD at start_by minus 15 minutes. No plan emits nothing.

Head: a7a56623e5, based on feature head 15860fbbaf.

Developer reports gofmt clean, go vet, go test -race ./... and make sqlc-check passed. CI has not run yet because this pull request is new.

Maestro task 30963b62-2803-4879-82ff-c351cc6628cf. Adds the day_of_reminder schedule at household reminder_time (default 16:30) with period key day_of_reminder:YYYY-MM-DD, emitting Tonight: {dinner} · Recipe → to /dinner/{id} when tonight has a planned dinner. A crock-pot dinner whose start_by is earlier than reminder_time also emits day_of_reminder:start:YYYY-MM-DD at start_by minus 15 minutes. No plan emits nothing. Head: a7a56623e5b3a8d4feee753a7ab816f94f8af6ba, based on feature head 15860fbbafa98828d4f53c62c74f875b9a5505aa. Developer reports gofmt clean, go vet, go test -race ./... and make sqlc-check passed. CI has not run yet because this pull request is new.
dev_agent added 1 commit 2026-10-10 14:12:51 -04:00
Add day-of and crock-pot start-by reminders (Feature 20)
CI / ci (push) Successful in 7m39s
CI / ci (pull_request) Successful in 7m24s
a7a56623e5
Register plan.Service.ReminderSchedules as the day_of_reminder schedule:
daily at the household reminder_time (period YYYY-MM-DD) it emits
day_of_reminder:YYYY-MM-DD, "Tonight: {dinner} · Recipe →" linking
/dinner/{id}; for a crock-pot dinner whose start_by is earlier than
reminder_time it also fires 15 minutes before start_by (period
start:YYYY-MM-DD) and emits day_of_reminder:start:YYYY-MM-DD, "Start the
crock pot by {time}". A date whose week has no plan emits nothing.

The scheduler gains DailyAt rules, whose fire time per date is looked up
from data on every pass (a failed lookup is retried every ClaimRetry),
and a Schedule Key that prefixes period keys so two schedules of one
name claim different periods.

Maestro task 30963b62-2803-4879-82ff-c351cc6628cf.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent requested changes 2026-10-10 14:23:02 -04:00
Dismissed
review_agent left a comment
Member

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.

Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.
overseer added 1 commit 2026-10-10 14:55:10 -04:00
Wake the scheduler on plan and dinner changes (MQ-177-01)
CI / ci (push) Successful in 7m58s
CI / ci (pull_request) Successful in 7m20s
765a36fa97
A swap, stored draft, or dinner method/minutes change (edit or grounding)
now calls Scheduler.Wake once committed, so a crock-pot dinner swapped in
for tonight is reminded at start_by minus 15 minutes rather than at the
next hourly pass. Adds a fake-clock test that swaps in a crock-pot
Quest-log dinner at 09:01 and asserts the start reminder at 09:15, once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent left a comment
Member

Independent Codex gpt-6-sol review: APPROVED for this exact commit.

Independent Codex gpt-6-sol review: APPROVED for this exact commit.
approver_agent merged commit 02d537b303 into feature/46305394-a839-4259-a639-85c99eca46af-scheduler-and-weekly-automation 2026-10-10 15:26:20 -04:00
Sign in to join this conversation.
No Reviewers
No labels
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Maniacs_Mansion/MealQuest#177