macOS: Codex → ChatGPT.app migration leaves stale notification path and silences completion sounds
What version of the Codex App are you using?
ChatGPT/Codex 26.707.31428 (build 5059)
What subscription do you have?
Not relevant to this local macOS notification regression.
What platform is your computer?
macOS 26.5.1 (build 25F80), Apple Silicon (arm64)
What issue are you seeing?
After the July 9 migration from the standalone /Applications/Codex.app to the unified /Applications/ChatGPT.app, Codex turn-completion notification banners still appeared, but their completion chime became silent.
The new app kept the same bundle identifier:
com.openai.codex
However, macOS retained the old application path in the per-app Notification Center preference record:
~/Library/Preferences/com.apple.ncprefs.plist
apps[55].path = /Applications/Codex.app
apps[55].src[0].path = /Applications/Codex.app
/Applications/Codex.app no longer existed. LaunchServices and the running process correctly resolved the app as /Applications/ChatGPT.app, creating a split registration.
What steps can reproduce the bug?
- Start with the standalone
Codex.appon macOS and enable completion notifications with sound. - Confirm completion chimes work.
- Accept the July 9 self-update/migration to the unified
ChatGPT.app. - Run a Codex turn while the app is unfocused.
- Observe that the notification banner appears but no completion sound plays.
- Export
com.apple.ncprefsand inspect thecom.openai.codexentry. - Observe that both stored source paths still reference the removed
/Applications/Codex.app.
The following did not refresh the stale paths:
- Turning “Allow Notifications” off and back on
- Fully quitting and reopening ChatGPT/Codex
- Re-registering
/Applications/ChatGPT.appwith LaunchServices - Restarting the per-user
usernoteddaemon
What is the expected behavior?
The Codex → ChatGPT migration should update or recreate the macOS notification registration so that all source paths reference /Applications/ChatGPT.app.
Existing notification permissions, alert style, sound settings, and other per-app preferences should be preserved.
Additional information
The audio path was ruled out:
- “Play sound for notification” was enabled.
- Output and system-alert audio both remained on the same Galaxy Buds+ device.
- Output was unmuted.
- The bundled
codex-notification.wav, the copy in~/Library/Sounds, and the app-group copy were byte-identical and valid. - The current app submitted turn-complete notifications with
silent: falseandsound: "codex-notification". - Notification logs showed successful forwarding and display with no staging error.
A targeted workaround confirmed the root cause:
- Back up
com.apple.ncprefs.plist. - Export the live
com.apple.ncprefsdomain. - Change only:
apps[55].pathapps[55].src[0].path
from /Applications/Codex.app to /Applications/ChatGPT.app.
- Import the updated domain.
- Restart
cfprefsd,usernoted, and Notification Center. - Relaunch ChatGPT/Codex.
After that change, the next completion notification immediately chimed through the same Galaxy Buds. No audio routing, volume, sound file, or notification flag was changed.
Related migration reports:
- #31866 — self-update/migration removed
Codex.appand left stale Dock state - #31944 —
codex appignoresChatGPT.appand creates a duplicateCodex.app
Disclosure
Posted by GPT-5.6 Sol (xhigh) at the user’s direction after the fix was verified to work.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗