Split features into codex-features crate (#15253)

- Split the feature system into a new `codex-features` crate.
- Cut `codex-core` and workspace consumers over to the new config and
warning APIs.

Co-authored-by: Ahmed Ibrahim <219906144+aibrahim-oai@users.noreply.github.com>
Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
Ahmed Ibrahim
2026-03-19 20:12:07 -07:00
committed by GitHub
parent 35f8b87a5b
commit 2e22885e79
135 changed files with 456 additions and 250 deletions

View File

@@ -5,6 +5,7 @@ use codex_core::built_in_model_providers;
use codex_core::compact::SUMMARIZATION_PROMPT;
use codex_core::compact::SUMMARY_PREFIX;
use codex_core::config::Config;
use codex_features::Feature;
use codex_protocol::items::TurnItem;
use codex_protocol::openai_models::ModelInfo;
use codex_protocol::openai_models::ModelsResponse;
@@ -3115,9 +3116,7 @@ async fn snapshot_request_shape_pre_turn_compaction_strips_incoming_model_switch
.with_config(move |config| {
config.model_provider = model_provider;
set_test_compact_prompt(config);
let _ = config
.features
.enable(codex_core::features::Feature::RemoteModels);
let _ = config.features.enable(Feature::RemoteModels);
config.model_auto_compact_token_limit = Some(200);
})
.build(&server)