Inconsistency in Codex automations when using a custom RRULE

Open 💬 1 comment Opened Jun 16, 2026 by SylvanerShi

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:

  1. Create an automation.
  2. Set RRULE to FREQ=DAILY;BYHOUR=4;BYMINUTE=0;BYSECOND=0 and observe next run = 04:00.
  3. Change only FREQ to MONTHLY, keeping the rest identical.
  4. 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.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗