From 46a577cc8060eb2069803c3d0386bbf1d7c09f77 Mon Sep 17 00:00:00 2001 From: Christian Gunderman Date: Fri, 23 Jan 2026 10:54:59 -0800 Subject: [PATCH] fix(core): prevent crash in logStartSessionEvent when event is undefined --- .../telemetry/clearcut-logger/clearcut-logger.test.ts | 10 ++++++++++ .../src/telemetry/clearcut-logger/clearcut-logger.ts | 3 +++ 2 files changed, 13 insertions(+) diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.test.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.test.ts index 8af85e88d4..ba5dea789a 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.test.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.test.ts @@ -1281,4 +1281,14 @@ describe('ClearcutLogger', () => { ]); }); }); + + describe('logStartSessionEvent', () => { + it('should not throw if event is undefined', async () => { + const { logger } = setup(); + // @ts-expect-error - intentionally passing undefined to reproduce the issue + await expect( + logger?.logStartSessionEvent(undefined), + ).resolves.not.toThrow(); + }); + }); }); diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts index 9417bbe983..b06caf8d79 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts @@ -511,6 +511,9 @@ export class ClearcutLogger { } async logStartSessionEvent(event: StartSessionEvent): Promise { + if (!event) { + return; + } const data: EventValue[] = [ { gemini_cli_key: EventMetadataKey.GEMINI_CLI_START_SESSION_MODEL,