diff options
| author | Gaurav <[email protected]> | 2025-07-09 21:17:40 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-07-10 04:17:40 +0000 |
| commit | b7f8e1360fc13c077c24c98fe9d85e0734195000 (patch) | |
| tree | 09bad91a13c35017b4c02fab6169c151e24adb68 /packages/core/src/utils/user_id.ts | |
| parent | da50a1eefbd0751aaf137882595d500e6b6b4179 (diff) | |
fix: Use Email for Clearcut Logging and Refactor User Info Fetching (#3620)
Diffstat (limited to 'packages/core/src/utils/user_id.ts')
| -rw-r--r-- | packages/core/src/utils/user_id.ts | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/packages/core/src/utils/user_id.ts b/packages/core/src/utils/user_id.ts index 42bbee35..045cbd77 100644 --- a/packages/core/src/utils/user_id.ts +++ b/packages/core/src/utils/user_id.ts @@ -8,8 +8,11 @@ import * as os from 'os'; import * as fs from 'fs'; import * as path from 'path'; import { randomUUID } from 'crypto'; +import { createRequire } from 'module'; import { GEMINI_DIR } from './paths.js'; +const require = createRequire(import.meta.url); + const homeDir = os.homedir() ?? ''; const geminiDir = path.join(homeDir, GEMINI_DIR); const installationIdFile = path.join(geminiDir, 'installation_id'); @@ -58,24 +61,23 @@ export function getInstallationId(): string { } /** - * Retrieves the obfuscated Google Account ID for the currently authenticated user. - * When OAuth is available, returns the user's cached Google Account ID. Otherwise, returns the installation ID. - * @returns A string ID for the user (Google Account ID if available, otherwise installation ID). + * Retrieves the email for the currently authenticated user. + * When OAuth is available, returns the user's cached email. Otherwise, returns an empty string. + * @returns A string email for the user (Google Account email if available, otherwise empty string). */ -export async function getGoogleAccountId(): Promise<string> { - // Try to get cached Google Account ID first +export function getGoogleAccountEmail(): string { + // Try to get cached Google Account email first try { - // Dynamic import to avoid circular dependencies - const { getCachedGoogleAccountId } = await import( - '../code_assist/oauth2.js' - ); - const googleAccountId = getCachedGoogleAccountId(); - if (googleAccountId) { - return googleAccountId; + // Dynamically import to avoid circular dependencies + // eslint-disable-next-line no-restricted-syntax + const { getCachedGoogleAccountEmail } = require('../code_assist/oauth2.js'); + const googleAccountEmail = getCachedGoogleAccountEmail(); + if (googleAccountEmail) { + return googleAccountEmail; } } catch (error) { - // If there's any error accessing Google Account ID, just return empty string - console.debug('Could not get cached Google Account ID:', error); + // If there's any error accessing Google Account email, just return empty string + console.debug('Could not get cached Google Account email:', error); } return ''; |
