diff --git a/codex-rs/core/src/config/mod.rs b/codex-rs/core/src/config/mod.rs index 1e409559e6..1bba8aba63 100644 --- a/codex-rs/core/src/config/mod.rs +++ b/codex-rs/core/src/config/mod.rs @@ -2537,11 +2537,19 @@ profile = "project" )?; assert!(config.features.enabled(Feature::ApplyPatchFreeform)); - assert!(config.features.enabled(Feature::UnifiedExec)); + if cfg!(target_os = "windows") { + assert!(!config.features.enabled(Feature::UnifiedExec)); + } else { + assert!(config.features.enabled(Feature::UnifiedExec)); + } assert!(config.include_apply_patch_tool); - assert!(config.use_experimental_unified_exec_tool); + if cfg!(target_os = "windows") { + assert!(!config.use_experimental_unified_exec_tool); + } else { + assert!(config.use_experimental_unified_exec_tool); + } Ok(()) } diff --git a/codex-rs/core/src/features.rs b/codex-rs/core/src/features.rs index 6d1c40769e..ae119ad784 100644 --- a/codex-rs/core/src/features.rs +++ b/codex-rs/core/src/features.rs @@ -182,6 +182,9 @@ impl Features { } pub fn enable(&mut self, f: Feature) -> &mut Self { + if cfg!(target_os = "windows") && f == Feature::UnifiedExec { + return self; + } self.enabled.insert(f); self }