Merge pull request #1729 from NousResearch/fix/cron-timezone-naive-iso

fix(cron): naive ISO timestamps stored without timezone — jobs fire at wrong time
This commit is contained in:
Teknium
2026-03-17 04:24:02 -07:00
committed by GitHub

View File

@@ -168,6 +168,10 @@ def parse_schedule(schedule: str) -> Dict[str, Any]:
try:
# Parse and validate
dt = datetime.fromisoformat(schedule.replace('Z', '+00:00'))
# Make naive timestamps timezone-aware at parse time so the stored
# value doesn't depend on the system timezone matching at check time.
if dt.tzinfo is None:
dt = dt.astimezone() # Interpret as local timezone
return {
"kind": "once",
"run_at": dt.isoformat(),