Inconsistency in Codex automations when using a custom RRULE
Title: RRULE timezone/display inconsistency: FREQ=MONTHLY shows 12:00 while FREQ=DAILY shows 04:00 for the same BYHOUR/BYMINUTE/BYSECOND
I found an inconsistency in Codex automations when using a custom RRULE.
With:
FREQ=DAILY;BYHOUR=4;BYMINUTE=0;BYSECOND=0
the UI shows the next run time as 04:00.
But with:
FREQ=MONTHLY;BYHOUR=4;BYMINUTE=0;BYSECOND=0
the UI shows the next run time as 12:00.
The only difference is FREQ=DAILY vs FREQ=MONTHLY. BYHOUR, BYMINUTE, and BYSECOND are identical, so I would expect the displayed next run time to remain consistent.
Observed on 2026-06-16 in Asia/Shanghai (UTC+8).
This looks like a possible UTC vs local timezone handling issue, or a difference in how MONTHLY inherits DTSTART / anchor-date defaults compared with DAILY.
Steps to reproduce:
- Create an automation.
- Set RRULE to FREQ=DAILY;BYHOUR=4;BYMINUTE=0;BYSECOND=0 and observe next run = 04:00.
- Change only FREQ to MONTHLY, keeping the rest identical.
- Observe next run = 12:00.
Expected behavior:
The displayed next run time should stay consistent for the same local time fields, unless the UI explicitly explains a different interpretation.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗