From 1433c67769392df3dd44948a16ec0732dbe751b3 Mon Sep 17 00:00:00 2001 From: TrueAlpha-spiral <199723968+TrueAlpha-spiral@users.noreply.github.com> Date: Sat, 25 Apr 2026 18:51:01 +0000 Subject: [PATCH] =?UTF-8?q?=E2=9A=A1=20Cache=20installation=20ID=20in=20me?= =?UTF-8?q?mory=20to=20avoid=20repeated=20synchronous=20file=20reads?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- packages/core/src/utils/user_id.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/core/src/utils/user_id.ts b/packages/core/src/utils/user_id.ts index 6f16806f658..38d4772a2d4 100644 --- a/packages/core/src/utils/user_id.ts +++ b/packages/core/src/utils/user_id.ts @@ -32,12 +32,18 @@ function writeInstallationIdToFile(installationId: string) { fs.writeFileSync(installationIdFile, installationId, 'utf-8'); } +let cachedInstallationId: string | null = null; + /** * Retrieves the installation ID from a file, creating it if it doesn't exist. * This ID is used for unique user installation tracking. * @returns A UUID string for the user. */ export function getInstallationId(): string { + if (cachedInstallationId) { + return cachedInstallationId; + } + try { ensureGeminiDirExists(); let installationId = readInstallationIdFromFile(); @@ -47,6 +53,7 @@ export function getInstallationId(): string { writeInstallationIdToFile(installationId); } + cachedInstallationId = installationId; return installationId; } catch (error) { console.error(