mirror of
https://github.com/openai/codex.git
synced 2026-10-18 17:18:52 +00:00
## Why World-state snapshots and merge patches are keyed collections of sections. Allowing their persisted `state` field to contain any JSON value required replay code to handle shapes that cannot represent world state. ## What changed - Type `WorldStateItem.state` and snapshot patches as JSON object maps. - Reconstruct full snapshots directly from those maps and apply patches without fallible arbitrary-value conversions. - Regenerate the app-server protocol schema for the object-only representation. GitOrigin-RevId: 3d7662b74f3dd1f3ccc5fdd0200074c13a73cbe5
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.