-
-
Notifications
You must be signed in to change notification settings - Fork 40k
Closed
Description
Bug: Cron scheduler advances timestamps but never executes jobs
Environment
- OpenClaw version: 2026.2.3-1
- OS: Linux 5.15.146.1-microsoft-standard-WSL2 (x64)
- Node: v22.22.0
Description
The cron scheduler calculates and advances nextRunAtMs correctly, but jobs never actually execute. The scheduler appears to be "ticking" without firing.
Steps to Reproduce
- Create a cron job (tested both
everyandcronschedule kinds) - Wait for
nextRunAtMsto pass - Observe that
nextRunAtMsadvances to the next slot but nolastRunAtMsis set - No run log files are created in
~/.openclaw/cron/runs/
Evidence
Test job created:
{
"name": "cron-test-2min",
"schedule": {"kind": "every", "everyMs": 120000},
"sessionTarget": "main",
"wakeMode": "now",
"payload": {"kind": "systemEvent", "text": "Test"}
}Observed behavior:
nextRunAtMskept advancing every 2 minutescron statusshowed correctnextWakeAtMsvalues- No run entries created (
cron runs --id <job>returns empty) - No
lastRunAtMsorlastStatusin job state
Manual force works:
openclaw cron run <job-id> --forceThis correctly executes the job and creates a run log. So the execution mechanism works - only the automatic trigger is broken.
Additional Context
- Last successful automatic cron run: Feb 6, 2026 at 10:00 GMT
- After that, the scheduler kept advancing
nextRunAtMswithout executing - Tested with both
sessionTarget: "main"andsessionTarget: "isolated"- same issue - Tested with both
wakeMode: "now"andwakeMode: "next-heartbeat"- same issue - Gateway restart (SIGUSR1) did not fix the issue
- Full gateway restart (pkill + start) did not fix the issue
Expected Behavior
Jobs should automatically execute when nextRunAtMs time is reached.
Actual Behavior
Jobs never execute automatically. Timestamps advance but no execution occurs.
Workaround
Manual execution with --force flag works:
openclaw cron run <job-id> --forceReactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels