From 5832834aa42504e8f23fdd07170d2d9eec0a6e7a Mon Sep 17 00:00:00 2001 From: marius-kilocode Date: Fri, 18 Sep 2026 15:00:04 +0200 Subject: [PATCH] chore: remove small dead leftovers --- .../tests/unit/background-agents.test.ts | 6 +-- .../agent-manager/SubagentPanel.tsx | 4 +- .../src/components/chat/ChatView.tsx | 4 +- .../src/components/chat/background-agents.ts | 7 +--- .../mermaid/markdown-mermaid.stories.tsx | 4 -- .../src/kilocode/mermaid/markdown-mermaid.ts | 41 +++---------------- 6 files changed, 14 insertions(+), 52 deletions(-) diff --git a/packages/kilo-vscode/tests/unit/background-agents.test.ts b/packages/kilo-vscode/tests/unit/background-agents.test.ts index 26b1df4f6e9c..51923c4c9dc1 100644 --- a/packages/kilo-vscode/tests/unit/background-agents.test.ts +++ b/packages/kilo-vscode/tests/unit/background-agents.test.ts @@ -2,7 +2,7 @@ import { describe, expect, it } from "bun:test" import { backgroundAgents, backgroundJobAgents, - children, + taskChildren, fitBackgroundAgents, showBackgroundAgent, } from "../../webview-ui/src/components/chat/background-agents" @@ -82,13 +82,13 @@ describe("children", () => { taskPart({ id: "part_3", child: "ses_a" }), ] - expect(children(tools)).toEqual(["ses_a", "ses_b"]) + expect(taskChildren(tools)).toEqual(["ses_a", "ses_b"]) }) it("ignores non-task tools and parts without a child session", () => { const bash = { id: "part_3", type: "tool", tool: "bash", state: { status: "running", input: {} } } as ToolPart - expect(children([bash, taskPart({ id: "part_4", background: true })])).toEqual([]) + expect(taskChildren([bash, taskPart({ id: "part_4", background: true })])).toEqual([]) }) }) diff --git a/packages/kilo-vscode/webview-ui/agent-manager/SubagentPanel.tsx b/packages/kilo-vscode/webview-ui/agent-manager/SubagentPanel.tsx index d4fdb8c98784..b5eac8d0ff66 100644 --- a/packages/kilo-vscode/webview-ui/agent-manager/SubagentPanel.tsx +++ b/packages/kilo-vscode/webview-ui/agent-manager/SubagentPanel.tsx @@ -11,7 +11,7 @@ import { IconButton } from "@kilocode/kilo-ui/icon-button" import { createEffect, createMemo, on, type Accessor, type Component } from "solid-js" import { DataBridge } from "../src/App" import { ChatView } from "../src/components/chat" -import { children } from "../src/components/chat/background-agents" +import { taskChildren } from "../src/components/chat/background-agents" import { useLanguage } from "../src/context/language" import { SessionProvider, useSession, useSessionVisibility } from "../src/context/session" import { description, label, type Activity } from "../src/utils/session-activity" @@ -147,7 +147,7 @@ export const SubagentPanel: Component = (props) => { // Colors follow the parent's spawn order so tabs match the parent transcript. const siblings = createMemo(() => { const id = session.currentSessionID() - return id ? children(session.getSessionToolParts(id)) : [] + return id ? taskChildren(session.getSessionToolParts(id)) : [] }) return ( diff --git a/packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx b/packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx index 299c9b3bfc64..803441a23848 100644 --- a/packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx +++ b/packages/kilo-vscode/webview-ui/src/components/chat/ChatView.tsx @@ -28,7 +28,7 @@ import { useWorktreeMode } from "../../context/worktree-mode" import { useServer } from "../../context/server" import { TranscriptSearchProvider } from "../../context/transcript-search" import { isPromptBlocked, isSuggesting, isQuestioning } from "./prompt-input-utils" -import { children } from "./background-agents" +import { taskChildren } from "./background-agents" import { showTabStrip } from "../../utils/local-tabs" import type { WorktreeReference } from "../../hooks/file-mention-utils" @@ -376,7 +376,7 @@ export const ChatView: Component = (props) => { ) // Sibling-aware avatar colors for every subagent spawned by this session. - const siblings = createMemo(() => (id() ? children(session.getSessionToolParts(id()!)) : [])) + const siblings = createMemo(() => (id() ? taskChildren(session.getSessionToolParts(id()!)) : [])) return ( diff --git a/packages/kilo-vscode/webview-ui/src/components/chat/background-agents.ts b/packages/kilo-vscode/webview-ui/src/components/chat/background-agents.ts index 9362faf40aeb..7338fa85daa3 100644 --- a/packages/kilo-vscode/webview-ui/src/components/chat/background-agents.ts +++ b/packages/kilo-vscode/webview-ui/src/components/chat/background-agents.ts @@ -67,7 +67,7 @@ function meta(part: ToolPart, key: string): unknown { } /** Child session IDs of Task tool parts. */ -function taskChildren(tools: ToolPart[]): string[] { +export function taskChildren(tools: ToolPart[]): string[] { const ids: string[] = [] for (const part of tools) { if (part.tool !== "task") continue @@ -78,11 +78,6 @@ function taskChildren(tools: ToolPart[]): string[] { return ids } -/** Child session IDs of every Task tool part, in spawn order, without duplicates. */ -export function children(tools: ToolPart[]): string[] { - return taskChildren(tools) -} - function working(status: SessionStatusInfo | undefined): boolean { return status?.type === "busy" || status?.type === "retry" } diff --git a/packages/ui/src/kilocode/mermaid/markdown-mermaid.stories.tsx b/packages/ui/src/kilocode/mermaid/markdown-mermaid.stories.tsx index 3d97e91b29c4..e7bb969236fa 100644 --- a/packages/ui/src/kilocode/mermaid/markdown-mermaid.stories.tsx +++ b/packages/ui/src/kilocode/mermaid/markdown-mermaid.stories.tsx @@ -17,10 +17,6 @@ export default { id: "kilocode-markdown-mermaid", } -export const Mermaid = { - render: () => , -} - export const MermaidError = { render: () => ( `Mermaid render failed: ${message}`, - errorDefault: "Unable to render Mermaid diagram.", - errorEmpty: "Mermaid rendered an empty diagram.", - copied: "Copied", - copy: "Copy", - download: "Download", - copySource: "Copy Mermaid source", - copySvg: "Copy SVG", - copyPng: "Copy PNG", - downloadSvg: "Download SVG", - downloadPng: "Download PNG", - zoom: "Zoom", - zoomIn: "Zoom in", - zoomOut: "Zoom out", - zoomReset: "Reset zoom", - close: "Close", -} - const cache: { promise?: Promise; id: number; queue: Promise } = { id: 0, queue: Promise.resolve(), @@ -214,10 +194,6 @@ function sanitize(svg: string) { return DOMPurify.sanitize(svg, svgConfig) } -function mergeLabels(input?: Partial) { - return { ...labels, ...input } -} - function message(err: unknown, labels: MermaidLabels) { if (err instanceof Error) return err.message if (typeof err === "string") return err @@ -412,12 +388,7 @@ async function svg(renderer: Mermaid, source: string, cfg: ReturnType, -) { - const label = mergeLabels(input) +export async function renderMermaid(root: HTMLDivElement, signal: { aborted: boolean }, labels: MermaidLabels) { const blocks = Array.from(root.querySelectorAll('pre > code[data-lang="mermaid"]')) if (blocks.length === 0) return @@ -428,7 +399,7 @@ export async function renderMermaid( if (!(pre instanceof HTMLPreElement)) continue if (!(wrapper instanceof HTMLElement)) continue if (wrapper.getAttribute("data-component") !== "markdown-code") continue - fail(wrapper, pre, err, label) + fail(wrapper, pre, err, labels) } }) if (!renderer) return @@ -470,7 +441,7 @@ export async function renderMermaid( const el = panel(wrapper) if (!keep) { el.setAttribute("data-state", "rendering") - el.textContent = label.rendering + el.textContent = labels.rendering pre.hidden = false } else { pre.hidden = true @@ -481,17 +452,17 @@ export async function renderMermaid( if (signal.aborted || !root.isConnected || !wrapper.isConnected) return const safe = sanitize(result.svg) - if (!safe) throw new Error(label.errorEmpty) + if (!safe) throw new Error(labels.errorEmpty) cleanupActions(el) el.setAttribute("data-state", "rendered") el.innerHTML = safe - renderActions(el, pre, source, label) + renderActions(el, pre, source, labels) wrapper.setAttribute("data-mermaid-state", "rendered") pre.hidden = true } catch (err) { if (signal.aborted || !root.isConnected || !wrapper.isConnected) return - fail(wrapper, pre, err, label) + fail(wrapper, pre, err, labels) } } }