Skip to content

Bug: Cron jobs created via API don't trigger automatically #11059

@billsking

Description

@billsking

Bug Description

Cron jobs created using the cron.add API are registered successfully but never trigger automatically. The jobs appear in cron.list with correct nextRunAtMs timestamps, but the scheduler never executes them.

Steps to Reproduce

  1. Create a cron job using the API: openclaw cron add --name "Test" --schedule "everyMs:60000" --payload ...
  2. Wait for the scheduled time
  3. Observe that the job never triggers
  4. Check cron.runs - shows empty entries (never triggered)

Expected Behavior

Cron jobs should automatically trigger at their scheduled times and deliver messages to the configured channel.

Actual Behavior

  • Jobs are created successfully (cron.list shows them with correct schedule)
  • nextRunAtMs is set correctly in the future
  • But scheduler never fires the jobs
  • cron.runs is always empty
  • Jobs work when triggered manually via heartbeat or user interaction, but not automatically

Environment

  • OpenClaw version: 2026.2.3-1
  • OS: Windows_NT
  • Gateway mode: local (loopback)
  • All other features working normally

Workaround

None found - automatic scheduling is completely non-functional.

Additional Context

Discovered while testing reminder functionality. The cron scheduler appears to be registered (Service: Scheduled Task (registered) in logs) but never actually fires jobs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions