From 18b3ffd49b61e95353a3bca129acc1a2705b9ec3 Mon Sep 17 00:00:00 2001 From: Andrew Liu <159852527+aliu39@users.noreply.github.com> Date: Mon, 17 Nov 2025 11:18:48 -0800 Subject: [PATCH 1/3] ref(explorer): useSessionStorage to persist current run id --- static/app/views/seerExplorer/hooks/useSeerExplorer.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/static/app/views/seerExplorer/hooks/useSeerExplorer.tsx b/static/app/views/seerExplorer/hooks/useSeerExplorer.tsx index 45a5c9e84e05a4..002fa264407cb2 100644 --- a/static/app/views/seerExplorer/hooks/useSeerExplorer.tsx +++ b/static/app/views/seerExplorer/hooks/useSeerExplorer.tsx @@ -10,6 +10,7 @@ import { import type RequestError from 'sentry/utils/requestError/requestError'; import useApi from 'sentry/utils/useApi'; import useOrganization from 'sentry/utils/useOrganization'; +import {useSessionStorage} from 'sentry/utils/useSessionStorage'; import useAsciiSnapshot from 'sentry/views/seerExplorer/hooks/useAsciiSnapshot'; import type {Block} from 'sentry/views/seerExplorer/types'; @@ -94,7 +95,10 @@ export const useSeerExplorer = () => { const orgSlug = organization?.slug; const captureAsciiSnapshot = useAsciiSnapshot(); - const [runId, setRunId] = useState(null); + const [runId, setRunId] = useSessionStorage( + 'seer-explorer-run-id', + null + ); const [waitingForResponse, setWaitingForResponse] = useState(false); const [deletedFromIndex, setDeletedFromIndex] = useState(null); const [interruptRequested, setInterruptRequested] = useState(false); From 7e490ec433cbf1a8d2200766b95250ea8542efa0 Mon Sep 17 00:00:00 2001 From: Andrew Liu <159852527+aliu39@users.noreply.github.com> Date: Mon, 17 Nov 2025 11:38:49 -0800 Subject: [PATCH 2/3] jest --- static/app/views/seerExplorer/hooks/useSeerExplorer.spec.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/static/app/views/seerExplorer/hooks/useSeerExplorer.spec.tsx b/static/app/views/seerExplorer/hooks/useSeerExplorer.spec.tsx index 657d0382fd6337..d49fbf08eb5432 100644 --- a/static/app/views/seerExplorer/hooks/useSeerExplorer.spec.tsx +++ b/static/app/views/seerExplorer/hooks/useSeerExplorer.spec.tsx @@ -7,6 +7,7 @@ import {useSeerExplorer} from './useSeerExplorer'; describe('useSeerExplorer', () => { beforeEach(() => { MockApiClient.clearMockResponses(); + sessionStorage.clear(); }); const organization = OrganizationFixture({ From 06079756158c37cb698648135b82cee089f14e19 Mon Sep 17 00:00:00 2001 From: Andrew Liu <159852527+aliu39@users.noreply.github.com> Date: Mon, 17 Nov 2025 11:56:35 -0800 Subject: [PATCH 3/3] jest2 --- static/app/views/seerExplorer/explorerPanel.spec.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/static/app/views/seerExplorer/explorerPanel.spec.tsx b/static/app/views/seerExplorer/explorerPanel.spec.tsx index e7ad29b84f172e..8d41b0d3996f82 100644 --- a/static/app/views/seerExplorer/explorerPanel.spec.tsx +++ b/static/app/views/seerExplorer/explorerPanel.spec.tsx @@ -19,6 +19,7 @@ describe('ExplorerPanel', () => { beforeEach(() => { MockApiClient.clearMockResponses(); + sessionStorage.clear(); // This matches the real behavior when no run ID is provided. MockApiClient.addMockResponse({