Client or integration
Codex App
Area
Streaming
Summary
On Codex Remote (iOS), a routed Grok turn first paints the model’s private thinking, then that text is pulled and replaced by the normal progress line. A leftover italic fragment stays on screen.
The same turn on Codex Desktop does not show that private thinking.
I expected Remote to show only the official progress / summary line, not the raw thinking and not a leftover scrap after the swap.
This is the same stored item shape as #45 (empty summary[] + content: [{ type: "reasoning_text" }]). #45 is the Desktop case: the chip has nothing to expand. This report is the Remote case: the raw channel is visible, then incompletely replaced.
Reproduction
- Run OpenCodex
2.24.2 with the official xAI Chat Completions route (openai-chat / https://api.x.ai/v1).
- In Codex App, use
xai/grok-4.6 (or xai-fast/grok-4.6).
- Open the same thread on Codex Remote on iOS and start a multi-step task.
- Watch the live turn on the phone: first-person private thinking appears, then the normal progress line replaces it. An italic tail fragment remains under the command card.
- Open the same settled turn on Codex Desktop: that private thinking is not shown.
The leftover italic on the phone matches the tail of a stored reasoning item in the session rollout. In one turn the leftover on screen was:
md as a current job.
6. Short test delay option: After successful activation, offer a temporary shorter delay (e.g.
Those strings are the end of a reasoning item whose summary is [] and whose content[0].type is reasoning_text. They are not in the following progress message.
A census of that thread: 179 / 179 reasoning items were summary: [] + a reasoning_text blob. Official summary text: 0 characters.
While the turn is live, the proxy emits response.reasoning_text.delta (raw channel), not response.reasoning_summary_text.delta.
Version
2.24.2
Operating system
macOS (Codex Desktop host) + iOS (Codex Remote)
Provider and model
xai / grok-4.6 (also seen on xai-fast / grok-4.6)
Logs or error output
# Stored reasoning item shape (text redacted)
{
"type": "reasoning",
"id": "rs_…",
"summary": [],
"content": [
{ "type": "reasoning_text", "text": "<full private thinking>" }
]
}
# Live stream for the same item
response.output_item.added reasoning summary: [] content: []
response.reasoning_text.delta
response.output_item.done reasoning summary: [] content: [{ type: "reasoning_text", … }]
No error status. The turn completes. The defect is the channel the thinking is written to, and how Codex Remote renders that channel.
Screenshots and supporting files
Not attaching the phone screenshot: it includes unrelated product text. The leftover italic fragments above are the on-screen evidence.
Redacted configuration
{
"providers": {
"xai": {
"adapter": "openai-chat",
"baseUrl": "https://api.x.ai/v1"
}
}
}
Checks
Additional information
Closest existing issue: #45 (closed). Same empty-summary + reasoning_text item. That thread is about Desktop having nothing to expand. This one is Codex Remote showing the raw thinking, then leaving italic leftovers after the progress line replaces it.
Related, different bugs: #1503 (Gemini thought text emitted as visible answer text), #1534 (DeepSeek reasoning_text replay 400). Neither is this Remote leak/flicker.
Client or integration
Codex App
Area
Streaming
Summary
On Codex Remote (iOS), a routed Grok turn first paints the model’s private thinking, then that text is pulled and replaced by the normal progress line. A leftover italic fragment stays on screen.
The same turn on Codex Desktop does not show that private thinking.
I expected Remote to show only the official progress / summary line, not the raw thinking and not a leftover scrap after the swap.
This is the same stored item shape as #45 (empty
summary[]+content: [{ type: "reasoning_text" }]). #45 is the Desktop case: the chip has nothing to expand. This report is the Remote case: the raw channel is visible, then incompletely replaced.Reproduction
2.24.2with the official xAI Chat Completions route (openai-chat/https://api.x.ai/v1).xai/grok-4.6(orxai-fast/grok-4.6).The leftover italic on the phone matches the tail of a stored reasoning item in the session rollout. In one turn the leftover on screen was:
md as a current job.6. Short test delay option: After successful activation, offer a temporary shorter delay (e.g.Those strings are the end of a
reasoningitem whosesummaryis[]and whosecontent[0].typeisreasoning_text. They are not in the following progress message.A census of that thread: 179 / 179 reasoning items were
summary: []+ areasoning_textblob. Official summary text: 0 characters.While the turn is live, the proxy emits
response.reasoning_text.delta(raw channel), notresponse.reasoning_summary_text.delta.Version
2.24.2
Operating system
macOS (Codex Desktop host) + iOS (Codex Remote)
Provider and model
xai / grok-4.6 (also seen on xai-fast / grok-4.6)
Logs or error output
No error status. The turn completes. The defect is the channel the thinking is written to, and how Codex Remote renders that channel.
Screenshots and supporting files
Not attaching the phone screenshot: it includes unrelated product text. The leftover italic fragments above are the on-screen evidence.
Redacted configuration
{ "providers": { "xai": { "adapter": "openai-chat", "baseUrl": "https://api.x.ai/v1" } } }Checks
Additional information
Closest existing issue: #45 (closed). Same empty-summary +
reasoning_textitem. That thread is about Desktop having nothing to expand. This one is Codex Remote showing the raw thinking, then leaving italic leftovers after the progress line replaces it.Related, different bugs: #1503 (Gemini thought text emitted as visible answer text), #1534 (DeepSeek
reasoning_textreplay 400). Neither is this Remote leak/flicker.