mirror of
https://github.com/openai/codex.git
synced 2026-11-14 21:40:39 +00:00
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
This commit is contained in:
committed by
copyberry
parent
fae87361f4
commit
94fc729602
@@ -560,35 +560,6 @@ impl TraceReducer {
|
||||
self.add_code_cell_output_item(&code_cell_id, item_id)
|
||||
}
|
||||
|
||||
/// Resolves the owning thread for a code-cell runtime event.
|
||||
///
|
||||
/// Runtime events should carry a thread id, but older/raw paths may only have
|
||||
/// the turn id. The fallback keeps replay strict while avoiding duplicate logic
|
||||
/// in every code-cell event arm.
|
||||
pub(super) fn code_cell_event_thread_id(
|
||||
&self,
|
||||
thread_id: Option<String>,
|
||||
codex_turn_id: Option<&str>,
|
||||
runtime_cell_id: &str,
|
||||
event_name: &str,
|
||||
) -> Result<String> {
|
||||
if let Some(thread_id) = thread_id {
|
||||
return Ok(thread_id);
|
||||
}
|
||||
let Some(codex_turn_id) = codex_turn_id else {
|
||||
bail!("{event_name} {runtime_cell_id} did not include a thread id");
|
||||
};
|
||||
self.rollout
|
||||
.codex_turns
|
||||
.get(codex_turn_id)
|
||||
.map(|turn| turn.thread_id.clone())
|
||||
.with_context(|| {
|
||||
format!(
|
||||
"{event_name} {runtime_cell_id} referenced unknown Codex turn {codex_turn_id}"
|
||||
)
|
||||
})
|
||||
}
|
||||
|
||||
/// Derives the stable reduced code-cell id from the model-visible exec call id.
|
||||
pub(super) fn reduced_code_cell_id_for_model_visible_call(
|
||||
model_visible_call_id: &str,
|
||||
|
||||
Reference in New Issue
Block a user