[BUG] Routine scheduler skips Monday when timezone is UTC+8 (SGT/CST) — weekday check applied in UTC instead of local time
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Bug Description
A Claude Code routine configured to run "weekdays at 4:10 AM SGT"
(UTC+8) never fires on Monday.
Root Cause
4:10 AM SGT = 20:10 UTC the previous day.
Monday 4:10 AM SGT = Sunday 20:10 UTC.
If the scheduler applies the "weekdays only" filter in UTC, Sunday is
excluded, so the Monday run is silently skipped. Tuesday–Friday work
correctly (they map to Mon–Thu UTC).
Affected Timezones
Any UTC+ timezone where early-morning routines cross the UTC date
boundary back into the previous (weekend) day. SGT (UTC+8), CST
(UTC+8), JST (UTC+9), AEST (UTC+10), etc.
What Should Happen?
Expected Behavior
"Weekdays" should be evaluated in the routine's configured timezone,
not in UTC.
Error Messages/Logs
Steps to Reproduce
Workaround
Set routine time to 08:01 AM SGT or later (UTC equivalent is 00:01
the same day, safely within UTC weekdays). Earlier times cannot be
used without hitting this bug.
Environment
- Claude Code on the web (claude.ai/code)
- Routine schedule: "Runs weekdays at 4:10 AM SGT"
- Observed: routine did not fire on Monday 2026-06-02 at 04:10 SGT
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
Claude 1.9659.2 (390d6c) 2026-05-28T21:50:01.000Z
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗