Rotation check schedule (Feature 20)
CI / ci (push) Successful in 8m10s
CI / ci (pull_request) Successful in 7m22s

Register rotation_check: daily at review_time, claimed as
rotation_check:YYYY-MM-DD, it calls plan.MarkTried for yesterday.
MarkTried now emits rotation_review:{dinnerId}:{planDate} ("How was
{dinner}? Keep it in rotation?", URL /) for each Rotation check it
opens, in the same transaction. Nothing promotes a dinner to Regular.

Task: 58095ae5-ed4b-4494-b8f0-206c4c0a3f1a

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-10 16:59:20 -04:00
co-authored by Claude Opus 5.5
parent 54a55bf5c3
commit fdd694d1ef
7 changed files with 286 additions and 30 deletions
+3
View File
@@ -204,6 +204,9 @@ func run(cfg config.Config, logger *slog.Logger) error {
return err
}
}
if err := sched.Register(planSvc.RotationCheckSchedule()); err != nil {
return err
}
if err := sched.Register(shopSvc.ChatAutosendSchedule()); err != nil {
return err
}