Background Tasks panel shows a CronCreate one-shot job as a recurring 'Loop' after CronList confirms it's deleted
Claude Code version: 2.1.236 (Homebrew Cask install)
OS: macOS (Darwin 25.6.0, arm64)
Repro:
- Called
CronCreatewithcron: "40 10 30 8 *",recurring: false, on 2026-08-30 at 10:38 local time (before the 10:40 match). - The job fired correctly at 10:40 local — confirmed by its own output appearing in the conversation.
- Immediately after, called
CronList— it correctly reported "No scheduled jobs", matching the documented one-shot behavior ("fire once at the next match, then auto-delete"). - However, the terminal's Background Tasks panel (opened via
/tasks) still showed an entry for this same job:
- Labeled "Loop"
- Cron expression:
40 10 30 8 *(the exact expression used) - "Next 364d 23h" — implying the panel is treating this as a recurring annual job (since minute/hour/day-of-month/month with no year, evaluated after the match already passed, mathematically lands ~1 year out)
- "Ends 3d" — doesn't match either the one-shot behavior (immediate delete) or a 7-day recurring auto-expiry counted from job creation (the job was created only ~2 minutes before it fired)
This happened for two separate one-shot CronCreate jobs created in the same session, with the same symptom both times.
Expected: After a one-shot (recurring: false) CronCreate job fires and CronList confirms it's gone, the Background Tasks panel should also show it as complete/removed, not as an active recurring "Loop" with a far-future next-fire time.
Actual: The panel continues showing it as an active recurring loop with a mismatched "Next"/"Ends" pair, even though the authoritative CronList tool call confirms the job no longer exists.
I have not independently confirmed whether this is the same root cause as any other existing background-tasks-panel issue — filing this as its own report since I could not verify a match to anything else with confidence.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗