Done condition: POST occurrence-preview route returns the next occurrence dates for a supplied rule via core occurrences_between (bounded); malformed rule 422; four auth outcomes.
Checks: focused 36 passed; full suite TZ=UTC uv run pytest -q = 1810 passed.
Maestro task: 5f843564-8399-4afc-b5f6-023dff146a8d (Feature 23).
Done condition: POST occurrence-preview route returns the next occurrence dates for a supplied rule via core occurrences_between (bounded); malformed rule 422; four auth outcomes.
Head: 900af61012c264f3db09fd18db0cee6073590afb
Base: feature/fce8c1f9-... @ 4b39af4 (dev)
Checks: focused 36 passed; full suite TZ=UTC uv run pytest -q = 1810 passed.
POST /api/v1/admin/quest-definitions/occurrences-preview returns the
next N dates a supplied schedule rule fires on, computed by core
recurrence.occurrences_between over a bounded 366-day window from a
start_date (default the host's today via one _local_now read). The
rule goes through the same AdminRuleRequest + ScheduleRule.from_dict
path as create/edit; a rejected rule, non-strict start_date or count
outside 1..50 is 422. Auth is the router's single require_admin.
Task: 5f843564-8399-4afc-b5f6-023dff146a8d
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: 5f843564-8399-4afc-b5f6-023dff146a8d (Feature 23).
Done condition: POST occurrence-preview route returns the next occurrence dates for a supplied rule via core occurrences_between (bounded); malformed rule 422; four auth outcomes.
Head:
900af61012Base: feature/fce8c1f9-... @
4b39af4(dev)Checks: focused 36 passed; full suite TZ=UTC uv run pytest -q = 1810 passed.
Independent Codex gpt-5.6-terra review completed for this exact commit.