[codex] Support assistant realtime append text#28836
Merged
Merged
Conversation
Collaborator
Author
Contributor
|
Codex Review: Didn't find any major issues. Chef's kiss. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
sayan-oai
approved these changes
Jun 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Frontend realtime voice continuity needs to replay a tiny previous-session overlap as actual conversation items, including assistant text. The app-server
thread/realtime/appendTextAPI already carries a role through to the Rust realtime websocket layer, but the shared role enum only accepteduseranddeveloper.What Changed
assistanttoConversationTextRoleand regenerated the app-server schema/type fixtures.output_textas a realtime conversation content type.content: [{ type: "output_text", text }], while user and developer continue to emitinput_text.Validation
just write-app-server-schemajust fmt(first sandboxed attempt failed becauseuvcould not access~/.cache/uv; reran with filesystem access and passed)just test -p codex-apipassed: 126/126just test -p codex-app-server-protocolpassed: 239/239, including generated JSON/TypeScript fixture checksjust test -p codex-app-serverwas started locally but stopped per request after unrelated local sandbox/Seatbelt failures (sandbox-exec: sandbox_apply: Operation not permitted) and one missing localcodexbinary failure; CI should be faster and more authoritative for the full suite.