Repository navigation
Windows: automatic retry after model-capacity error resumes turn but leaves Goal paused #41798
Description
What version of the Codex App are you using (From “About Codex” dialog)?
26.825.6671.0 (Windows package; running executable product version 151.0.7922.174)
What subscription do you have?
Not included; the issue concerns Goal lifecycle reconciliation after the built-in automatic retry succeeds.
What platform is your computer?
Microsoft Windows NT 10.0.26200.0 x64
What issue are you seeing?
When an active Goal encounters:
Selected model is at capacity. Please try a different model.
Codex starts its built-in automatic retry/backoff. The retry eventually succeeds and the task/turn resumes, but the Goal itself remains paused or stalled instead of being resumed with the turn.
This leaves the lifecycle layers inconsistent:
- the automatic retry has recovered the model request;
- the task can briefly continue;
- the associated Goal is still paused/stagnant;
- unattended Goal execution therefore does not continue normally.
The capacity error is recoverable, but recovery only restores the turn, not the Goal that owns the long-running work.
What steps can reproduce the bug?
- In Codex Desktop, start a long-running task with an active Goal.
- Continue until the selected model returns
Selected model is at capacity. Please try a different model. - Let Codex use its automatic retry/backoff; do not manually switch models or resume the Goal.
- Wait for the automatic retry to succeed and observe the task resume.
- Check the Goal lifecycle state and continued execution.
Actual result: the retry resumes the task/turn, but the Goal remains paused/stagnant and does not continue its autonomous loop.
What is the expected behavior?
When automatic retry successfully recovers a model-capacity failure, Codex should atomically restore the complete pre-error lifecycle state:
- resume the same turn/task;
- transition the associated Goal back to active;
- continue the Goal loop from its preserved context without manual intervention.
If Codex cannot safely resume the Goal, it should keep both the turn and Goal paused and show an explicit actionable reason, rather than partially resuming only the turn.
Additional information
This is narrower than the existing capacity reports:
- Retry automatically when the selected model is at capacity #32020 requested automatic retry when the selected model is at capacity. Automatic retry now works, but Goal state is not resumed with it.
- Repeated "Selected model is at capacity" errors interrupting Codex tasks on ChatGPT Pro #41790 reports frequent capacity errors and retry backoff, but not the Goal lifecycle mismatch after a successful retry.
- Goal pause state exists, but agent tool contract can make agents report pause is unavailable #30630 documents inconsistencies in the Goal pause contract/lifecycle.
- macOS: pausing a Goal leaves the thread active/inProgress and sidebar spinner running #38177 reports the opposite reconciliation direction (a paused Goal leaving a turn active), suggesting Goal and turn lifecycle transitions need to be made atomic.
Suggested regression test:
active Goal + active turn
-> server_overloaded / model at capacity
-> automatic retry succeeds
-> same turn active
-> same Goal active
-> Goal loop continues without manual resume
Activity
marc-caramello commentedon Aug 31, 2026
I've ran into this same issue as well. I agree with your suggestion. I would prefer if the goal wasn't paused in this circumstance. I feel like this should definitely be fixed. Because, when the model is usable again, then it should automatically continue running. Exponential backoff retry would be very useful here.
Ang3Lnet commentedon Aug 31, 2026
me too
pokeQAAQ commentedon Aug 31, 2026
This phenomenon is becoming increasingly frequent since the update
997sama commentedon Sep 2, 2026
me too