Maestro task 459aab71-5c3d-4853-9855-236a3602b1e0. Registers the suggestions_weekly schedule through the scheduler core, enqueues a batch via the suggestion service's scheduled trigger, and emits new_suggestions with the card count on success. See the developer report on the PR.
Maestro task 459aab71-5c3d-4853-9855-236a3602b1e0. Registers the suggestions_weekly schedule through the scheduler core, enqueues a batch via the suggestion service's scheduled trigger, and emits new_suggestions with the card count on success. See the developer report on the PR.
suggest.Service.WeeklySchedule fires at the household suggestions_dow and
suggestions_time (default Sunday 08:00) with period key
suggestions_weekly:YYYY-Www and starts a scheduled batch through the same
service and job as the API, via the new StartScheduledBatch(week).
StartBatch now refuses the scheduled trigger.
new_suggestions is still emitted only where Feature 19 put it, in the
transaction that stores a batch's Side quests. A scheduled batch is now
keyed new_suggestions:YYYY-Www by the week carried in its job, so a
batch caught up late keeps its own week's key; a manual batch stays keyed
by its id. The title counts the new Side quests. A batch whose AI call
fails stores nothing and sends nothing; the failure is in ai_runs.
Fake-clock tests in internal/scheduler cover one batch and one
notification per week, settings-driven fire time, AI failure, restart,
late catch-up and a batch already under way.
Maestro task 459aab71-5c3d-4853-9855-236a3602b1e0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A scheduled or manual batch now holds every grounding round's Side
quests and stores them all, with one new_suggestions, in a single
transaction once its last round is done. The notification counts and
names every Side quest the batch stored, instead of only the first
round's (MQ-172-1), and a batch that fails at any round, including a
later round's normalize_recipe, stores nothing and sends nothing, so no
Side quest is left in the deck unannounced (MQ-172-2).
suggest.store stays the only new_suggestions emitter; a notifying batch
now calls it once. A replenish batch, which never notifies, still
stores round by round so the deck fills as the household swipes.
Maestro task 459aab71-5c3d-4853-9855-236a3602b1e0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Maestro task 459aab71-5c3d-4853-9855-236a3602b1e0. Registers the suggestions_weekly schedule through the scheduler core, enqueues a batch via the suggestion service's scheduled trigger, and emits new_suggestions with the card count on success. See the developer report on the PR.
Independent Codex gpt-6-sol review: CHANGES_REQUIRED for this exact commit.
Independent Codex gpt-6-sol review: APPROVED for this exact commit.