mirror of
https://github.com/openai/codex.git
synced 2026-10-20 17:38:45 +00:00
Retire worktree and voice feature flags (#54175)
## What changed - Remove feature-flag checks from managed worktree creation and repository-aware session discovery, while retaining local workspace and trust checks. - Make TUI voice availability follow platform support instead of `features.realtime_conversation`. - Ignore `features.worktrees` and `features.realtime_conversation` configuration overrides, warn when managed requirements reference them, and hide both flags from `/experimental`, including catalogs from older servers. ## Testing Add coverage for ignored configuration overrides and managed requirements, and update session filtering, worktree grouping, and experimental feature discovery tests for the retired flags. GitOrigin-RevId: 1d64e890e6e2f8a78926a9ea163126c0890b068e
This commit is contained in:
committed by
copyberry
parent
160b2b1ef6
commit
bb64b894fd
@@ -214,7 +214,7 @@ pub enum Feature {
|
||||
NetworkProxy,
|
||||
/// Mask credentials and inject them through an already enabled network proxy.
|
||||
CredentialMasking,
|
||||
/// Enable managed worktree creation and repository-aware sessions.
|
||||
/// Removed compatibility flag. Managed worktrees and repository-aware sessions are always available.
|
||||
Worktrees,
|
||||
/// Respect host system proxy settings for Codex-owned network clients.
|
||||
RespectSystemProxy,
|
||||
@@ -416,7 +416,7 @@ pub enum Feature {
|
||||
UltrafastMode,
|
||||
/// Enable explicitly requested model changes for later step captures.
|
||||
StepModelSwitching,
|
||||
/// Enable voice conversations in the TUI.
|
||||
/// Removed compatibility flag. TUI voice availability follows platform support.
|
||||
RealtimeConversation,
|
||||
/// Prevent idle system sleep while a turn is actively running.
|
||||
PreventIdleSleep,
|
||||
@@ -667,7 +667,7 @@ impl Features {
|
||||
self.record_legacy_usage_force("features.transcript_v2", Feature::TranscriptV2);
|
||||
continue;
|
||||
}
|
||||
"tui_app_server" => {
|
||||
"tui_app_server" | "worktrees" | "realtime_conversation" => {
|
||||
continue;
|
||||
}
|
||||
"undo" => {
|
||||
@@ -1453,7 +1453,7 @@ pub const FEATURES: &[FeatureSpec] = &[
|
||||
FeatureSpec {
|
||||
id: Feature::Worktrees,
|
||||
key: "worktrees",
|
||||
stage: Stage::Stable,
|
||||
stage: Stage::Removed,
|
||||
default_enabled: true,
|
||||
},
|
||||
FeatureSpec {
|
||||
@@ -1999,7 +1999,7 @@ pub const FEATURES: &[FeatureSpec] = &[
|
||||
FeatureSpec {
|
||||
id: Feature::RealtimeConversation,
|
||||
key: "realtime_conversation",
|
||||
stage: Stage::Stable,
|
||||
stage: Stage::Removed,
|
||||
default_enabled: true,
|
||||
},
|
||||
FeatureSpec {
|
||||
|
||||
@@ -901,3 +901,22 @@ code_mode = true
|
||||
message
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn retired_worktree_and_voice_config_overrides_are_ignored() {
|
||||
for enabled in [false, true] {
|
||||
let features_toml = FeaturesToml::from(BTreeMap::from([
|
||||
("worktrees".to_string(), enabled),
|
||||
("realtime_conversation".to_string(), enabled),
|
||||
]));
|
||||
let features = Features::from_sources(
|
||||
FeatureConfigSource {
|
||||
features: Some(&features_toml),
|
||||
..Default::default()
|
||||
},
|
||||
FeatureConfigSource::default(),
|
||||
FeatureOverrides::default(),
|
||||
);
|
||||
assert_eq!(features, Features::with_defaults());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user