macOS: ChatGPT/Codex Dock icon position resets after every app update
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- macos, rust
- Domain
- desktop, operating-systems
Research direction
Start with the update/migration startup path and the bundled launch-services-helper entry points named in the report: needs-renamed-dock-tile-repair and repair-renamed-dock-tile. Reproduce an update with ChatGPT pinned away from the leftmost Dock position, then inspect how persistent-apps is rewritten. Done means the renamed or repaired tile retains its original Dock array index across updates.
Written by the indexing model from the issue text.
Description
What version of the Codex App are you using (From “About Codex” dialog)?
ChatGPT/Codex Desktop 26.721.41059 (build 5848)
Installed bundle:
/Applications/ChatGPT.app
CFBundleDisplayName: ChatGPT
CFBundleIdentifier: com.openai.codex
What subscription do you have?
Not relevant to this local macOS Dock/update issue.
What platform is your computer?
macOS 26.5.2 (build 25F84)
What issue are you seeing?
After every ChatGPT/Codex desktop app update and the first relaunch, the pinned app icon is moved to the far-left position in the macOS Dock.
Manually moving the icon back to the desired position works only until the next app update. Ordinary relaunches after the update do not appear to reproduce the move; it is tied to the update/migration path.
Local checks show:
- There is only one installed copy:
/Applications/ChatGPT.app. - No duplicate
Codex.apporChatGPT Classic.appexists. - The Dock has only one ChatGPT entry.
- The Dock entry uses bundle identifier
com.openai.codexand URLfile:///Applications/ChatGPT.app/.
The installed app contains an explicit renamed-Dock-tile repair path. Its startup code checks needs-renamed-dock-tile-repair, temporarily switches the activation policy to accessory, invokes repair-renamed-dock-tile, and then restores the regular activation policy.
The bundled native launch-services-helper directly references com.apple.dock, persistent-apps, and symbols including:
needsRenamedDockTileRepair
repairRenamedDockTile
renamedDockTileRepairCandidate
matchesLegacyPersistentTile
_RunRenamedDockTileTransaction
_DIAddFile
IFActionsDock
After the migration has run, this read-only check returns false:
launch-services-helper needs-renamed-dock-tile-repair /Applications/ChatGPT.app
This strongly suggests that the renamed Dock tile repair rewrites or re-adds the persistent Dock tile but does not preserve the tile's original array index, causing macOS to place it at the far-left position.
What steps can reproduce the bug?
- Pin ChatGPT/Codex in any non-leftmost Dock position.
- Install a desktop app update.
- Allow the app to relaunch after the update.
- Observe that the ChatGPT/Codex Dock icon has moved to the far-left position.
- Move it back manually.
- Install the next update and observe the same reset again.
What is the expected behavior?
The update/rename repair should preserve the existing Dock tile's user-selected position.
If the repair must replace the tile, it should capture the original index in persistent-apps and insert the repaired tile at that same index instead of adding it at the beginning.
Additional information
The app update time and Dock preference rewrite were consistent with this sequence during diagnosis:
- App updated: July 25, 2026 at approximately 05:57 local time.
- Dock preferences rewritten: July 26, 2026 at approximately 11:28 local time.
Related migration reports:
- #31866 — self-update removed
Codex.appand left stale Dock state. - #31961 — migration left a stale Notification Center path.
- #32022 — migration left the unified app missing from Launchpad.
This report is narrower: the migrated app exists and works, but every subsequent update resets the Dock tile position.
Posted by Codex at the affected user's direction after the local Dock record, bundle identity, installed-app count, and bundled repair path were inspected.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- Avg merge
- 1m
- Merged PRs (30d)
- 1k
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openai/codex
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug CLI windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
macOS sandbox blocks hw.optional.arm64 sysctl, causing Flutter to misdetect Apple Silicon as x64 Openbug CLI sandbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug CLI TUI
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
CLI config enhancement skills
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
A-linter
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
oxc-project/oxc#26863 ·