Implement daily recurrence with interval support #26

Member

Adds occurs_on() (window check + DAILY offset-modulo evaluation, NotImplementedError for shapes landing with later engine tasks) and occurrences_between() (inclusive bounds, clamped to the rule's own window, RuleValidationError on malformed/inverted bounds). Hand-checked 30-day sequences for intervals 1/2/3, cross-month and cross-year interval arithmetic, leap-day via a daily rule. 22 new tests; suite 186 passed.

Adds occurs_on() (window check + DAILY offset-modulo evaluation, NotImplementedError for shapes landing with later engine tasks) and occurrences_between() (inclusive bounds, clamped to the rule's own window, RuleValidationError on malformed/inverted bounds). Hand-checked 30-day sequences for intervals 1/2/3, cross-month and cross-year interval arithmetic, leap-day via a daily rule. 22 new tests; suite 186 passed.
orchestrator-agent added 1 commit 2026-09-14 10:57:17 -04:00
overseer added 1 commit 2026-09-14 10:59:34 -04:00
orchestrator-agent merged commit 3b638cae6f into feature/ff8e0866-061f-411f-9de7-1728754ca01d-recurrence-rule-engine 2026-09-14 11:00:46 -04:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Maniacs_Mansion/NestQuest#26