From 6d21cdc69ee27f0270743f5effbf61784898d72c Mon Sep 17 00:00:00 2001 From: Bohdan Triapitsyn Date: Tue, 14 Apr 2026 23:41:34 +0300 Subject: [PATCH] fix: keep active sessions visible in Recent sidebar --- packages/ui/src/components/session/SessionSidebar.tsx | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/packages/ui/src/components/session/SessionSidebar.tsx b/packages/ui/src/components/session/SessionSidebar.tsx index a1e5838c..9f4f15ac 100644 --- a/packages/ui/src/components/session/SessionSidebar.tsx +++ b/packages/ui/src/components/session/SessionSidebar.tsx @@ -128,8 +128,6 @@ const SessionStatusActivityBridge: React.FC = [globalSessionStatuses], ); - const previousStreamingIdsRef = React.useRef>(new Set()); - React.useEffect(() => { const nextStreamingIds = new Set(); sessionStatus.forEach((status, sessionId) => { @@ -138,11 +136,9 @@ const SessionStatusActivityBridge: React.FC = } }); - const previousStreamingIds = previousStreamingIdsRef.current; - const startedStreamingIds = Array.from(nextStreamingIds).filter((sessionId) => !previousStreamingIds.has(sessionId)); - if (startedStreamingIds.length > 0) { + if (nextStreamingIds.size > 0) { setActiveNowEntries((prev) => { - const next = startedStreamingIds.reduce((entries, sessionId) => addActiveNowSession(entries, sessionId), prev); + const next = Array.from(nextStreamingIds).reduce((entries, sessionId) => addActiveNowSession(entries, sessionId), prev); if (next === prev) { return prev; } @@ -150,8 +146,6 @@ const SessionStatusActivityBridge: React.FC = return next; }); } - - previousStreamingIdsRef.current = nextStreamingIds; }, [sessionStatus, safeStorage, setActiveNowEntries]); return null;