-
-
Notifications
You must be signed in to change notification settings - Fork 54.2k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Summary
One-time scheduled jobs using "kind": "at" and specific-date "kind": "cron" do not fire, while recurring jobs work correctly.
Environment
- OpenClaw Version: 2026.2.2-3
- OS: Linux 6.8.0-90-generic (x64)
- Node: v22.22.0
- Installation: Global npm (
/usr/lib/node_modules/openclaw)
Expected Behavior
Scheduled jobs created with cron add should fire at their designated time.
Actual Behavior
- ✅ Recurring "every" jobs: WORK (tested and confirmed)
- ✅ Daily recurring "cron" jobs: WORK (e.g.,
0 5 * * *fired successfully) - ❌ One-time "at" jobs: DO NOT FIRE
- ❌ One-time "cron" jobs: DO NOT FIRE
Steps to Reproduce
Test 1: "at" timestamp (FAILED)
cron add --json '{
"name": "TEST - Verify cron is working",
"schedule": {"kind": "at", "atMs": 1770174849488},
"payload": {"kind": "systemEvent", "text": "Test message"},
"sessionTarget": "main"
}'Result: Job created successfully, never fired (waited 52+ minutes past scheduled time)
Test 2: "cron" expression for specific date (FAILED)
cron add --json '{
"name": "REMINDER: Restart gateway at 9 PM CST",
"schedule": {"kind": "cron", "expr": "0 3 4 2 *", "tz": "UTC"},
"payload": {"kind": "systemEvent", "text": "Reminder: Restart gateway"},
"sessionTarget": "main"
}'Result: Job created, never fired at scheduled time (Feb 4, 3:00 AM UTC)
Test 3: Recurring "cron" (PASSED)
cron add --json '{
"name": "DAILY MAINTENANCE",
"schedule": {"kind": "cron", "expr": "0 5 * * *"},
"payload": {"kind": "systemEvent", "text": "Running daily maintenance"},
"sessionTarget": "main"
}'Result: Fires daily at 5 AM UTC as expected
Additional Context
Gateway Restart Attempted
- Restarted gateway multiple times during testing
- Updated from 2026.2.1 to 2026.2.2-3
- Issue persists across versions and restarts
cron list Output
{
"jobs": []
}Note: Jobs appear empty in cron list even when jobs exist in /root/.openclaw/cron/jobs.json
Jobs File Contents
Location: /root/.openclaw/cron/jobs.json
- Contains 6 jobs (2 legacy "at", 4 "cron")
- Jobs are persisted correctly
- Just never executed
Possible Causes
- Scheduler component not properly evaluating
atMstimestamps - Timezone conversion issues (CST UTC-6 vs UTC)
- Jobs not being loaded into active scheduler after creation
- Wake mechanism not triggering for one-time jobs
Workarounds Used
- Recurring "every" jobs with manual deletion after firing
- External Linux cron + curl to OpenClaw API
- Manual reminders via conversation
Impact
- Cannot schedule one-time reminders
- Cannot schedule tasks for specific future dates
- Limits automation capabilities significantly
References
- OpenClaw Starter Kit mentions this as known issue
- User tried both "at" and "cron" expression syntaxes
- Issue persists across gateway restarts and updates
Submitted by: Solrac (via AI assistant Praetor)
Date: 2026-02-04
Copy this and paste into: https://github.com/openclaw/openclaw/issues/new
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working