From ef620c314172d92e5c89cc8a1376cdcbaa8dac68 Mon Sep 17 00:00:00 2001 From: Marius Date: Mon, 11 May 2026 09:21:37 +0200 Subject: [PATCH] fix(vscode): hide empty task header graph (#10125) --- .changeset/hide-empty-task-header-graph.md | 5 +++++ .../webview-ui/src/components/chat/TaskHeader.tsx | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 .changeset/hide-empty-task-header-graph.md diff --git a/.changeset/hide-empty-task-header-graph.md b/.changeset/hide-empty-task-header-graph.md new file mode 100644 index 00000000000..06609ec09aa --- /dev/null +++ b/.changeset/hide-empty-task-header-graph.md @@ -0,0 +1,5 @@ +--- +"kilo-code": patch +--- + +Hide the task header graph area until timeline data is available. diff --git a/packages/kilo-vscode/webview-ui/src/components/chat/TaskHeader.tsx b/packages/kilo-vscode/webview-ui/src/components/chat/TaskHeader.tsx index 409bc62bbcb..e04f51dc7d3 100644 --- a/packages/kilo-vscode/webview-ui/src/components/chat/TaskHeader.tsx +++ b/packages/kilo-vscode/webview-ui/src/components/chat/TaskHeader.tsx @@ -78,6 +78,14 @@ export const TaskHeader: Component = (props) => { return undefined }) + const hasTimeline = createMemo(() => { + for (const m of session.messages()) { + if (m.role !== "assistant") continue + if (session.getParts(m.id).some((p) => p.type !== "step-start")) return true + } + return false + }) + const fmtNum = (n: number): string => { if (n >= 1_000_000) return `${(n / 1_000_000).toFixed(1)}M` if (n >= 1_000) return `${(n / 1_000).toFixed(1)}K` @@ -166,7 +174,7 @@ export const TaskHeader: Component = (props) => { {/* Expanded graph section: timeline + context bar + token breakdown */} - m.role === "assistant")}> +