diff --git a/codex-rs/tui/src/app/tests/session_lifecycle_requests.rs b/codex-rs/tui/src/app/tests/session_lifecycle_requests.rs index 8d2fdd1893..e3b8d37d50 100644 --- a/codex-rs/tui/src/app/tests/session_lifecycle_requests.rs +++ b/codex-rs/tui/src/app/tests/session_lifecycle_requests.rs @@ -3276,6 +3276,7 @@ async fn check_dynamic_tool_requests( serde_json::json!({ "name": "create_thread", "namespace": "codex_tui", + "retain": true, "output": format!( "\n {creation_source}\n Check <main> & report\n" ) @@ -3361,6 +3362,7 @@ async fn check_dynamic_tool_requests( serde_json::json!({ "name": "send_message_to_thread", "namespace": "codex_tui", + "retain": true, "output": format!( "\n {thread_id}\n Follow <up> & report\n" ) diff --git a/codex-rs/tui/src/dynamic_tools.rs b/codex-rs/tui/src/dynamic_tools.rs index c294d4a9dd..065c9d3622 100644 --- a/codex-rs/tui/src/dynamic_tools.rs +++ b/codex-rs/tui/src/dynamic_tools.rs @@ -1271,7 +1271,7 @@ async fn start_turn( // Older app-server/TUI versions are intentionally unsupported: // preserving tool authority takes precedence over legacy fallback. tool_output: Some(Box::new(TurnToolOutput { - retain: false, + retain: true, name: tool.to_string(), namespace: Some(NAMESPACE.to_string()), output: FunctionCallOutputBody::Text(prompt),