[CronCreate] durable + recurring combo silently never fires

Open 💬 0 comments Opened Jul 7, 2026 by fz-1115

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?

When creating a CronCreate task with BOTH recurring: true AND durable: true,
the task is written to scheduled_tasks.json and listed in CronList, but it
never fires — no prompt is injected, no error is raised. The scheduler
silently ignores it.

Each flag works fine independently: durable one-shot fires, and session-only
recurring fires. Only the combination is broken.

What Should Happen?

A durable recurring task should fire at its scheduled cron time, just like
a session-only recurring task does. After firing, it should persist in
scheduled_tasks.json and continue firing on subsequent cron matches across
sessions/restarts.

Error Messages/Logs

No error output — the task is silently ignored.

Steps to Reproduce

  1. Create a durable one-shot task → fires correctly

CronCreate cron: "28 14 7 7 *", recurring: false, durable: true

  1. Create a session-only recurring task → fires correctly

CronCreate cron: "/3 *", recurring: true (no durable)

  1. Create a durable recurring task → NEVER fires

CronCreate cron: "28 14 7 7 *", recurring: true, durable: true

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.202

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

Reproducibility: 100% across 9 controlled experiments.
Full experiment log and cross-matrix analysis available.
Bug isolated to the intersection of durable:true + recurring:true.

Workaround: session-only recurring tasks (recurring: true, no durable)
work correctly, but die when Claude Code exits.

View original on GitHub ↗