diff --git a/src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx b/src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx index a5872c1..4ad808c 100644 --- a/src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx +++ b/src/widgets/space-workspace/ui/SpaceWorkspaceWidget.tsx @@ -21,7 +21,7 @@ import { SpaceFocusHudWidget } from "@/widgets/space-focus-hud"; import { SpaceSetupDrawerWidget } from "@/widgets/space-setup-drawer"; import { SpaceToolsDockWidget } from "@/widgets/space-tools-dock"; import { useRouter, useSearchParams } from "next/navigation"; -import { useEffect, useMemo, useState } from "react"; +import { useEffect, useMemo, useRef, useState } from "react"; import type { SessionEntryPoint, WorkspaceMode } from "../model/types"; import { useAwayReturnRecovery } from "../model/useAwayReturnRecovery"; import { useSpaceWorkspaceSelection } from "../model/useSpaceWorkspaceSelection"; @@ -225,6 +225,7 @@ export const SpaceWorkspaceWidget = () => { hasEnoughWeeklyData; const allowsPausedReentry = resumeIntent === "continue" || resumeIntent === "refocus"; + const didResolveEntryRouteRef = useRef(false); const secondaryReviewTeaser = shouldShowSecondaryReviewTeaser ? { title: isPro @@ -246,7 +247,13 @@ export const SpaceWorkspaceWidget = () => { }, [isBootstrapping, currentSession, hasQueryOverrides, router]); useEffect(() => { - if (isBootstrapping || !currentSession) { + if (isBootstrapping || didResolveEntryRouteRef.current) { + return; + } + + didResolveEntryRouteRef.current = true; + + if (!currentSession) { return; }