Add use_agent_identity feature flag (#17385)

This commit is contained in:
Adrian
2026-04-11 09:52:06 -07:00
committed by GitHub
Unverified
parent 51d58c56d5
commit 39cc85310f
5 changed files with 37 additions and 2 deletions
@@ -45,7 +45,9 @@ use wiremock::ResponseTemplate;
use wiremock::matchers::method;
use wiremock::matchers::path;
const DEFAULT_READ_TIMEOUT: std::time::Duration = std::time::Duration::from_secs(10);
// Account tests spin up fresh app-server processes repeatedly, which can take
// longer on slower Bazel macOS runners once the suite is already warm.
const DEFAULT_READ_TIMEOUT: std::time::Duration = std::time::Duration::from_secs(20);
const LOGIN_ISSUER_ENV_VAR: &str = "CODEX_APP_SERVER_LOGIN_ISSUER";
// Helper to create a minimal config.toml for the app server
+6
View File
@@ -503,6 +503,9 @@
"unified_exec": {
"type": "boolean"
},
"use_agent_identity": {
"type": "boolean"
},
"use_legacy_landlock": {
"type": "boolean"
},
@@ -2349,6 +2352,9 @@
"unified_exec": {
"type": "boolean"
},
"use_agent_identity": {
"type": "boolean"
},
"use_legacy_landlock": {
"type": "boolean"
},
@@ -275,7 +275,8 @@ async fn output_and_exit_are_retained_after_notification_receiver_closes() {
process_id.as_str(),
shell_argv(
"sleep 0.05; printf 'first\\n'; sleep 0.05; printf 'second\\n'",
"echo first&& ping -n 2 127.0.0.1 >NUL&& echo second",
// `cmd.exe` retains the space before `&&` in `echo first && ...`.
"(echo first) && ping -n 2 127.0.0.1 >NUL && (echo second)",
),
))
.await
+8
View File
@@ -186,6 +186,8 @@ pub enum Feature {
ResponsesWebsockets,
/// Legacy rollout flag for Responses API WebSocket transport v2 experiments.
ResponsesWebsocketsV2,
/// Use the agent identity registration flow for ChatGPT-authenticated sessions.
UseAgentIdentity,
}
impl Feature {
@@ -909,6 +911,12 @@ pub const FEATURES: &[FeatureSpec] = &[
stage: Stage::Removed,
default_enabled: false,
},
FeatureSpec {
id: Feature::UseAgentIdentity,
key: "use_agent_identity",
stage: Stage::UnderDevelopment,
default_enabled: false,
},
];
pub fn unstable_features_warning_event(
+18
View File
@@ -163,6 +163,24 @@ fn remote_control_is_under_development() {
assert_eq!(Feature::RemoteControl.default_enabled(), false);
}
#[test]
fn use_agent_identity_is_under_development() {
assert_eq!(Feature::UseAgentIdentity.stage(), Stage::UnderDevelopment);
assert_eq!(Feature::UseAgentIdentity.default_enabled(), false);
}
#[test]
fn image_detail_original_feature_is_experimental_and_user_toggleable() {
let stage = Feature::ImageDetailOriginal.stage();
assert!(matches!(stage, Stage::Experimental { .. }));
assert_eq!(
stage.experimental_menu_name(),
Some("Original image detail")
);
assert_eq!(Feature::ImageDetailOriginal.default_enabled(), false);
}
#[test]
fn collab_is_legacy_alias_for_multi_agent() {
assert_eq!(feature_for_key("multi_agent"), Some(Feature::Collab));