mirror of
https://github.com/openai/codex.git
synced 2026-10-19 17:28:46 +00:00
## Why Audio variants were available in the user-input protocol but were replaced with unsupported-input placeholders instead of being sent to the model. ## What changed - Serialize audio data URLs as `input_audio` content and convert local `wav`, `mp3`, `m4a`, `webm`, and `ogg` files to labeled data URLs. - Validate and canonicalize base64 audio before requests, enforce the 50 MiB input limit, and replace invalid, unsupported, or oversized audio with explanatory text. - Preserve audio attachments when mapping response items back to user-message events and document the app-server input variants. ## Testing - Add unit coverage for local-file conversion, data URL validation, size and format errors, event mapping, and attachment extraction. - Add client tests that verify data URL and local audio payloads sent to the Responses API. GitOrigin-RevId: f72cd6b6e43ab12757eeb47621b1d670594ac7d9
codex-protocol
This crate defines the "types" for the protocol used by Codex CLI, which includes both "internal types" for communication between codex-core and codex-tui, as well as "external types" used with codex app-server.
This crate should have minimal dependencies.
Ideally, we should avoid "material business logic" in this crate, as we can always introduce Ext-style traits to add functionality to types in other crates.