From d91d3cc0f00d1fb7663b18ba8a97fa717163ee30 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sun, 5 Apr 2026 08:29:48 +0100 Subject: [PATCH] fix: respect custom env snapshots for vertex auth --- extensions/anthropic-vertex/region.ts | 20 ++++++++++++++----- .../anthropic-vertex-auth-presence.ts | 17 +++++++++++----- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/extensions/anthropic-vertex/region.ts b/extensions/anthropic-vertex/region.ts index 298cb25c15a..d7407ba2c91 100644 --- a/extensions/anthropic-vertex/region.ts +++ b/extensions/anthropic-vertex/region.ts @@ -79,15 +79,22 @@ function resolveAnthropicVertexDefaultAdcPath(env: NodeJS.ProcessEnv = process.e function resolveAnthropicVertexAdcCredentialsPathCandidate( env: NodeJS.ProcessEnv = process.env, -): string { - return ( - normalizeOptionalSecretInput(env.GOOGLE_APPLICATION_CREDENTIALS) ?? - resolveAnthropicVertexDefaultAdcPath(env) - ); +): string | undefined { + const explicit = normalizeOptionalSecretInput(env.GOOGLE_APPLICATION_CREDENTIALS); + if (explicit) { + return explicit; + } + if (env !== process.env) { + return undefined; + } + return resolveAnthropicVertexDefaultAdcPath(env); } function canReadAnthropicVertexAdc(env: NodeJS.ProcessEnv = process.env): boolean { const credentialsPath = resolveAnthropicVertexAdcCredentialsPathCandidate(env); + if (!credentialsPath) { + return false; + } try { readFileSync(credentialsPath, "utf8"); return true; @@ -100,6 +107,9 @@ function resolveAnthropicVertexProjectIdFromAdc( env: NodeJS.ProcessEnv = process.env, ): string | undefined { const credentialsPath = resolveAnthropicVertexAdcCredentialsPathCandidate(env); + if (!credentialsPath) { + return undefined; + } try { const parsed = JSON.parse(readFileSync(credentialsPath, "utf8")) as AdcProjectFile; return ( diff --git a/src/plugin-sdk/anthropic-vertex-auth-presence.ts b/src/plugin-sdk/anthropic-vertex-auth-presence.ts index 1e391331c0d..0413c06eb98 100644 --- a/src/plugin-sdk/anthropic-vertex-auth-presence.ts +++ b/src/plugin-sdk/anthropic-vertex-auth-presence.ts @@ -35,15 +35,22 @@ function resolveAnthropicVertexDefaultAdcPath(env: NodeJS.ProcessEnv = process.e function resolveAnthropicVertexAdcCredentialsPathCandidate( env: NodeJS.ProcessEnv = process.env, -): string { - return ( - normalizeOptionalPathInput(env.GOOGLE_APPLICATION_CREDENTIALS) ?? - resolveAnthropicVertexDefaultAdcPath(env) - ); +): string | undefined { + const explicit = normalizeOptionalPathInput(env.GOOGLE_APPLICATION_CREDENTIALS); + if (explicit) { + return explicit; + } + if (env !== process.env) { + return undefined; + } + return resolveAnthropicVertexDefaultAdcPath(env); } function canReadAnthropicVertexAdc(env: NodeJS.ProcessEnv = process.env): boolean { const credentialsPath = resolveAnthropicVertexAdcCredentialsPathCandidate(env); + if (!credentialsPath) { + return false; + } try { readFileSync(credentialsPath, "utf8"); return true;