mirror of
https://github.com/openai/codex.git
synced 2026-05-02 04:11:39 +03:00
## TL;DR Fix duplicated reasoning summaries in `tui_app_server`. <img width="1716" height="912" alt="image" src="https://github.com/user-attachments/assets/6362f25a-ab1c-4a01-bf10-b5616c9428c2" /> During live turns, reasoning text is already rendered incrementally from `ReasoningSummaryTextDelta`. When the same reasoning item later arrives via `ItemCompleted`, we should only finalize the reasoning block, not render the same summary again. ## What changed - only replay rendered reasoning summaries from completed `ThreadItem::Reasoning` items - kept live completed reasoning items as finalize-only - added a regression test covering the live streaming + completion path ## Why Without this, the first reasoning summary often appears twice in the transcript when `model_reasoning_summary = "detailed"` and `features.tui_app_server = true`.