Before submitting
Area
apps/server
Steps to reproduce
- In a Codex thread, have the agent ask a question using
request_user_input_async.
- Enter a custom answer in the question panel and submit it.
- Read the resulting user message in the transcript.
A minimal example is a question of Which package manager? and an answer of pnpm. This concerns the async question tool, not the older blocking question flow.
Expected behavior
The transcript distinguishes the agent's question from the user's answer. Keeping the question as context is reasonable, but it should not appear to be text the user authored.
Actual behavior
The question and answer appear together in one user bubble, with no attribution or formatting that distinguishes them:
Which package manager?
pnpm
In the observed conversation, the agent asked about CPU power limits, fan/cooler settings, or RAM speed. The user entered only a reply about CPU cooler tuning presets. The resulting user bubble included the entire agent question before that reply.
A read-only inspection of that conversation's stored records confirmed:
- The
user-input.resolved activity contains only the user's reply in answers.
- The generated
async-answer:... user message contains the full question followed by that reply.
This is not only a renderer issue. The server constructs and persists the combined text, and the normal turn path sends that text to the provider.
Impact
Cosmetic issue
The transcript misattributes the question to the user. No failed delivery, duplicate submission, or change in the agent's reasoning was demonstrated.
Version or commit
Source verified at 061543e9e5b54ec0048725c37d52fef2962df173, which matched upstream main when checked. The exact installed version behind the original observation was not recorded.
Environment
Observed in the T3 chat UI with Codex async questions. The source path is shared by web, desktop, and mobile clients. Exact browser/desktop and Codex versions were not recorded; this was not independently reproduced on each client.
Supporting evidence
The focused engine test was attempted but failed during imports with Schema.TaggedError is not a function, before any test ran. Installed Effect was 4.0.0-beta.103, while this checkout requires 4.0.0-rc.112. The evidence above is from the observed transcript, persisted records, and source inspection, not a successful new test run.
Workaround
No verified workaround. The report asks for clear attribution of question context, without requiring removal of that context from the provider message or a particular UI design.
Before submitting
Area
apps/server
Steps to reproduce
request_user_input_async.A minimal example is a question of
Which package manager?and an answer ofpnpm. This concerns the async question tool, not the older blocking question flow.Expected behavior
The transcript distinguishes the agent's question from the user's answer. Keeping the question as context is reasonable, but it should not appear to be text the user authored.
Actual behavior
The question and answer appear together in one user bubble, with no attribution or formatting that distinguishes them:
In the observed conversation, the agent asked about CPU power limits, fan/cooler settings, or RAM speed. The user entered only a reply about CPU cooler tuning presets. The resulting user bubble included the entire agent question before that reply.
A read-only inspection of that conversation's stored records confirmed:
user-input.resolvedactivity contains only the user's reply inanswers.async-answer:...user message contains the full question followed by that reply.This is not only a renderer issue. The server constructs and persists the combined text, and the normal turn path sends that text to the provider.
Impact
Cosmetic issue
The transcript misattributes the question to the user. No failed delivery, duplicate submission, or change in the agent's reasoning was demonstrated.
Version or commit
Source verified at
061543e9e5b54ec0048725c37d52fef2962df173, which matched upstreammainwhen checked. The exact installed version behind the original observation was not recorded.Environment
Observed in the T3 chat UI with Codex async questions. The source path is shared by web, desktop, and mobile clients. Exact browser/desktop and Codex versions were not recorded; this was not independently reproduced on each client.
Supporting evidence
The focused engine test was attempted but failed during imports with
Schema.TaggedError is not a function, before any test ran. Installed Effect was4.0.0-beta.103, while this checkout requires4.0.0-rc.112. The evidence above is from the observed transcript, persisted records, and source inspection, not a successful new test run.Workaround
No verified workaround. The report asks for clear attribution of question context, without requiring removal of that context from the provider message or a particular UI design.