Commit Graph

3 Commits

Author SHA1 Message Date
kami f2b97e4ab9 go.mod: mark onnxruntime_go, websocket, cron as direct
All three are imported by non-test code (router/onnxembedder.go,
mavweb/main.go, store/reminders.go) but were labeled // indirect. `go mod
tidy` can't run in this repo (it walks the vendored deps/go toolchain tree
and errors), so correct the labels by hand.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 12:04:12 +04:00
kami 1eca17f37b reminders: add recurring reminder support
Add cron expression support for recurring reminders using robfig/cron/v3.

Changes:
- Migration #2: ALTER TABLE reminders ADD COLUMN cron TEXT + next_fire_ts INTEGER
- Reminder struct: add Cron and NextFireTs fields
- scanReminder helper extracts full row including nullable cron
- CreateReminder: accept optional cron param, store next_fire_ts = fire_ts
- DueReminders: query on next_fire_ts instead of fire_ts
- RescheduleReminder: new method — parse cron, compute next fire, update
  next_fire_ts or mark fired if no more valid times
- Dispatcher: call RescheduleReminder for cron reminders, MarkReminder for
  one-shots (preserving existing behavior for ID=0 digest skip)
- ReminderCompleter interface: add RescheduleReminder method
- storeAPI adapter: forward RescheduleReminder
- All callers updated: CreateReminder signature includes cron param
- Tests: TestRecurringReminder (store), TestDispatchRecurringReminderReschedules
- Existing tests updated for new signature
2026-07-05 11:46:12 +04:00
kami 612583d59a initial commit 2026-07-03 00:32:48 +02:00