mirror of
https://github.com/openai/codex.git
synced 2026-11-03 16:23:51 +00:00
chore(config) rm experimental_use_freeform_apply_patch (#22565)
## Summary Get rid of the `experimental_use_freeform_apply_patch` config option, since it is now encoded in model config. No deprecation message since it has been experimental this entire time. ## Testing - [x] Updated unit tests --------- Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
1 parent
53a36fc1c2
commit
e33cf9ae28
11 files changed
+2
-76
No files matched your search
@@ -443,7 +443,6 @@ pub struct ConfigToml {
|
|||||||
pub experimental_instructions_file: Option<AbsolutePathBuf>,
|
pub experimental_instructions_file: Option<AbsolutePathBuf>,
|
||||||
pub experimental_compact_prompt_file: Option<AbsolutePathBuf>,
|
pub experimental_compact_prompt_file: Option<AbsolutePathBuf>,
|
||||||
pub experimental_use_unified_exec_tool: Option<bool>,
|
pub experimental_use_unified_exec_tool: Option<bool>,
|
||||||
pub experimental_use_freeform_apply_patch: Option<bool>,
|
|
||||||
/// Preferred OSS provider for local models, e.g. "lmstudio" or "ollama".
|
/// Preferred OSS provider for local models, e.g. "lmstudio" or "ollama".
|
||||||
pub oss_provider: Option<String>,
|
pub oss_provider: Option<String>,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,13 +54,11 @@ pub struct ConfigProfile {
|
|||||||
#[schemars(skip)]
|
#[schemars(skip)]
|
||||||
pub experimental_instructions_file: Option<AbsolutePathBuf>,
|
pub experimental_instructions_file: Option<AbsolutePathBuf>,
|
||||||
pub experimental_compact_prompt_file: Option<AbsolutePathBuf>,
|
pub experimental_compact_prompt_file: Option<AbsolutePathBuf>,
|
||||||
pub include_apply_patch_tool: Option<bool>,
|
|
||||||
pub include_permissions_instructions: Option<bool>,
|
pub include_permissions_instructions: Option<bool>,
|
||||||
pub include_apps_instructions: Option<bool>,
|
pub include_apps_instructions: Option<bool>,
|
||||||
pub include_collaboration_mode_instructions: Option<bool>,
|
pub include_collaboration_mode_instructions: Option<bool>,
|
||||||
pub include_environment_context: Option<bool>,
|
pub include_environment_context: Option<bool>,
|
||||||
pub experimental_use_unified_exec_tool: Option<bool>,
|
pub experimental_use_unified_exec_tool: Option<bool>,
|
||||||
pub experimental_use_freeform_apply_patch: Option<bool>,
|
|
||||||
pub tools: Option<ToolsToml>,
|
pub tools: Option<ToolsToml>,
|
||||||
pub web_search: Option<WebSearchMode>,
|
pub web_search: Option<WebSearchMode>,
|
||||||
pub analytics: Option<AnalyticsConfigToml>,
|
pub analytics: Option<AnalyticsConfigToml>,
|
||||||
|
|||||||
@@ -347,9 +347,6 @@
|
|||||||
"experimental_compact_prompt_file": {
|
"experimental_compact_prompt_file": {
|
||||||
"$ref": "#/definitions/AbsolutePathBuf"
|
"$ref": "#/definitions/AbsolutePathBuf"
|
||||||
},
|
},
|
||||||
"experimental_use_freeform_apply_patch": {
|
|
||||||
"type": "boolean"
|
|
||||||
},
|
|
||||||
"experimental_use_unified_exec_tool": {
|
"experimental_use_unified_exec_tool": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
@@ -430,9 +427,6 @@
|
|||||||
"exec_permission_approvals": {
|
"exec_permission_approvals": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"experimental_use_freeform_apply_patch": {
|
|
||||||
"type": "boolean"
|
|
||||||
},
|
|
||||||
"experimental_use_unified_exec_tool": {
|
"experimental_use_unified_exec_tool": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
@@ -619,9 +613,6 @@
|
|||||||
},
|
},
|
||||||
"type": "object"
|
"type": "object"
|
||||||
},
|
},
|
||||||
"include_apply_patch_tool": {
|
|
||||||
"type": "boolean"
|
|
||||||
},
|
|
||||||
"include_apps_instructions": {
|
"include_apps_instructions": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
@@ -4090,9 +4081,6 @@
|
|||||||
],
|
],
|
||||||
"description": "Experimental / do not use. Selects the thread store implementation."
|
"description": "Experimental / do not use. Selects the thread store implementation."
|
||||||
},
|
},
|
||||||
"experimental_use_freeform_apply_patch": {
|
|
||||||
"type": "boolean"
|
|
||||||
},
|
|
||||||
"experimental_use_unified_exec_tool": {
|
"experimental_use_unified_exec_tool": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
@@ -4173,9 +4161,6 @@
|
|||||||
"exec_permission_approvals": {
|
"exec_permission_approvals": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"experimental_use_freeform_apply_patch": {
|
|
||||||
"type": "boolean"
|
|
||||||
},
|
|
||||||
"experimental_use_unified_exec_tool": {
|
"experimental_use_unified_exec_tool": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -4237,7 +4237,6 @@ async fn legacy_toggles_map_to_features() -> std::io::Result<()> {
|
|||||||
let codex_home = TempDir::new()?;
|
let codex_home = TempDir::new()?;
|
||||||
let cfg = ConfigToml {
|
let cfg = ConfigToml {
|
||||||
experimental_use_unified_exec_tool: Some(true),
|
experimental_use_unified_exec_tool: Some(true),
|
||||||
experimental_use_freeform_apply_patch: Some(true),
|
|
||||||
..Default::default()
|
..Default::default()
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -4248,11 +4247,8 @@ async fn legacy_toggles_map_to_features() -> std::io::Result<()> {
|
|||||||
)
|
)
|
||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
assert!(config.features.enabled(Feature::ApplyPatchFreeform));
|
|
||||||
assert!(config.features.enabled(Feature::UnifiedExec));
|
assert!(config.features.enabled(Feature::UnifiedExec));
|
||||||
|
|
||||||
assert!(config.include_apply_patch_tool);
|
|
||||||
|
|
||||||
assert!(config.use_experimental_unified_exec_tool);
|
assert!(config.use_experimental_unified_exec_tool);
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|||||||
@@ -269,13 +269,6 @@ fn explicit_feature_settings_in_config(cfg: &ConfigToml) -> Vec<(String, Feature
|
|||||||
enabled,
|
enabled,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
if let Some(enabled) = cfg.experimental_use_freeform_apply_patch {
|
|
||||||
explicit_settings.push((
|
|
||||||
"experimental_use_freeform_apply_patch".to_string(),
|
|
||||||
Feature::ApplyPatchFreeform,
|
|
||||||
enabled,
|
|
||||||
));
|
|
||||||
}
|
|
||||||
for (profile_name, profile) in &cfg.profiles {
|
for (profile_name, profile) in &cfg.profiles {
|
||||||
if let Some(features) = profile.features.as_ref() {
|
if let Some(features) = profile.features.as_ref() {
|
||||||
for (key, enabled) in features.entries() {
|
for (key, enabled) in features.entries() {
|
||||||
@@ -288,13 +281,6 @@ fn explicit_feature_settings_in_config(cfg: &ConfigToml) -> Vec<(String, Feature
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if let Some(enabled) = profile.include_apply_patch_tool {
|
|
||||||
explicit_settings.push((
|
|
||||||
format!("profiles.{profile_name}.include_apply_patch_tool"),
|
|
||||||
Feature::ApplyPatchFreeform,
|
|
||||||
enabled,
|
|
||||||
));
|
|
||||||
}
|
|
||||||
if let Some(enabled) = profile.experimental_use_unified_exec_tool {
|
if let Some(enabled) = profile.experimental_use_unified_exec_tool {
|
||||||
explicit_settings.push((
|
explicit_settings.push((
|
||||||
format!("profiles.{profile_name}.experimental_use_unified_exec_tool"),
|
format!("profiles.{profile_name}.experimental_use_unified_exec_tool"),
|
||||||
@@ -302,13 +288,6 @@ fn explicit_feature_settings_in_config(cfg: &ConfigToml) -> Vec<(String, Feature
|
|||||||
enabled,
|
enabled,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
if let Some(enabled) = profile.experimental_use_freeform_apply_patch {
|
|
||||||
explicit_settings.push((
|
|
||||||
format!("profiles.{profile_name}.experimental_use_freeform_apply_patch"),
|
|
||||||
Feature::ApplyPatchFreeform,
|
|
||||||
enabled,
|
|
||||||
));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
explicit_settings
|
explicit_settings
|
||||||
@@ -370,14 +349,11 @@ pub(crate) fn validate_feature_requirements_in_config_toml(
|
|||||||
FeatureConfigSource {
|
FeatureConfigSource {
|
||||||
features: cfg.features.as_ref(),
|
features: cfg.features.as_ref(),
|
||||||
include_apply_patch_tool: None,
|
include_apply_patch_tool: None,
|
||||||
experimental_use_freeform_apply_patch: cfg.experimental_use_freeform_apply_patch,
|
|
||||||
experimental_use_unified_exec_tool: cfg.experimental_use_unified_exec_tool,
|
experimental_use_unified_exec_tool: cfg.experimental_use_unified_exec_tool,
|
||||||
},
|
},
|
||||||
FeatureConfigSource {
|
FeatureConfigSource {
|
||||||
features: profile.features.as_ref(),
|
features: profile.features.as_ref(),
|
||||||
include_apply_patch_tool: profile.include_apply_patch_tool,
|
include_apply_patch_tool: None,
|
||||||
experimental_use_freeform_apply_patch: profile
|
|
||||||
.experimental_use_freeform_apply_patch,
|
|
||||||
experimental_use_unified_exec_tool: profile.experimental_use_unified_exec_tool,
|
experimental_use_unified_exec_tool: profile.experimental_use_unified_exec_tool,
|
||||||
},
|
},
|
||||||
FeatureOverrides::default(),
|
FeatureOverrides::default(),
|
||||||
|
|||||||
@@ -1881,7 +1881,6 @@ pub struct ConfigOverrides {
|
|||||||
pub developer_instructions: Option<String>,
|
pub developer_instructions: Option<String>,
|
||||||
pub personality: Option<Personality>,
|
pub personality: Option<Personality>,
|
||||||
pub compact_prompt: Option<String>,
|
pub compact_prompt: Option<String>,
|
||||||
pub include_apply_patch_tool: Option<bool>,
|
|
||||||
pub show_raw_agent_reasoning: Option<bool>,
|
pub show_raw_agent_reasoning: Option<bool>,
|
||||||
pub tools_web_search_request: Option<bool>,
|
pub tools_web_search_request: Option<bool>,
|
||||||
pub ephemeral: Option<bool>,
|
pub ephemeral: Option<bool>,
|
||||||
@@ -2196,7 +2195,6 @@ impl Config {
|
|||||||
developer_instructions,
|
developer_instructions,
|
||||||
personality,
|
personality,
|
||||||
compact_prompt,
|
compact_prompt,
|
||||||
include_apply_patch_tool: include_apply_patch_tool_override,
|
|
||||||
show_raw_agent_reasoning,
|
show_raw_agent_reasoning,
|
||||||
tools_web_search_request: override_tools_web_search_request,
|
tools_web_search_request: override_tools_web_search_request,
|
||||||
ephemeral,
|
ephemeral,
|
||||||
@@ -2250,7 +2248,6 @@ impl Config {
|
|||||||
};
|
};
|
||||||
let tool_suggest = resolve_tool_suggest_config(&cfg, &config_layer_stack);
|
let tool_suggest = resolve_tool_suggest_config(&cfg, &config_layer_stack);
|
||||||
let feature_overrides = FeatureOverrides {
|
let feature_overrides = FeatureOverrides {
|
||||||
include_apply_patch_tool: include_apply_patch_tool_override,
|
|
||||||
web_search_request: override_tools_web_search_request,
|
web_search_request: override_tools_web_search_request,
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2258,14 +2255,11 @@ impl Config {
|
|||||||
FeatureConfigSource {
|
FeatureConfigSource {
|
||||||
features: cfg.features.as_ref(),
|
features: cfg.features.as_ref(),
|
||||||
include_apply_patch_tool: None,
|
include_apply_patch_tool: None,
|
||||||
experimental_use_freeform_apply_patch: cfg.experimental_use_freeform_apply_patch,
|
|
||||||
experimental_use_unified_exec_tool: cfg.experimental_use_unified_exec_tool,
|
experimental_use_unified_exec_tool: cfg.experimental_use_unified_exec_tool,
|
||||||
},
|
},
|
||||||
FeatureConfigSource {
|
FeatureConfigSource {
|
||||||
features: config_profile.features.as_ref(),
|
features: config_profile.features.as_ref(),
|
||||||
include_apply_patch_tool: config_profile.include_apply_patch_tool,
|
include_apply_patch_tool: None,
|
||||||
experimental_use_freeform_apply_patch: config_profile
|
|
||||||
.experimental_use_freeform_apply_patch,
|
|
||||||
experimental_use_unified_exec_tool: config_profile
|
experimental_use_unified_exec_tool: config_profile
|
||||||
.experimental_use_unified_exec_tool,
|
.experimental_use_unified_exec_tool,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -194,7 +194,6 @@ fn drop_lockfile_inputs(lock_config: &mut ConfigToml) {
|
|||||||
lock_config.default_permissions = None;
|
lock_config.default_permissions = None;
|
||||||
lock_config.permissions = None;
|
lock_config.permissions = None;
|
||||||
lock_config.experimental_use_unified_exec_tool = None;
|
lock_config.experimental_use_unified_exec_tool = None;
|
||||||
lock_config.experimental_use_freeform_apply_patch = None;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn resolved_config_to_toml<Toml>(
|
fn resolved_config_to_toml<Toml>(
|
||||||
|
|||||||
@@ -423,7 +423,6 @@ pub async fn run_main(cli: Cli, arg0_paths: Arg0DispatchPaths) -> anyhow::Result
|
|||||||
developer_instructions: None,
|
developer_instructions: None,
|
||||||
personality: None,
|
personality: None,
|
||||||
compact_prompt: None,
|
compact_prompt: None,
|
||||||
include_apply_patch_tool: None,
|
|
||||||
show_raw_agent_reasoning: oss.then_some(true),
|
show_raw_agent_reasoning: oss.then_some(true),
|
||||||
tools_web_search_request: None,
|
tools_web_search_request: None,
|
||||||
ephemeral: ephemeral.then_some(true),
|
ephemeral: ephemeral.then_some(true),
|
||||||
|
|||||||
@@ -21,10 +21,6 @@ const ALIASES: &[Alias] = &[
|
|||||||
legacy_key: "experimental_use_unified_exec_tool",
|
legacy_key: "experimental_use_unified_exec_tool",
|
||||||
feature: Feature::UnifiedExec,
|
feature: Feature::UnifiedExec,
|
||||||
},
|
},
|
||||||
Alias {
|
|
||||||
legacy_key: "experimental_use_freeform_apply_patch",
|
|
||||||
feature: Feature::ApplyPatchFreeform,
|
|
||||||
},
|
|
||||||
Alias {
|
Alias {
|
||||||
legacy_key: "include_apply_patch_tool",
|
legacy_key: "include_apply_patch_tool",
|
||||||
feature: Feature::ApplyPatchFreeform,
|
feature: Feature::ApplyPatchFreeform,
|
||||||
@@ -72,7 +68,6 @@ pub(crate) fn feature_for_key(key: &str) -> Option<Feature> {
|
|||||||
#[derive(Debug, Default)]
|
#[derive(Debug, Default)]
|
||||||
pub(crate) struct LegacyFeatureToggles {
|
pub(crate) struct LegacyFeatureToggles {
|
||||||
pub include_apply_patch_tool: Option<bool>,
|
pub include_apply_patch_tool: Option<bool>,
|
||||||
pub experimental_use_freeform_apply_patch: Option<bool>,
|
|
||||||
pub experimental_use_unified_exec_tool: Option<bool>,
|
pub experimental_use_unified_exec_tool: Option<bool>,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -84,12 +79,6 @@ impl LegacyFeatureToggles {
|
|||||||
self.include_apply_patch_tool,
|
self.include_apply_patch_tool,
|
||||||
"include_apply_patch_tool",
|
"include_apply_patch_tool",
|
||||||
);
|
);
|
||||||
set_if_some(
|
|
||||||
features,
|
|
||||||
Feature::ApplyPatchFreeform,
|
|
||||||
self.experimental_use_freeform_apply_patch,
|
|
||||||
"experimental_use_freeform_apply_patch",
|
|
||||||
);
|
|
||||||
set_if_some(
|
set_if_some(
|
||||||
features,
|
features,
|
||||||
Feature::UnifiedExec,
|
Feature::UnifiedExec,
|
||||||
|
|||||||
@@ -286,7 +286,6 @@ pub struct Features {
|
|||||||
|
|
||||||
#[derive(Debug, Clone, Default)]
|
#[derive(Debug, Clone, Default)]
|
||||||
pub struct FeatureOverrides {
|
pub struct FeatureOverrides {
|
||||||
pub include_apply_patch_tool: Option<bool>,
|
|
||||||
pub web_search_request: Option<bool>,
|
pub web_search_request: Option<bool>,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -294,17 +293,11 @@ pub struct FeatureOverrides {
|
|||||||
pub struct FeatureConfigSource<'a> {
|
pub struct FeatureConfigSource<'a> {
|
||||||
pub features: Option<&'a FeaturesToml>,
|
pub features: Option<&'a FeaturesToml>,
|
||||||
pub include_apply_patch_tool: Option<bool>,
|
pub include_apply_patch_tool: Option<bool>,
|
||||||
pub experimental_use_freeform_apply_patch: Option<bool>,
|
|
||||||
pub experimental_use_unified_exec_tool: Option<bool>,
|
pub experimental_use_unified_exec_tool: Option<bool>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl FeatureOverrides {
|
impl FeatureOverrides {
|
||||||
fn apply(self, features: &mut Features) {
|
fn apply(self, features: &mut Features) {
|
||||||
LegacyFeatureToggles {
|
|
||||||
include_apply_patch_tool: self.include_apply_patch_tool,
|
|
||||||
..Default::default()
|
|
||||||
}
|
|
||||||
.apply(features);
|
|
||||||
if let Some(enabled) = self.web_search_request {
|
if let Some(enabled) = self.web_search_request {
|
||||||
if enabled {
|
if enabled {
|
||||||
features.enable(Feature::WebSearchRequest);
|
features.enable(Feature::WebSearchRequest);
|
||||||
@@ -470,7 +463,6 @@ impl Features {
|
|||||||
for source in [base, profile] {
|
for source in [base, profile] {
|
||||||
LegacyFeatureToggles {
|
LegacyFeatureToggles {
|
||||||
include_apply_patch_tool: source.include_apply_patch_tool,
|
include_apply_patch_tool: source.include_apply_patch_tool,
|
||||||
experimental_use_freeform_apply_patch: source.experimental_use_freeform_apply_patch,
|
|
||||||
experimental_use_unified_exec_tool: source.experimental_use_unified_exec_tool,
|
experimental_use_unified_exec_tool: source.experimental_use_unified_exec_tool,
|
||||||
}
|
}
|
||||||
.apply(&mut features);
|
.apply(&mut features);
|
||||||
|
|||||||
@@ -393,7 +393,6 @@ fn from_sources_applies_base_profile_and_overrides() {
|
|||||||
},
|
},
|
||||||
FeatureOverrides {
|
FeatureOverrides {
|
||||||
web_search_request: Some(false),
|
web_search_request: Some(false),
|
||||||
..Default::default()
|
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user