Require auth managers to receive routing configuration (#34650)

## Why

Auth managers should use the application's resolved HTTP client factory instead
of silently falling back to the transport's default proxy behavior.

## What changed

- Make `AuthRouteConfig` required when constructing an `AuthManager` or
  `AuthConfig`.
- Pass each production caller's resolved routing configuration through without
  wrapping it in an optional value.
- Add a test helper that explicitly selects the transport-default proxy policy
  for callers that do not exercise custom routing.

GitOrigin-RevId: d89a3b1f8b5d4007650cdac0aae241c94d598580
This commit is contained in:
Michael Bolin authored and copyberry committed 2026-07-22 01:35:06 +00:00
1 parent f899a79c03
commit a26bc337cf
19 files changed
+75 -53

No files matched your search

@@ -1045,7 +1045,7 @@ async fn remote_control_start_allows_missing_auth_when_enabled() {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let (transport_event_tx, _transport_event_rx) =
@@ -1895,7 +1895,7 @@ async fn remote_control_waits_for_account_id_before_enrolling() {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let expected_server_name = gethostname().to_string_lossy().trim().to_string();
@@ -1993,7 +1993,7 @@ async fn persisted_enable_does_not_follow_auth_to_an_account_without_a_preferenc
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let remote_control_target =
@@ -205,7 +205,7 @@ async fn list_remote_control_clients_recovers_auth_after_unauthorized() {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut fresh_auth = remote_control_auth_dot_json(Some("account_id"));
@@ -303,7 +303,7 @@ async fn list_remote_control_clients_retries_unauthorized_only_once() {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut fresh_auth = remote_control_auth_dot_json(Some("account_id"));
@@ -49,7 +49,7 @@ async fn auth_manager_with_replacement(
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut replacement_auth = remote_control_auth_dot_json(Some(replacement_account_id));
@@ -1087,7 +1087,7 @@ async fn remote_control_handle_discards_pairing_response_after_auth_change() {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let remote_handle =
@@ -2228,7 +2228,7 @@ mod tests {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut auth_recovery = auth_manager.unauthorized_recovery();
@@ -2327,7 +2327,7 @@ mod tests {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut auth_recovery = auth_manager.unauthorized_recovery();
@@ -2455,7 +2455,7 @@ mod tests {
/*forced_chatgpt_workspace_id*/ None,
/*chatgpt_base_url*/ None,
AuthKeyringBackendKind::default(),
/*auth_route_config*/ None,
codex_login::test_support::transport_default_auth_route_config(),
)
.await;
let mut auth_recovery = auth_manager.unauthorized_recovery();