Files
codex/codex-rs/rollout-trace/AGENTS.md
T
cassirer-openai 94fc729602 Align rollout trace replay with the same-binary contract (#61199)
## Why

Raw trace events and payloads are implementation details of the recording executable. Matching release or schema versions do not establish compatibility with another binary.

## What changed

- Document that bundles must be reduced by the exact executable that recorded them, with `state.json` as the consumer API and `manifest.json` for discovery and identity.
- Require explicit thread IDs on code-cell runtime events and use structured agent-message metadata instead of parsing legacy assistant-message JSON.
- Include expected schema versions and guidance to use the recording executable in schema mismatch errors.
- Update agent-delivery test fixtures to use structured `agent_message` inputs and check manifest schema rejection directly.

GitOrigin-RevId: 67206fa554f1ba9c1bf9bfdad54840b5d86c5a77
2026-11-12 22:43:46 +00:00

17 lines
902 B
Markdown

# Rollout trace
Only the exact Codex binary that wrote a diagnostic trace bundle runs its
reducer. There is no cross-binary replay compatibility, even between builds
with identical version numbers.
- When changing a raw event or payload, update its writer, reducer, and affected
fixtures together. Do not add migrations, legacy parsers, or tests for another
binary's traces. A fallback needs a case the current writer can produce, such
as a recording interrupted between two events.
- Treat `state.json` as the consumer API and `manifest.json` identity metadata
as the bundle discovery API. For every `state.json` schema change, including
changes to types serialized in both raw events and reduced state, bump
`REDUCED_TRACE_SCHEMA_VERSION` and consider backward compatibility for
consumers. Breaking changes are allowed. Raw-only changes do not require a
reduced-state version bump.