Skip to content

Experimental feature check disabling app startup #19279

@jeet-genlift

Description

@jeet-genlift

What version of the Codex App are you using (From “About Codex” dialog)?

Version 26.422.21637 (2056) — current latest on both prod and public-beta Sparkle feeds as of 2026-04-24.

What subscription do you have?

Pro

What platform is your computer?

Darwin 25.4.0 arm64 (macOS)

What issue are you seeing?

After updating to 26.422.21637, the app hangs on the startup screen and never becomes interactive. The renderer mounts its routes repeatedly (~15×/sec) and never stabilizes. The underlying cause is a version mismatch between the bundled app-server and what the renderer expects:

  • Bundled app-server: codex-cli 0.124.0-alpha.2
  • Renderer expectation: an app-server that supports an experimental feature named workspace_dependencies

On every route mount the renderer calls experimentalFeature/enablement/set { name: "workspace_dependencies", enabled: true }, the app-server rejects it with -32600, and the renderer re-mounts, producing an infinite loop.

The app-server's error message lists the features it does support — workspace_dependencies is not among them:

unsupported feature enablement workspace_dependencies:
currently supported features are apps, memories, plugins, tool_search, tool_suggest, tool_call_mcp_elicitation

Rust codex 0.124.0 final (which likely does support workspace_dependencies) was released ~7h before the 26.422.21637 desktop build shipped, but the desktop bundle pinned 0.124.0-alpha.2 instead of the final.

What steps can reproduce the bug?

  1. Run Codex desktop 26.422.21637 on Apple Silicon macOS, signed in to a Pro account.
  2. Launch the app — it hangs on the startup screen.
  3. Tail ~/Library/Logs/com.openai.codex/<date>/codex-desktop-*.log:
    • Thousands of: Failed to sync experimental feature enablement … workspace_dependencies
    • Repeating: [startup][renderer] app routes mounted after NNNms (the NNN keeps incrementing across remounts)

Reproduces on a clean profile and with all plugins disabled (documents, spreadsheets, presentations set to enabled = false in ~/.codex/config.toml) — ruling out plugins as the trigger.

What is the expected behavior?

  • Renderer should not retry experimentalFeature/enablement/set for a feature the app-server reports as unsupported.
  • The renderer should degrade gracefully when the app-server doesn't advertise workspace_dependencies (either hide the dependent feature surface or log once and move on), rather than entering a mount/unmount loop.
  • The released desktop build should not ship a renderer expecting features that aren't in the bundled app-server.

Additional information

Impact. In one ~57-second startup attempt, I captured:

  • 1,961 workspace_dependencies errors
  • 244 app routes mounted events
  • ~10 MB of desktop log produced in <1 minute

Workaround. Downgrade to 26.417.41555 (app-server codex-cli 0.122.0-alpha.13) — available on the Sparkle feed at https://persistent.oaistatic.com/codex-app-prod/Codex-darwin-arm64-26.417.41555.zip. That version has internally-consistent renderer/app-server components and starts up normally. Sparkle will still offer to upgrade back to 26.422.21637; declining keeps things working.

Log signature for triage:

error [electron-message-handler] Failed to sync experimental feature enablement
error={"code":-32600,"message":"unsupported feature enablement workspace_dependencies: …"}
hostId=local
info [electron-message-handler] [startup][renderer] app routes mounted after NNNms (repeating, ~15×/sec)

Happy to share a raw log file if useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appapp-serverIssues involving app server protocol or interfacesbugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions