Repository navigation
ChatGPT Desktop: all Local Work hangs, including first turn with clean CODEX_HOME #45405
Description
What version of the Codex App are you using (From “About Codex” dialog)?
Version 26.908.40834
What subscription do you have?
pro
What platform is your computer?
No response
What issue are you seeing?
ChatGPT Desktop: all Local Work hangs, including first turn with clean CODEX_HOME
Summary
ChatGPT Desktop Local Work is completely unusable on my Mac.
Existing local threads fail to resume/open correctly, but importantly the problem also reproduces with a completely fresh CODEX_HOME and a brand-new Local Work thread.
In that clean environment:
- Launch ChatGPT Desktop with a new empty CODEX_HOME
- Create a new conversation
- Select Work
- Select Local
- Enter run test
- Press Send
The Send button spins indefinitely. The turn never starts.
Cloud Work continues to work normally.
Environment
- ChatGPT Desktop: 26.908.40834
- Desktop build: 8881
- Bundled Codex: 0.154.0-alpha.6.2
- macOS: 27.0 Golden Gate, build 26A428
- Hardware: Apple Silicon Mac Studio
- Account: ChatGPT Pro
- Region: UK
- Date reproduced: 14 September 2026
Expected behaviour
A new Local Work conversation should submit the first turn and begin execution.
Actual behaviour
The Send control enters an indefinite spinner state and no Local Work turn begins.
Existing Local Work conversations also fail to resume/open successfully.
Cloud Work conversations continue to operate normally.
Important clean reproduction
The issue reproduces against a completely new CODEX_HOME.
No existing:
- conversations
- SQLite databases
- MCP configuration
- skills
- plugins
- caches
- thread locks
- other ~/.codex state
were copied into the test environment.
This appears to rule out corruption or configuration in my normal ~/.codex as the cause.
Observed app-server behaviour
Desktop logs show the local app-server becoming saturated.
A recurring state is:
inFlightRequestCount=6
After this, unrelated app-server requests begin expiring while queued with:
App server request expired while queued
Affected RPCs include:
- thread/read
- thread/resume
- thread/list
- model/list
- config/read
- configRequirements/read
- skills/list
- plugin/installed
- mcpServerStatus/list
Eventually Local Work thread hydration/resume and message submission cannot proceed.
This appears similar to other reports of the bounded/shared app-server request pool becoming saturated.
Additional observations
The bundled plugin reconciliation process is active around the time the request queue begins to stall.
In particular, the logs repeatedly show the bundled sites plugin being considered missing and an installation being requested.
However, I have not established that bundled plugin reconciliation is the root cause. It may instead be another operation affected by the same underlying app-server blockage.
Disabling my user-configured MCP servers did not resolve the problem.
A process sample taken while the failure was occurring showed the bundled Codex process still alive rather than crashing.
Existing environment checks
Before establishing the clean reproduction, I also checked my normal environment.
Both databases pass SQLite integrity checks:
queue_1.sqlite:
PRAGMA quick_check; → ok
state_5.sqlite:
PRAGMA quick_check; → ok
I also tested:
- complete ChatGPT restart
- terminating the bundled Codex runtime
- terminating SkyComputerUseService
- checking thread writer locks
- removing an apparently stale writer lock
- resetting ChatGPT Desktop UI/profile state while preserving ~/.codex
- disabling user MCP servers
- completely fresh CODEX_HOME
None restored Local Work.
Why I think this may be related to existing issues
There appear to be several recent reports involving the same general failure mode:
- app-server reaches approximately six in-flight requests
- further RPCs accumulate
- requests expire while queued
- thread hydration/read/resume fails
- eventually interactive submission/turn/start cannot proceed
Related issues include:
- [macOS Desktop] app-server grows to 20-28 GB during thread hydration; queued turns time out and runtime is SIGKILLed #40540
- [Desktop] Unobserved MCP extension-host query is evicted after 5 minutes, retaining old sessions and spawning new MCP processes #43122
- Windows Desktop: Opening Plugins saturates app-server queue and causes subsequent message sends to time out #37401
- [Windows Desktop] Selected recent task stays blank while collaboration hydration starves app-server queue #36914
- [Codex App][Remote SSH] Thread hydration blocks the app-server queue and causes an endless reconnect loop #36189
- Windows Codex desktop: Send button spins forever and prompts never submit #40968
There are also several current issues involving ChatGPT Desktop 26.908.40834 and bundled-runtime/session failures.
I am filing this separately because my reproduction has an important difference:
the failure occurs on the first turn of a completely new Local Work conversation using a completely fresh CODEX_HOME.
There is therefore no existing conversation/history hydration or migrated user configuration required to trigger it.
Possible regression boundary
The relevant combination is:
ChatGPT Desktop 26.908.40834 / bundled Codex 0.154.0-alpha.6.2 / macOS 27.0 build 26A428 / Apple Silicon
I have not established whether the regression is:
- Desktop 26.908.40834
- bundled Codex 0.154.0-alpha.6.2
- macOS 27 / 26A428
- bundled plugin/app-server initialisation
- or an interaction between them.
Impact
Severity: blocking
Local Work is completely unavailable.
This prevents use of local Work capabilities including local tools/computer interaction. Cloud Work still functions, but it is not a substitute for workflows requiring the local Mac environment.
Diagnostics available
I can provide:
- ChatGPT Desktop logs covering the failure
- Codex process sample captured during the stall
- exact clean CODEX_HOME reproduction steps
- additional app-server logging if maintainers specify what would be useful
I have preserved my original ~/.codex and have not deleted the affected local conversations.
Request
Could the Desktop/Codex team please:
- Confirm whether this matches an existing app-server queue starvation issue.
- Check whether the clean CODEX_HOME reproduction indicates a regression in 26.908.40834 / bundled 0.154.0-alpha.6.2.
- Confirm whether macOS 27 build 26A428 is a known factor.
- Advise if there is a supported feature flag or launch option that bypasses the component occupying the app-server request slots.
- Identify a known-good Desktop build if rollback is currently the recommended workaround.
I am happy to run targeted diagnostics against the clean environment if that would help isolate which app-server requests are occupying the in-flight slots.
What steps can reproduce the bug?
.
What is the expected behavior?
.
Additional information
.
Activity
github-actions commentedon Sep 14, 2026
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
Miles-Cheverton commentedon Sep 14, 2026
Additional context after investigating related reports:
This appears to belong to a broader cluster of Desktop local app-server/request-queue failures rather than being isolated to my existing local state.
The particularly important aspect of this report is that I can reproduce it with a completely fresh CODEX_HOME on the first message of a brand-new Local Work conversation:
new empty CODEX_HOME → new Work conversation → Local → "run test" → Send spins indefinitely
Cloud Work continues to work.
My normal-environment logs repeatedly reach:
inFlightRequestCount=6
followed by:
App server request expired while queued
with thread/read, thread/resume, thread/list, config/model/plugin/skills calls subsequently timing out.
Related reports that appear potentially relevant include #40540, #43122, #37401, #36914, #36189 and #40968.
There is also an older macOS report, #13715, where all local Codex clients hang on even trivial prompts while web continues to work.
I have also opened an OpenAI Support case and supplied the clean-environment reproduction there.
Happy to run a diagnostic build, collect targeted traces, or test a known-good/known-bad Desktop build if that would help identify the regression boundary.
Miles-Cheverton commentedon Sep 14, 2026
Additional concrete reproduction/error
I have now obtained an explicit error when attempting to open/resume one of the affected Local Work conversations:
Failed to resume chat
paginated threads do not support initialTurnsPage; use turnsBackwardsCursor and itemsBackwardsCursor
This appears potentially significant because it suggests the Desktop client is attempting to resume a paginated local thread using initialTurnsPage, while the bundled app-server expects the cursor-based turnsBackwardsCursor / itemsBackwardsCursor API.
Environment remains:
ChatGPT Desktop 26.908.40834
bundled Codex 0.154.0-alpha.6.2
macOS 27.0 / 26A428
This may also help explain the thread/resume failures and subsequent app-server request queue starvation reported above.
Miles-Cheverton commentedon Sep 14, 2026
Update — recovery found on 14 September 2026; underlying cause still unconfirmed
I lost an entire working day to this failure and the troubleshooting. Local Work is now working again after the recovery below.
What restored Local Work
On 14 September 2026, turning Allow Connections OFF and then ON again in ChatGPT Desktop on the affected Mac Studio unblocked Local Work. I reported the recovery at 15:55:49 BST (14:55:49 UTC) and confirmed at 15:56:48 BST (14:56:48 UTC) that local Work sessions were working normally.
Recovery procedure: on the affected Mac, open ChatGPT Desktop, turn Allow Connections off, wait a few seconds, turn it on again, and test a Local Work conversation.
This is an observed workaround on my machine. I have not established which internal component it resets, whether it is a permanent fix, or whether it applies to other operating systems. I did not downgrade macOS to obtain this recovery.
Environment and comparison machine
The same account worked on the Air while the Studio failed. Cloud Work continued to work. The OS-build difference was an investigative lead, not proof that 26A428 caused the failure: the Studio recovered without changing its OS build.
Failure and reproduction
Existing Local Work conversations would not open or resume properly. The failure also affected the first turn of a completely new Local Work conversation:
CODEX_HOME, without copying normal configuration, conversations or databases.run testand press Send.I reported that clean-home test failing at about 11:28 BST. Later, a launch using both a fresh temporary
CODEX_HOMEand a separate--user-data-diralso failed. These are the tests performed; I have not independently proved that every Desktop service honoured those directory overrides.Diagnostics
inFlightRequestCount=6andApp server request expired while queued.thread/read,thread/resume,thread/list,model/list,config/read,configRequirements/read,skills/list,plugin/installedandmcpServerStatus/list.thread/readandthread/resumewhile the composer was spinning, without aturn/startappearing in that capture.queue_1.sqliteandstate_5.sqlitereturnedokfromPRAGMA quick_checkbefore the database experiments. This establishes the check results, not that every stored item or protocol interaction was correct.sites, appeared around the stalls. This remains a correlation.model: loading/Resuming session…. Merely opening the CLI did not demonstrate a working backend.paginated threads do not support initialTurnsPage; use turnsBackwardsCursor and itemsBackwardsCursor, and an Air-to-Studio error containingunknown variant 'functionCallOutput'. The latter was encountered while the Studio was on the rollback build, so version mismatch is a possible confounder.What we tried before the successful toggle
These are historical attempts and outcomes, not recommendations to repeat invasive changes.
CODEX_HOMECODEX_HOMEplus separate Desktop data directoryhistory_modefrom paginated to legacystate_5.sqlitewas restored from the 10:26 backup. This was not the fix.CODEX_CLI_PATHWhat this now suggests
Host connection state is a useful lead because both connecting from another Mac and toggling Allow Connections affected the behaviour. That does not establish whether the cause is registration, transport, request scheduling, remote-control state, a Desktop bug or an OS interaction.
Please keep the underlying defect under investigation. A recovery toggle does not establish that it will stay fixed, and the earlier Air-assisted recovery was temporary. The useful next step is to identify what Allow Connections resets and compare the app-server/host state immediately before and after that action.
Please also distinguish this report from database-corruption, renderer-crash and pagination-only issues: my clean first-turn failure and the eventual host-setting recovery need an explanation of their own.
Miles-Cheverton commentedon Sep 17, 2026
Update after installing ChatGPT Desktop 26.911.61220: Local Work is now working normally again on the same Mac. All of my previous Local Work threads have reappeared and are usable, and nothing appears to have been lost. I did not need to recreate threads, migrate data, or reset Local Work history. For me the regression boundary is: previous desktop build broken / requests stalled; 26.911.61220 working normally with all old threads restored. I can't confirm whether this build intentionally contains the fix, but it has completely resolved the problem on my machine so far.