Skip to content

Codex Desktop macOS crashed during Sparkle auto-update with SIGSEGV and failed app replacement #23845

@rogierx

Description

@rogierx

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

Current after relaunch/update: 26.513.31313 (CFBundleVersion 2867).

The crashed running process was from the previous app version, based on its crashpad annotation: 26.513.20950.

What subscription do you have?

ChatGPT Pro

What platform is your computer?

Darwin 24.5.0 arm64 arm

Additional platform detail: macOS 15.5 build 24F74, Apple Silicon (arm64).

What issue are you seeing?

Codex Desktop crashed while Sparkle was finalizing an auto-update on macOS. The visible desktop/Electron shell exited, while a background codex app-server process survived.

The key event was at 2026-05-21 02:07:39 +0200:

launchd[1]: [gui/501/application.com.openai.codex... [670]:] exited due to SIGSEGV | sent by exc handler[670], ran for 101005154ms
runningboardd: [app<application.com.openai.codex...>:670] termination reported by launchd (2, 11, 11)
loginwindow: App: Codex, quit, updating active tracking timer

At the same timestamp, Sparkle failed to finalize the replacement:

Autoupdate[892] [org.sparkle-project.Sparkle:Sparkle] Invoking fallback from failing to replace original item with error: Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory" UserInfo={NSLocalizedDescription=Failed to replace Codex.app with Codex.app.}
Autoupdate[892] [org.sparkle-project.Sparkle:Sparkle] Error: Failed to finalize installation
Autoupdate[892] [org.sparkle-project.Sparkle:Sparkle] Error: Failed to move new app at /Users/<user>/Library/Caches/com.openai.codex/org.sparkle-project.Sparkle/Installation/<redacted>/<redacted>/Codex.app to final destination /Applications/Codex.app
Autoupdate[892] [org.sparkle-project.Sparkle:Sparkle] Error: Source file to move (Codex.app) does not exist. The file doesn't exist.
Updater[893] [org.sparkle-project.Sparkle:Sparkle] Couldn't remove agent bundle: Error Domain=NSCocoaErrorDomain Code=4 "Updater.app couldn't be removed." ... NSUnderlyingError={Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}

Other nearby evidence:

kernel: AMFI: Denying core dump for pid 670 (Codex)
powerd: Process Codex.670 ClientDied NoIdleSleepAssertion "Electron" age:17:29:04
powerd: Process Codex.670 ClientDied NoDisplaySleepAssertion "Video Wake Lock" age:03:10:21

No reboot happened at that time. The machine stayed up, and Codex relaunched later. After relaunch, the app bundle on disk was 26.513.31313, and local verification passed:

/Applications/Codex.app: valid on disk
/Applications/Codex.app: satisfies its Designated Requirement
/Applications/Codex.app: accepted
source=Notarized Developer ID

All local usernames, machine names, cache subdirectory names, and network/IP details are redacted from the excerpts above.

What steps can reproduce the bug?

I do not have a minimal deterministic repro yet; this is an observed auto-update failure with timestamped macOS logs.

Observed sequence:

  1. Run Codex Desktop 26.513.20950 on macOS for an extended period.
  2. Leave the app open while Sparkle auto-update runs in the background.
  3. During update finalization, the main Codex desktop process exits with SIGSEGV.
  4. Sparkle logs a failed app replacement because the staged Codex.app source path no longer exists.
  5. Relaunching later succeeds and the app ends up on 26.513.31313.

Session ID / token usage / context window usage: not applicable. This appears to be a local desktop app updater crash, not a model-session failure.

What is the expected behavior?

Codex Desktop should not crash during Sparkle auto-update finalization.

If the staged update is missing or cannot be moved into /Applications/Codex.app, the updater should fail gracefully, keep the existing app usable, and show/log a recoverable update failure. It should not take down the running desktop shell with SIGSEGV.

Additional information

I checked for likely duplicates before filing. These appear related but not exact duplicates:

This report is specifically about a macOS SIGSEGV during Sparkle update finalization with simultaneous Failed to finalize installation / missing staged Codex.app errors.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething 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