feat(workflows): drop the Tool Execution Flow sankey

The d3-sankey tool-transition chart was the last of the deep harness-internals
visualizations issue #6 set out to remove: a wall of bands showing that Read
tends to precede Edit, with nothing a reader could act on. It goes, along with
its i18n keys in both locales and the now-orphaned d3-sankey dependency.

The workflows API response is untouched — `toolFlow` still ships in the
aggregate and still feeds the Dashboard's top-tools list. Remaining sections
renumber 4-9.
This commit is contained in:
2026-08-26 10:54:53 +07:00
parent 348c645ef3
commit 79e56c3221
9 changed files with 26 additions and 1014 deletions
+13 -25
View File
@@ -3,10 +3,10 @@
* @description Workflows page. Opens on this dashboard's OWN pipelines — per-node
* pass rates across every lane, and which skills/plugins actually get used — then
* the Claude Code orchestration analytics: headline stats, Workflow-tool runs, the
* spawning DAG, tool flow, patterns, model delegation, error propagation, session
* complexity, compaction impact and the per-session drill-in. Issue #6 dropped the
* agent collaboration network and the subagent effectiveness scorecards as too
* specialized to act on.
* spawning DAG, patterns, model delegation, error propagation, session complexity,
* compaction impact and the per-session drill-in. Issue #6 dropped the agent
* collaboration network and the subagent effectiveness scorecards as too
* specialized to act on; the tool-execution Sankey followed for the same reason.
* @author Nguyễn Ngọc Trí Vĩ <vinnt@smartgift.vn>
*/
/* =============================================================================
@@ -35,7 +35,6 @@
* - `../components/workflows/SkillUsagePanel`
* - `../components/workflows/WorkflowRunsPanel`
* - `../components/workflows/OrchestrationDAG`
* - `../components/workflows/ToolExecutionFlow`
* - `../components/workflows/WorkflowPatterns`
* - `../components/workflows/ModelDelegationFlow`
* - `../components/workflows/ErrorPropagationMap`
@@ -82,7 +81,6 @@ import type { WorkflowData, WSMessage } from "../lib/types";
import { WorkflowStats } from "../components/workflows/WorkflowStats";
import { OrchestrationDAG } from "../components/workflows/OrchestrationDAG";
import { ToolExecutionFlow } from "../components/workflows/ToolExecutionFlow";
import { WorkflowPatterns } from "../components/workflows/WorkflowPatterns";
import { ModelDelegationFlow } from "../components/workflows/ModelDelegationFlow";
import { ErrorPropagationMap } from "../components/workflows/ErrorPropagationMap";
@@ -267,19 +265,9 @@ export function Workflows() {
)}
</Section>
{/* Section 4: Tool Execution Flow */}
{/* Section 4: Workflow Patterns */}
<Section
number={4}
title={t("toolFlow.title")}
subtitle={t("toolFlow.subtitle")}
infoKey="toolFlow"
>
<ToolExecutionFlow data={data.toolFlow} filterAgentType={selectedNode} />
</Section>
{/* Section 5: Workflow Patterns */}
<Section
number={5}
title={t("patterns.title")}
subtitle={t("patterns.subtitle")}
infoKey="patterns"
@@ -287,10 +275,10 @@ export function Workflows() {
<WorkflowPatterns data={data.patterns} onPatternClick={() => {}} />
</Section>
{/* Section 6 + 7: Two Column */}
{/* Section 5 + 6: Two Column */}
<div className="grid grid-cols-1 lg:grid-cols-2 gap-6">
<Section
number={6}
number={5}
title={t("modelDelegation.title")}
subtitle={t("modelDelegation.subtitle")}
infoKey="modelDelegation"
@@ -299,7 +287,7 @@ export function Workflows() {
</Section>
<Section
number={7}
number={6}
title={t("errorPropagation.title")}
subtitle={t("errorPropagation.subtitle")}
infoKey="errorPropagation"
@@ -308,10 +296,10 @@ export function Workflows() {
</Section>
</div>
{/* Section 8 + 9: Two Column */}
{/* Section 7 + 8: Two Column */}
<div className="grid grid-cols-1 lg:grid-cols-2 gap-6">
<Section
number={8}
number={7}
title={t("complexity.title")}
subtitle={t("complexity.subtitle")}
infoKey="complexity"
@@ -320,7 +308,7 @@ export function Workflows() {
</Section>
<Section
number={9}
number={8}
title={t("compaction.title")}
subtitle={t("compaction.subtitle")}
infoKey="compaction"
@@ -329,9 +317,9 @@ export function Workflows() {
</Section>
</div>
{/* Section 10: Session Drill-In */}
{/* Section 9: Session Drill-In */}
<Section
number={10}
number={9}
title={t("drillIn.title")}
subtitle={t("drillIn.subtitle")}
infoKey="drillIn"