diff --git a/packages/cli/src/config/auth.ts b/packages/cli/src/config/auth.ts index df47596f..6142368c 100644 --- a/packages/cli/src/config/auth.ts +++ b/packages/cli/src/config/auth.ts @@ -9,7 +9,7 @@ import { loadEnvironment } from './config.js'; export const validateAuthMethod = (authMethod: string): string | null => { loadEnvironment(); - if (authMethod === AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (authMethod === AuthType.LOGIN_WITH_GOOGLE) { return null; } diff --git a/packages/cli/src/ui/components/AuthDialog.tsx b/packages/cli/src/ui/components/AuthDialog.tsx index 78b825e6..d0601dc1 100644 --- a/packages/cli/src/ui/components/AuthDialog.tsx +++ b/packages/cli/src/ui/components/AuthDialog.tsx @@ -27,10 +27,7 @@ export function AuthDialog({ initialErrorMessage || null, ); const items = [ - { - label: 'Login with Google', - value: AuthType.LOGIN_WITH_GOOGLE_PERSONAL, - }, + { label: 'Login with Google', value: AuthType.LOGIN_WITH_GOOGLE }, { label: 'Gemini API Key (AI Studio)', value: AuthType.USE_GEMINI }, { label: 'Vertex AI', value: AuthType.USE_VERTEX_AI }, ]; diff --git a/packages/cli/src/ui/hooks/useGeminiStream.test.tsx b/packages/cli/src/ui/hooks/useGeminiStream.test.tsx index 9751f470..1ccf3123 100644 --- a/packages/cli/src/ui/hooks/useGeminiStream.test.tsx +++ b/packages/cli/src/ui/hooks/useGeminiStream.test.tsx @@ -1009,7 +1009,7 @@ describe('useGeminiStream', () => { it('should call parseAndFormatApiError with the correct authType on stream initialization failure', async () => { // 1. Setup const mockError = new Error('Rate limit exceeded'); - const mockAuthType = AuthType.LOGIN_WITH_GOOGLE_PERSONAL; + const mockAuthType = AuthType.LOGIN_WITH_GOOGLE; mockParseAndFormatApiError.mockClear(); mockSendMessageStream.mockReturnValue( (async function* () { diff --git a/packages/cli/src/ui/privacy/PrivacyNotice.tsx b/packages/cli/src/ui/privacy/PrivacyNotice.tsx index b12b3648..ab2ffd10 100644 --- a/packages/cli/src/ui/privacy/PrivacyNotice.tsx +++ b/packages/cli/src/ui/privacy/PrivacyNotice.tsx @@ -29,7 +29,7 @@ const PrivacyNoticeText = ({ return ; case AuthType.USE_VERTEX_AI: return ; - case AuthType.LOGIN_WITH_GOOGLE_PERSONAL: + case AuthType.LOGIN_WITH_GOOGLE: default: return ; } diff --git a/packages/cli/src/ui/utils/errorParsing.test.ts b/packages/cli/src/ui/utils/errorParsing.test.ts index 72ddb0c9..4bbaabf1 100644 --- a/packages/cli/src/ui/utils/errorParsing.test.ts +++ b/packages/cli/src/ui/utils/errorParsing.test.ts @@ -34,7 +34,7 @@ describe('parseAndFormatApiError', () => { 'got status: 429 Too Many Requests. {"error":{"code":429,"message":"Rate limit exceeded","status":"RESOURCE_EXHAUSTED"}}'; const result = parseAndFormatApiError( errorMessage, - AuthType.LOGIN_WITH_GOOGLE_PERSONAL, + AuthType.LOGIN_WITH_GOOGLE, ); expect(result).toContain('[API Error: Rate limit exceeded'); expect(result).toContain(enterpriseMessage); diff --git a/packages/cli/src/ui/utils/errorParsing.ts b/packages/cli/src/ui/utils/errorParsing.ts index 98020ee8..33014812 100644 --- a/packages/cli/src/ui/utils/errorParsing.ts +++ b/packages/cli/src/ui/utils/errorParsing.ts @@ -45,7 +45,7 @@ function isStructuredError(error: unknown): error is StructuredError { function getRateLimitMessage(authType?: AuthType): string { switch (authType) { - case AuthType.LOGIN_WITH_GOOGLE_PERSONAL: + case AuthType.LOGIN_WITH_GOOGLE: return RATE_LIMIT_ERROR_MESSAGE_GOOGLE; case AuthType.USE_GEMINI: return RATE_LIMIT_ERROR_MESSAGE_USE_GEMINI; diff --git a/packages/core/src/code_assist/codeAssist.ts b/packages/core/src/code_assist/codeAssist.ts index 8a3c6939..c3cb9293 100644 --- a/packages/core/src/code_assist/codeAssist.ts +++ b/packages/core/src/code_assist/codeAssist.ts @@ -13,7 +13,7 @@ export async function createCodeAssistContentGenerator( httpOptions: HttpOptions, authType: AuthType, ): Promise { - if (authType === AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (authType === AuthType.LOGIN_WITH_GOOGLE) { const authClient = await getOauthClient(); const projectId = await setupUser(authClient); return new CodeAssistServer(authClient, projectId, httpOptions); diff --git a/packages/core/src/core/client.ts b/packages/core/src/core/client.ts index 3f9a69a7..9a74add6 100644 --- a/packages/core/src/core/client.ts +++ b/packages/core/src/core/client.ts @@ -491,7 +491,7 @@ export class GeminiClient { */ private async handleFlashFallback(authType?: string): Promise { // Only handle fallback for OAuth users - if (authType !== AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (authType !== AuthType.LOGIN_WITH_GOOGLE) { return null; } diff --git a/packages/core/src/core/contentGenerator.test.ts b/packages/core/src/core/contentGenerator.test.ts index d020fd26..4c6134f2 100644 --- a/packages/core/src/core/contentGenerator.test.ts +++ b/packages/core/src/core/contentGenerator.test.ts @@ -20,7 +20,7 @@ describe('contentGenerator', () => { ); const generator = await createContentGenerator({ model: 'test-model', - authType: AuthType.LOGIN_WITH_GOOGLE_PERSONAL, + authType: AuthType.LOGIN_WITH_GOOGLE, }); expect(createCodeAssistContentGenerator).toHaveBeenCalled(); expect(generator).toBe(mockGenerator); diff --git a/packages/core/src/core/contentGenerator.ts b/packages/core/src/core/contentGenerator.ts index 82fe5ee9..4740c4ee 100644 --- a/packages/core/src/core/contentGenerator.ts +++ b/packages/core/src/core/contentGenerator.ts @@ -35,7 +35,7 @@ export interface ContentGenerator { } export enum AuthType { - LOGIN_WITH_GOOGLE_PERSONAL = 'oauth-personal', + LOGIN_WITH_GOOGLE = 'oauth-personal', USE_GEMINI = 'gemini-api-key', USE_VERTEX_AI = 'vertex-ai', } @@ -66,7 +66,7 @@ export async function createContentGeneratorConfig( }; // if we are using google auth nothing else to validate for now - if (authType === AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (authType === AuthType.LOGIN_WITH_GOOGLE) { return contentGeneratorConfig; } @@ -108,7 +108,7 @@ export async function createContentGenerator( 'User-Agent': `GeminiCLI/${version} (${process.platform}; ${process.arch})`, }, }; - if (config.authType === AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (config.authType === AuthType.LOGIN_WITH_GOOGLE) { return createCodeAssistContentGenerator(httpOptions, config.authType); } diff --git a/packages/core/src/core/geminiChat.ts b/packages/core/src/core/geminiChat.ts index ed0189d3..537d55a0 100644 --- a/packages/core/src/core/geminiChat.ts +++ b/packages/core/src/core/geminiChat.ts @@ -193,7 +193,7 @@ export class GeminiChat { */ private async handleFlashFallback(authType?: string): Promise { // Only handle fallback for OAuth users - if (authType !== AuthType.LOGIN_WITH_GOOGLE_PERSONAL) { + if (authType !== AuthType.LOGIN_WITH_GOOGLE) { return null; } diff --git a/packages/core/src/utils/flashFallback.integration.test.ts b/packages/core/src/utils/flashFallback.integration.test.ts index cffe9aa5..6554425f 100644 --- a/packages/core/src/utils/flashFallback.integration.test.ts +++ b/packages/core/src/utils/flashFallback.integration.test.ts @@ -78,14 +78,14 @@ describe('Flash Fallback Integration', () => { return status === 429; }, onPersistent429: mockFallbackHandler, - authType: AuthType.LOGIN_WITH_GOOGLE_PERSONAL, + authType: AuthType.LOGIN_WITH_GOOGLE, }); // Verify fallback was triggered expect(fallbackCalled).toBe(true); expect(fallbackModel).toBe(DEFAULT_GEMINI_FLASH_MODEL); expect(mockFallbackHandler).toHaveBeenCalledWith( - AuthType.LOGIN_WITH_GOOGLE_PERSONAL, + AuthType.LOGIN_WITH_GOOGLE, ); expect(result).toBe('success after fallback'); // Should have: 2 failures, then fallback triggered, then 1 success after retry reset diff --git a/packages/core/src/utils/retry.ts b/packages/core/src/utils/retry.ts index 372a7976..f3f5f2d2 100644 --- a/packages/core/src/utils/retry.ts +++ b/packages/core/src/utils/retry.ts @@ -97,7 +97,7 @@ export async function retryWithBackoff( if ( consecutive429Count >= 2 && onPersistent429 && - authType === AuthType.LOGIN_WITH_GOOGLE_PERSONAL + authType === AuthType.LOGIN_WITH_GOOGLE ) { try { const fallbackModel = await onPersistent429(authType);