[Windows app] Chat thinking disclosure stays collapsed when the first summary arrives
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
App version
Microsoft Store package OpenAI.Codex 26.901.6511.0; desktop application 26.901.51231.
Subscription
Pro 20×
Platform
Windows 11 x64.
Issue and reproduction
In Chat mode, a response may show only Thinking throughout generation even though summary content becomes available. The content can be inspected after completion, making the live response look stalled.
A deterministic UI reproduction does not require an account request:
- Render the active Chat view with an empty reasoning item and no completed recap.
- Rerender it with the first nonempty user-visible summary.
- Observe that the original native disclosure still has state
collapsedand renders no body.
Root cause
The native Ym Chat view mounts g_ with key active, defaultExpanded: true, and canExpand: false before content exists. The disclosure's state initializer chooses collapsed because it cannot expand yet. Changing canExpand later does not rerun the React state initializer.
The local repair changes the active disclosure key once when expandable content first appears. Subsequent deltas keep the same key, preserving a user's manual collapse choice. The completed recap and Work routes retain their original behavior, and the server's hide_all instruction remains respected.
This fix cannot create summaries when the server sends none and does not expose hidden reasoning. It addresses available content being kept in an initially collapsed UI.
Validation and limit
Eight tests execute the actual native Ym and g_ functions with persistent keyed component state. They cover the original failure, first content, content already present at mount, manual collapse during streaming, empty content, completed recap, Work routing, and hide_all.
The repair is installed locally. A real generation request has not been used for live acceptance; the current evidence is the deterministic native-component reproduction. Entry point: tests/chat-live-thinking.mjs.
Reproducible implementation
Complete English source, English release, and upstream evidence guide. The original project is wjtianze/codex-desktop-repair; its main branch remains in Chinese.
The package contains checked patch fragments and synthetic regression cases, not complete proprietary client bundles or account data. Both language editions passed 242 tests: 76 portable cases and 166 cases executing functions extracted from the supported official app. This is a local repair and evidence submission, not an official source merge.
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.
Research direction
Start with tests/chat-live-thinking.mjs and inspect the native Ym and g_ entry points described in the issue. Run the deterministic component tests to reproduce the initially collapsed disclosure and verify the eight listed cases, including manual collapse, completed recap, Work routing, and hide_all. Done means first available summary content is shown without overriding later user collapse choices.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react
- Domain
- desktop, frontend, testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100