From 5961b6e9bdb91d3d27be505d357bfb4f6b4c18d0 Mon Sep 17 00:00:00 2001 From: weichen Date: Sat, 3 Oct 2026 16:37:32 +0000 Subject: [PATCH] Use the shell phase type in the conversation header Why: The phase type has to be consumed by the screen that branches on it, or the unused-export ratchet fails. Evidence: knip stays at the existing baseline after the conversation annotates ShellPhase. Impact: No behavior change. Refs: feature/runstate-shell Co-authored-by: Cursor --- src/components/Conversation.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/Conversation.tsx b/src/components/Conversation.tsx index a1e78bc..0b2a214 100644 --- a/src/components/Conversation.tsx +++ b/src/components/Conversation.tsx @@ -8,7 +8,7 @@ import { api } from '../api' import { store, useStore, activeRun, type LiveState, type ContextObs } from '../store' import { scrollRatio, scrollTopForRatio } from '../scrollsync' import { liveToMessage, livePhaseLabel, showProcessInline } from '../live' -import { deriveShellPhase, isShellBusy, showLiveBubble } from '../runstate' +import { deriveShellPhase, isShellBusy, showLiveBubble, type ShellPhase } from '../runstate' import type { Message, Part, HITLCard, ActivityCard, Artifact } from '../contracts' import { UIRenderer, InlineConfirmCard, hasOpenConfirm, CardAnchor } from '@ui' import { docBridge } from './Workbench' @@ -434,7 +434,7 @@ export function Conversation() { artifactCache = Object.fromEntries(artifacts.map(a => [a.id, a])) cardCache = Object.fromEntries(cards.map(c => [c.id, c])) - const phase = deriveShellPhase({ + const phase: ShellPhase = deriveShellPhase({ posting, openRun: !!activeRun(runs), liveRunId: live?.runId ?? null,