From ff3722a3a74b09cd25b03de41933944a55db6351 Mon Sep 17 00:00:00 2001 From: Bryan Morgan Date: Mon, 14 Jul 2025 16:20:06 -0400 Subject: Fix circular reference JSON serialization in telemetry logging (#4150) --- packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'packages/core/src/telemetry/clearcut-logger') diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts index cd2abe81..07c40c86 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts @@ -23,6 +23,7 @@ import { getCachedGoogleAccount, getLifetimeGoogleAccounts, } from '../../utils/user_account.js'; +import { safeJsonStringify } from '../../utils/safeJsonStringify.js'; const start_session_event_name = 'start_session'; const new_prompt_event_name = 'new_prompt'; @@ -65,7 +66,7 @@ export class ClearcutLogger { this.events.push([ { event_time_ms: Date.now(), - source_extension_json: JSON.stringify(event), + source_extension_json: safeJsonStringify(event), }, ]); } @@ -121,7 +122,7 @@ export class ClearcutLogger { log_event: eventsToSend, }, ]; - const body = JSON.stringify(request); + const body = safeJsonStringify(request); const options = { hostname: 'play.googleapis.com', path: '/log', -- cgit v1.2.3