From aa19a82cdaeeba2d2ac21ca4af25f8728b63e993 Mon Sep 17 00:00:00 2001 From: Neil <4138956+nwparker@users.noreply.github.com> Date: Sun, 31 May 2026 07:02:24 -0700 Subject: [PATCH] perf: fold feature wall telemetry cleanup into open effect (#4177) --- .../use-feature-wall-tour-telemetry.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/renderer/src/components/feature-wall/use-feature-wall-tour-telemetry.ts b/src/renderer/src/components/feature-wall/use-feature-wall-tour-telemetry.ts index 5f2b83af0a3..d18c744f45e 100644 --- a/src/renderer/src/components/feature-wall/use-feature-wall-tour-telemetry.ts +++ b/src/renderer/src/components/feature-wall/use-feature-wall-tour-telemetry.ts @@ -100,18 +100,18 @@ export function useFeatureWallTourTelemetry(args: { }, []) useEffect(() => { - if (isOpen && openFeatureWallTourTelemetrySession(telemetryRef.current, performance.now())) { - track('feature_wall_opened', { source }) - return - } if (!isOpen) { emitCloseTelemetry() + return undefined } - }, [emitCloseTelemetry, isOpen, source]) - useEffect(() => { + if (openFeatureWallTourTelemetrySession(telemetryRef.current, performance.now())) { + track('feature_wall_opened', { source: sourceRef.current }) + } + // Why: the telemetry session opens from this Effect, so the same Effect + // owns close-on-unmount instead of a second cleanup-only Effect. return () => emitCloseTelemetry() - }, [emitCloseTelemetry]) + }, [emitCloseTelemetry, isOpen]) return { markExitAction } }