mirror of
https://github.com/openai/codex.git
synced 2026-11-09 00:39:32 +00:00
Use captured step settings for tool planning and execution (#44242)
## Why After a model change within a turn, tools could still use the turn's original model capabilities, output limits, and telemetry attribution. ## What changed - Build each step's tool plan from its captured model settings. - Use those settings for image support and detail, command and MCP output truncation, extension metadata, and tool telemetry. - Preserve the issuing step's model for delayed command completion events while allowing later `write_stdin` calls to use their own step's output limits. ## Testing Add regression coverage for model changes within a turn, including tool replanning, Code Mode execution, image handling, MCP tool and resource output limits, extension settings, and delayed command completion. GitOrigin-RevId: ef991598e89a846889baf770a0c9e12e56886d5d
This commit is contained in:
1 parent
ed4ca07ba6
commit
205f3671e1
24 files changed
+1053
-241
No files matched your search
@@ -3670,13 +3670,10 @@ impl Session {
|
||||
});
|
||||
extension_data.insert(selected_plugins.clone());
|
||||
turn_context.extension_data.insert(selected_plugins);
|
||||
// Tool availability still follows the admitted turn; the async message
|
||||
// description comes from the captured step model.
|
||||
let tool_router = turn::built_tools(
|
||||
self.as_ref(),
|
||||
turn_context.as_ref(),
|
||||
// TODO(CDXENT-441): use the step scoped model
|
||||
turn_context.model_info(),
|
||||
&settings.model_info,
|
||||
settings.model_info.model_messages.as_ref(),
|
||||
&environments,
|
||||
&mcp,
|
||||
@@ -3685,8 +3682,7 @@ impl Session {
|
||||
)
|
||||
.or_cancel(cancellation_token)
|
||||
.await??;
|
||||
// Publish inventory after planning rather than during finalization, so constructing
|
||||
// additional candidate plans cannot overwrite turn-wide metadata.
|
||||
// Publish inventory only after the step's tool plan has been finalized.
|
||||
if turn_context
|
||||
.config
|
||||
.tool_registry
|
||||
|
||||
Reference in new issue
Block a user