diff --git a/crates/chat-cli/src/api_client/clients/client.rs b/crates/chat-cli/src/api_client/clients/client.rs index c5ab2ddc0..2047abbea 100644 --- a/crates/chat-cli/src/api_client/clients/client.rs +++ b/crates/chat-cli/src/api_client/clients/client.rs @@ -55,7 +55,7 @@ impl Client { .http_client(crate::aws_common::http_client::client()) .interceptor(OptOutInterceptor::new(database)) .interceptor(UserAgentOverrideInterceptor::new()) - .bearer_token_resolver(BearerResolver::new(database).await?) + .bearer_token_resolver(BearerResolver) .app_name(app_name()) .endpoint_url(endpoint.url()) .build(); diff --git a/crates/chat-cli/src/api_client/clients/streaming_client.rs b/crates/chat-cli/src/api_client/clients/streaming_client.rs index 3b5c377a4..4e370739c 100644 --- a/crates/chat-cli/src/api_client/clients/streaming_client.rs +++ b/crates/chat-cli/src/api_client/clients/streaming_client.rs @@ -90,7 +90,7 @@ impl StreamingClient { .http_client(crate::aws_common::http_client::client()) .interceptor(OptOutInterceptor::new(database)) .interceptor(UserAgentOverrideInterceptor::new()) - .bearer_token_resolver(BearerResolver::new(database).await?) + .bearer_token_resolver(BearerResolver) .app_name(app_name()) .endpoint_url(endpoint.url()) .stalled_stream_protection(stalled_stream_protection_config()) diff --git a/crates/chat-cli/src/auth/builder_id.rs b/crates/chat-cli/src/auth/builder_id.rs index 7ea9327b4..e12d87dc7 100644 --- a/crates/chat-cli/src/auth/builder_id.rs +++ b/crates/chat-cli/src/auth/builder_id.rs @@ -518,17 +518,7 @@ pub async fn logout(database: &mut Database) -> Result<(), AuthError> { } #[derive(Debug, Clone)] -pub struct BearerResolver { - token: Option, -} - -impl BearerResolver { - pub async fn new(database: &mut Database) -> Result { - Ok(Self { - token: BuilderIdToken::load(database).await?, - }) - } -} +pub struct BearerResolver; impl ResolveIdentity for BearerResolver { fn resolve_identity<'a>( @@ -537,7 +527,8 @@ impl ResolveIdentity for BearerResolver { _config_bag: &'a ConfigBag, ) -> IdentityFuture<'a> { IdentityFuture::new_boxed(Box::pin(async { - match &self.token { + let database = Database::new().await?; + match BuilderIdToken::load(&database).await? { Some(token) => Ok(Identity::new( Token::new(token.access_token.0.clone(), Some(token.expires_at.into())), Some(token.expires_at.into()), diff --git a/crates/chat-cli/src/cli/chat/mcp.rs b/crates/chat-cli/src/cli/chat/mcp.rs index 61351599a..0bd975d17 100644 --- a/crates/chat-cli/src/cli/chat/mcp.rs +++ b/crates/chat-cli/src/cli/chat/mcp.rs @@ -344,11 +344,7 @@ mod tests { // profile let p = resolve_scope_profile(&ctx, Some(Scope::Profile), Some(&"qa")).unwrap(); - assert_eq!( - p, - profile_mcp_config_path(&ctx, &"qa").unwrap(), - "profile path mismatch" - ); + assert_eq!(p, profile_mcp_config_path(&ctx, "qa").unwrap(), "profile path mismatch"); } #[ignore = "TODO: fix in CI"]