Mac and iOS show conflicting live states for the same Codex thread after context compaction

Open 💬 2 comments Opened Aug 10, 2026 by Falbahar55
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

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

260807.1515

What subscription do you have?

Pro

What platform is your computer?

Darwin 25.6.0 x86_64 i386

What issue are you seeing?

The same active Codex thread is showing conflicting execution states on the Codex Mac app and iOS.

Both devices are viewing the same thread connected to the same Mac host, but they display different and sometimes contradictory progress/reasoning at the same time.

For example, on Mac, Codex reported that the core fix had already been implemented and it was proceeding to run tests/prebuild. At approximately the same time, iOS reported that it was reviewing partially recovered work as untrusted, finding additional issues, and fixing them before testing.

The diff counters also diverged. At one point:
Mac: 19 files changed, +919 -51
iOS: 19 files changed, +830 -51

Earlier:
Mac: 8 files changed, +264 -9
iOS: 10 files changed, +418 -9

This started around/after “Context automatically compacted”. I also received a “Codex request expired” error on iOS earlier in the same thread.

This does not appear to be normal synchronization latency because iOS was sometimes ahead of Mac while showing a different execution narrative.

I did not intentionally start two separate tasks.

<img width="585" height="1266" alt="Image" src="https://github.com/user-attachments/assets/fb5aed07-a43f-4c5c-b34c-66e58ed16067" />
<img width="585" height="1266" alt="Image" src="https://github.com/user-attachments/assets/451ff160-3487-4b6e-8e52-fc0b3649f726" />
<img width="1128" height="1504" alt="Image" src="https://github.com/user-attachments/assets/023e5ca3-9219-42b8-a9d4-1350f02d60b8" />
<img width="1128" height="1504" alt="Image" src="https://github.com/user-attachments/assets/77fb9eaa-dbce-4b1d-98af-6fa55d171d1e" />

What steps can reproduce the bug?

  1. Start a long-running Codex task in the Codex Mac app.
  2. Open the same active thread from iOS while it is still running.
  3. Allow the thread to reach automatic context compaction (“Context automatically compacted”).
  4. Continue monitoring the same thread simultaneously from Mac and iOS.
  5. After compaction/recovery, Mac and iOS may begin showing different reasoning/progress states and different diff counters for what appears to be the same active execution.

What is the expected behavior?

The same active Codex thread connected to the same Mac host should show the same execution state on Mac and iOS. A small synchronization delay is acceptable, but the clients should not show contradictory execution histories or different states for the same running task.

Additional information

Model used during the issue: GPT-5.6 Sol, Extra High.

Screenshots from both Mac and iOS are attached. They were taken within minutes of each other and show the same thread/host while displaying conflicting execution states.

The issue appeared after automatic context compaction and was preceded by a “Codex request expired” error on iOS.

codex_bug_evidence.zip

Please investigate whether context compaction/recovery can cause the Mac and mobile remote-session event streams to diverge, replay different states, or become independently stale.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 17 days ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #37620

Powered by Codex Action

Falbahar55 · 17 days ago

Thanks. I reviewed #37620. It appears closely related, but I don’t believe this is an exact duplicate.

#37620 describes persisted iOS turns being omitted from the model context of a later Desktop run.

In #37868, the divergence occurs while observing the same active execution from Mac and iOS. I did not intentionally start separate tasks or need to send mobile follow-up turns to trigger it. Both clients displayed conflicting live execution/progress states for what appeared to be the same running thread, including different diff counters and contradictory descriptions of what had already been implemented versus what was still being reviewed/fixed.

Both cases may share an underlying cross-device/context-compaction reconciliation issue, but the observed failure mode is different.

I have left #37868 open so maintainers can determine whether they share the same root cause.