[Codex Desktop] Heartbeat keeps waking a usage-limited thread after child agents fail
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
Codex Desktop heartbeat keeps waking a usage-limited thread after child agents fail
What version of the Codex App are you using?
Windows installed package OpenAI.Codex, version 26.901.5003.0, verified with Get-AppxPackage on 2026-09-06. This is the installed package version, not a value read from the About dialog.
What subscription do you have?
ChatGPT/Codex account with usage limits. Exact subscription tier is not included in this report. The owner reports exhausting usage credits during the work; per-wakeup billed usage has not been independently established.
What platform is your computer?
Windows desktop, PowerShell; local Codex projectless chat with a thread-bound heartbeat and three delegated agents.
What issue are you seeing?
A recurring heartbeat continued injecting the same long audit/bug-monitoring prompt into a stalled thread after all three child agents reported usage-limit failures. Repeated scheduled messages are visible from at least 2026-09-06 11:28 UTC through 16:54 UTC, approximately every 15 minutes, without completed intervening audit work in the visible thread. The goal later reported status usageLimited.
The three agents returned this error:
You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Sep 12th, 2026 1:50 PM.
The owner had to interrupt manually, point out the loop and request a pause. The automation was subsequently paused with the app's automation tool, and the persisted PAUSED status was verified. No expensive reproduction or usage reset was performed for this report.
There was also an orchestration mistake: one 15-minute trigger bundled new bug triage with daily business reviews and weekly website audits, even though several candidates were still unpublished. The prompt said to keep quiet on unchanged conditions and preserve checkpoints, but those instructions did not prevent repeated scheduler injections during the usage-limited state. This report concerns both missing scheduler backoff/circuit breaking and the agent's failure to stop/escalate a non-progressing plan.
What steps can reproduce the bug?
Observed sequence, not a fresh reproduction:
- Create a thread-bound heartbeat on a 15-minute interval for a long-running project conversation.
- Run a parent goal and three delegated agents with unfinished source work.
- Reach a state where all child agents fail with usage-limit errors and the parent goal is usageLimited.
- Leave the heartbeat active.
- Observe repeated full prompt injections instead of one actionable blocked notification followed by automatic suspension/backoff.
The exact conversation and unredacted diagnostics are intentionally omitted from this public issue because they contain client information. The owner can supply private diagnostics through in-app feedback if needed. The full multi-business prompt is also omitted.
What is the expected behavior?
- Suspend or back off scheduled wakeups when the target thread cannot execute because of usage limits. Preserve the due task without flooding its conversation.
- Coalesce duplicate pending wakeups; do not stack repeated full prompts behind a blocked run.
- Emit one clear blocked/usage notice and identify what action permits resumption.
- Detect repeated failures/questions and lack of progress; stop agent retries and ask the operator once rather than continuing indefinitely.
- Keep development checks tied to relevant changes, and audits gated on an actually launched site, required access and a due evidence window.
- Show which automation is responsible, its actual cadence, last successful run, last failure and next run, with a reliable pause control.
- Make per-run usage attributable so the owner can distinguish completed work from failed or duplicate wakeups.
Additional information
Related but not exact duplicates:
- https://github.com/openai/codex/issues/39361 — recurring automation reappearing/repeated runs.
- https://github.com/openai/codex/issues/22818 — repeated usage-limit errors during an active goal.
- https://github.com/openai/codex/issues/28923 — excessive automatic continuation without a progress circuit breaker.
The distinct combination here is a thread heartbeat repeatedly delivering prompts after all child agents fail and the goal becomes usage-limited. Exact credit loss attributable to these wakeups is unknown; please investigate backend usage rather than treating the owner's reported loss as a measured amount. Production projects were not deployed during the recovery, and the unfinished source work was preserved.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The report names no source files, tests, or implementation entry points; start by tracing thread-bound heartbeat scheduling and the usageLimited state through the Codex Desktop automation flow. Use the described sequence as the investigation scenario, then verify that blocked runs back off, duplicate wakeups are coalesced, one actionable notice is emitted, and the automation exposes reliable pause and run-status details.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- powershell, rust
- Domain
- backend, desktop, devtools
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100