From ce9ec444df4591f4988fec9672f5501890087aa9 Mon Sep 17 00:00:00 2001 From: lyon Date: Tue, 16 Jun 2026 00:32:09 +0800 Subject: [PATCH] fix: prefer completed mcp tool trace rows --- tools/src/hwlab-cli/trace-renderer.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/src/hwlab-cli/trace-renderer.ts b/tools/src/hwlab-cli/trace-renderer.ts index deb1c6e0..0cc1924b 100644 --- a/tools/src/hwlab-cli/trace-renderer.ts +++ b/tools/src/hwlab-cli/trace-renderer.ts @@ -393,7 +393,7 @@ function isToolTraceEvent(event: TraceEvent): boolean { function isToolStartTraceEvent(event: TraceEvent): boolean { const status = String(event.status ?? "").toLowerCase(); const label = String(event.label ?? ""); - return status === "started" || /:started$|\/started$/u.test(label); + return ["started", "running", "inprogress", "in-progress"].includes(status) || /:started$|\/started$/u.test(label); } function isToolCompleteTraceEvent(event: TraceEvent): boolean { @@ -516,11 +516,12 @@ function traceMarkdownFence(language: string, body: string): string { } function traceStatusToken(event: TraceEvent): string { - const status = String(event.status ?? ""); + const rawStatus = String(event.status ?? ""); + const status = rawStatus.toLowerCase(); if (status === "completed" || status === "succeeded") return "ok"; if (["failed", "blocked", "error", "timeout", "canceled"].includes(status) || event.errorCode) return "fail"; - if (["started", "running", "accepted"].includes(status)) return "run"; - return status || "event"; + if (["started", "running", "accepted", "inprogress", "in-progress"].includes(status)) return "run"; + return rawStatus || "event"; } function traceEventTone(event: TraceEvent): TraceEventRow["tone"] {