mirror of
https://github.com/openai/codex.git
synced 2026-11-13 14:46:14 +00:00
Track root turns across delegated Codex requests (#38232)
## Why `parent_turn_id` identifies the immediate caller of a nested request, but not the top-level turn that initiated a multi-level chain of work. ## What changed - Add `root_turn_id` to turn state, submissions, and Responses API metadata. - Propagate the root through spawned agents, delegated work, review sessions, and turn-triggering inter-agent messages. - Omit the root when background work has no user turn or combined input makes the root ambiguous. ## Testing Added coverage for nested agent resumes, reviews, mailbox delivery, steered input, and reserved metadata handling. GitOrigin-RevId: 60057db2ee81f4efefa946a9f63c74ff98b93929
This commit is contained in:
1 parent
9df9ff6ad9
commit
1f4ea79853
38 files changed
+470
-65
No files matched your search
@@ -121,6 +121,9 @@ pub(super) async fn spawn_review_thread(
|
||||
parent_turn_context.network.is_some(),
|
||||
auto_review_enabled,
|
||||
));
|
||||
if turn_metadata_state.can_start_root_turn(&session_source) {
|
||||
turn_metadata_state.set_root_turn_id(review_turn_id.clone());
|
||||
}
|
||||
|
||||
let extension_data = Arc::new(codex_extension_api::ExtensionData::new(
|
||||
review_turn_id.clone(),
|
||||
|
||||
Reference in new issue
Block a user