mirror of
https://github.com/openai/codex.git
synced 2026-11-07 20:30:33 +00:00
Enforce strict third-party tool deferral in Code Mode Only (#59071)
## What changed Restore `code_mode_only_strict_3p_tools` as an opt-in feature under development. When the effective tool mode is Code Mode Only, keep eligible MCP/app and client-supplied dynamic tools deferred and callable through `exec`, regardless of `deferLoading`, `omit_tools_from`, or namespace exclusion and direct-only settings. Preserve hidden tools, tool policy restrictions, and built-in tool classification. Log conflicting exposure settings without adding warnings to the model prompt. Leave other effective tool modes unaffected. ## Testing Add coverage for exposure overrides, model mode overrides, built-in name collisions, and hidden or denied tools. Update integration coverage for app access restrictions and MCP catalog refreshes that preserve the cached prompt prefix while `exec` uses the current tools. GitOrigin-RevId: 0cb085ba9d23bebc48dbc3fa298b982de0a66c47
This commit is contained in:
@@ -164,7 +164,8 @@ pub enum Feature {
|
||||
CodeModeToolDescriptionFirst,
|
||||
/// Restrict model-visible tools to code mode entrypoints (`exec`, `wait`).
|
||||
CodeModeOnly,
|
||||
/// Removed compatibility flag for strict third-party tool deferral in Code Mode Only.
|
||||
/// Keep eligible MCP/app and dynamic tools deferred in exec, only in Code Mode Only.
|
||||
/// Ignores deferLoading, omit_tools_from, and namespace skip settings.
|
||||
CodeModeOnlyStrictThirdPartyTools,
|
||||
/// Use the single unified PTY-backed exec tool.
|
||||
UnifiedExec,
|
||||
@@ -1362,7 +1363,7 @@ pub const FEATURES: &[FeatureSpec] = &[
|
||||
FeatureSpec {
|
||||
id: Feature::CodeModeOnlyStrictThirdPartyTools,
|
||||
key: "code_mode_only_strict_3p_tools",
|
||||
stage: Stage::Removed,
|
||||
stage: Stage::UnderDevelopment,
|
||||
default_enabled: false,
|
||||
},
|
||||
FeatureSpec {
|
||||
|
||||
Reference in New Issue
Block a user