From 9567418bddc1f436dc7923fed8e3836b58085a27 Mon Sep 17 00:00:00 2001 From: jif-oai Date: Wed, 20 May 2026 15:10:51 +0100 Subject: [PATCH] inline and simplify --- codex-rs/core/src/compact.rs | 10 -------- codex-rs/core/src/compact_tests.rs | 40 ------------------------------ codex-rs/core/src/session/turn.rs | 5 ++-- codex-rs/core/src/tasks/compact.rs | 5 +++- 4 files changed, 7 insertions(+), 53 deletions(-) diff --git a/codex-rs/core/src/compact.rs b/codex-rs/core/src/compact.rs index 290453fe32..b5802268d3 100644 --- a/codex-rs/core/src/compact.rs +++ b/codex-rs/core/src/compact.rs @@ -22,8 +22,6 @@ use codex_analytics::CompactionStatus; use codex_analytics::CompactionStrategy; use codex_analytics::CompactionTrigger; use codex_analytics::now_unix_seconds; -use codex_features::Feature; -use codex_features::Features; use codex_protocol::error::CodexErr; use codex_protocol::error::Result as CodexResult; use codex_protocol::items::ContextCompactionItem; @@ -68,14 +66,6 @@ pub(crate) fn should_use_remote_compact_task(provider: &ModelProviderInfo) -> bo provider.supports_remote_compaction() } -pub(crate) fn should_use_remote_compact_task_v2( - provider: &ModelProviderInfo, - features: &Features, -) -> bool { - should_use_remote_compact_task(provider) - && (provider.is_openai() || features.enabled(Feature::RemoteCompactionV2)) -} - pub(crate) async fn run_inline_auto_compact_task( sess: Arc, turn_context: Arc, diff --git a/codex-rs/core/src/compact_tests.rs b/codex-rs/core/src/compact_tests.rs index 17142c7350..608fbdbd91 100644 --- a/codex-rs/core/src/compact_tests.rs +++ b/codex-rs/core/src/compact_tests.rs @@ -1,6 +1,4 @@ use super::*; -use codex_features::Feature; -use codex_features::Features; use codex_model_provider_info::ModelProviderInfo; use codex_model_provider_info::WireApi; use codex_protocol::models::DEFAULT_IMAGE_DETAIL; @@ -242,44 +240,6 @@ fn should_use_remote_compact_task_for_azure_provider() { assert!(should_use_remote_compact_task(&provider)); } -#[test] -fn should_use_remote_compact_task_v2_defaults_for_openai_provider() { - let provider = ModelProviderInfo::create_openai_provider(/*base_url*/ None); - let features = Features::with_defaults(); - - assert!(should_use_remote_compact_task_v2(&provider, &features)); -} - -#[test] -fn should_use_remote_compact_task_v2_stays_feature_gated_for_azure_provider() { - let provider = ModelProviderInfo { - name: "Azure".into(), - base_url: Some("https://example.com/openai".into()), - env_key: Some("AZURE_OPENAI_API_KEY".into()), - env_key_instructions: None, - experimental_bearer_token: None, - auth: None, - aws: None, - wire_api: WireApi::Responses, - query_params: None, - http_headers: None, - env_http_headers: None, - request_max_retries: None, - stream_max_retries: None, - stream_idle_timeout_ms: None, - websocket_connect_timeout_ms: None, - requires_openai_auth: false, - supports_websockets: false, - }; - let mut features = Features::with_defaults(); - - assert!(!should_use_remote_compact_task_v2(&provider, &features)); - - features.enable(Feature::RemoteCompactionV2); - - assert!(should_use_remote_compact_task_v2(&provider, &features)); -} - #[tokio::test] async fn process_compacted_history_replaces_developer_messages() { let compacted_history = vec![ diff --git a/codex-rs/core/src/session/turn.rs b/codex-rs/core/src/session/turn.rs index 0b3be35456..d39d4c26bd 100644 --- a/codex-rs/core/src/session/turn.rs +++ b/codex-rs/core/src/session/turn.rs @@ -12,7 +12,6 @@ use crate::collect_explicit_skill_mentions; use crate::compact::InitialContextInjection; use crate::compact::run_inline_auto_compact_task; use crate::compact::should_use_remote_compact_task; -use crate::compact::should_use_remote_compact_task_v2; use crate::compact_remote::run_inline_remote_auto_compact_task; use crate::compact_remote_v2::run_inline_remote_auto_compact_task as run_inline_remote_auto_compact_task_v2; use crate::connectors; @@ -800,7 +799,9 @@ async fn run_auto_compact( phase: CompactionPhase, ) -> CodexResult { if should_use_remote_compact_task(turn_context.provider.info()) { - if should_use_remote_compact_task_v2(turn_context.provider.info(), &turn_context.features) { + if turn_context.provider.info().is_openai() + || turn_context.features.enabled(Feature::RemoteCompactionV2) + { run_inline_remote_auto_compact_task_v2( Arc::clone(sess), Arc::clone(turn_context), diff --git a/codex-rs/core/src/tasks/compact.rs b/codex-rs/core/src/tasks/compact.rs index 0609b35fe3..b184473544 100644 --- a/codex-rs/core/src/tasks/compact.rs +++ b/codex-rs/core/src/tasks/compact.rs @@ -33,7 +33,10 @@ impl SessionTask for CompactTask { /*inc*/ 1, &[("type", "remote")], ); - if crate::compact::should_use_remote_compact_task_v2(ctx.provider.info(), &ctx.features) + if ctx.provider.info().is_openai() + || ctx + .features + .enabled(codex_features::Feature::RemoteCompactionV2) { crate::compact_remote_v2::run_remote_compact_task(session.clone(), ctx).await } else {