From 5d846acf727684f98c3f0f1a33ee1ecb74ff59d8 Mon Sep 17 00:00:00 2001 From: Charles Cunningham Date: Fri, 6 Mar 2026 01:25:25 -0800 Subject: [PATCH] codex: rename rollout request id field Rename the response stream field that carries an early request ID for rollout persistence so its purpose is explicit. Co-authored-by: Codex --- codex-rs/codex-api/src/common.rs | 2 +- codex-rs/codex-api/src/endpoint/responses_websocket.rs | 2 +- codex-rs/codex-api/src/sse/responses.rs | 6 +++--- codex-rs/core/src/client.rs | 4 ++-- codex-rs/core/src/client_common.rs | 2 +- codex-rs/core/src/codex.rs | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/codex-rs/codex-api/src/common.rs b/codex-rs/codex-api/src/common.rs index f94c775159..b749e70852 100644 --- a/codex-rs/codex-api/src/common.rs +++ b/codex-rs/codex-api/src/common.rs @@ -249,7 +249,7 @@ pub fn create_text_param_for_request( pub struct ResponseStream { pub rx_event: mpsc::Receiver>, - pub initial_request_id: Option, + pub rollout_request_id: Option, } impl Stream for ResponseStream { diff --git a/codex-rs/codex-api/src/endpoint/responses_websocket.rs b/codex-rs/codex-api/src/endpoint/responses_websocket.rs index 9a169dea82..aa6852dddb 100644 --- a/codex-rs/codex-api/src/endpoint/responses_websocket.rs +++ b/codex-rs/codex-api/src/endpoint/responses_websocket.rs @@ -271,7 +271,7 @@ impl ResponsesWebsocketConnection { // Websocket upgrade response headers are scoped to the connection, not // individual `stream_request` calls, so they cannot be used as per-turn // request IDs in rollout metadata. - initial_request_id: None, + rollout_request_id: None, }) } } diff --git a/codex-rs/codex-api/src/sse/responses.rs b/codex-rs/codex-api/src/sse/responses.rs index 77286df104..4783631d5c 100644 --- a/codex-rs/codex-api/src/sse/responses.rs +++ b/codex-rs/codex-api/src/sse/responses.rs @@ -49,7 +49,7 @@ pub fn stream_from_fixture( tokio::spawn(process_sse(Box::pin(stream), tx_event, idle_timeout, None)); Ok(ResponseStream { rx_event, - initial_request_id: None, + rollout_request_id: None, }) } @@ -104,7 +104,7 @@ pub fn spawn_response_stream( ResponseStream { rx_event, - initial_request_id: request_id, + rollout_request_id: request_id, } } @@ -895,7 +895,7 @@ mod tests { }; let stream = spawn_response_stream(stream_response, idle_timeout(), None, None); - assert_eq!(stream.initial_request_id.as_deref(), Some("req_123")); + assert_eq!(stream.rollout_request_id.as_deref(), Some("req_123")); } #[tokio::test] diff --git a/codex-rs/core/src/client.rs b/codex-rs/core/src/client.rs index 8c97ffbe8e..4e9b6018c2 100644 --- a/codex-rs/core/src/client.rs +++ b/codex-rs/core/src/client.rs @@ -1100,7 +1100,7 @@ fn map_response_stream( ) -> (ResponseStream, oneshot::Receiver) { let (tx_event, rx_event) = mpsc::channel::>(1600); let (tx_last_response, rx_last_response) = oneshot::channel::(); - let initial_request_id = api_stream.initial_request_id.clone(); + let rollout_request_id = api_stream.rollout_request_id.clone(); tokio::spawn(async move { let mut logged_error = false; @@ -1171,7 +1171,7 @@ fn map_response_stream( ( ResponseStream { rx_event, - initial_request_id, + rollout_request_id, }, rx_last_response, ) diff --git a/codex-rs/core/src/client_common.rs b/codex-rs/core/src/client_common.rs index 9ae2be1e99..4fc7a8bad8 100644 --- a/codex-rs/core/src/client_common.rs +++ b/codex-rs/core/src/client_common.rs @@ -223,7 +223,7 @@ pub(crate) mod tools { pub struct ResponseStream { pub(crate) rx_event: mpsc::Receiver>, - pub(crate) initial_request_id: Option, + pub(crate) rollout_request_id: Option, } impl Stream for ResponseStream { diff --git a/codex-rs/core/src/codex.rs b/codex-rs/core/src/codex.rs index e5e2b91907..2d7091bf33 100644 --- a/codex-rs/core/src/codex.rs +++ b/codex-rs/core/src/codex.rs @@ -6340,7 +6340,7 @@ async fn try_run_sampling_request( } Err(codex_async_utils::CancelErr::Cancelled) => return Err(CodexErr::TurnAborted), }; - if let Some(request_id) = stream.initial_request_id.clone() { + if let Some(request_id) = stream.rollout_request_id.clone() { sess.send_event( &turn_context, EventMsg::ResponseMetadata(ResponseMetadataEvent {