From be9b2bab156d3eccaf1c8ea4fce2523407833fdd Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Thu, 8 Jan 2026 07:41:20 -0600 Subject: feat(app): cache session-scoped stores, optional context gating --- packages/app/src/pages/session.tsx | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'packages/app/src/pages') diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx index e71177730..58f1e0a64 100644 --- a/packages/app/src/pages/session.tsx +++ b/packages/app/src/pages/session.tsx @@ -977,9 +977,18 @@ export default function Page() { .join("") .trim() - onCleanup(() => { + createEffect(() => { + if (!prompt.ready()) return handoff.prompt = previewPrompt() + }) + + createEffect(() => { + if (!terminal.ready()) return handoff.terminals = terminal.all().map((t) => t.title) + }) + + createEffect(() => { + if (!file.ready()) return handoff.files = Object.fromEntries( tabs() .all() @@ -989,6 +998,9 @@ export default function Page() { return [[path, file.selectedLines(path) ?? null] as const] }), ) + }) + + onCleanup(() => { cancelTurnBackfill() document.removeEventListener("keydown", handleKeyDown) if (scrollSpyFrame !== undefined) cancelAnimationFrame(scrollSpyFrame) -- cgit v1.2.3