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
+7 -9
View File
@@ -660,13 +660,12 @@ graph TD
WF --> S3["SkillUsagePanel<br/>Skill + plugin call counts"]
WF --> S4["WorkflowRunsPanel<br/>Workflow-tool runs<br/>(on-disk journals)"]
WF --> S5["OrchestrationDAG<br/>Horizontal DAG —<br/>Sessions → Main → Subagents → Outcomes"]
WF --> S6["ToolExecutionFlow<br/>d3-sankey tool transitions"]
WF --> S7["WorkflowPatterns<br/>Auto-detected sequences"]
WF --> S8["ModelDelegationFlow<br/>Model → agent routing"]
WF --> S9["ErrorPropagationMap<br/>React horizontal bars +<br/>API/session error support"]
WF --> S10["SessionComplexityScatter<br/>D3 bubble chart"]
WF --> S11["CompactionImpact<br/>Token compression analysis"]
WF --> S12["SessionDrillIn<br/>Searchable session explorer<br/>(3 tabs: tree / timeline / events)"]
WF --> S6["WorkflowPatterns<br/>Auto-detected sequences"]
WF --> S7["ModelDelegationFlow<br/>Model → agent routing"]
WF --> S8["ErrorPropagationMap<br/>React horizontal bars +<br/>API/session error support"]
WF --> S9["SessionComplexityScatter<br/>D3 bubble chart"]
WF --> S10["CompactionImpact<br/>Token compression analysis"]
WF --> S11["SessionDrillIn<br/>Searchable session explorer<br/>(3 tabs: tree / timeline / events)"]
classDef root fill:#6366f1,stroke:#818cf8,color:#fff
```
@@ -677,7 +676,6 @@ graph TD
| `SkillUsagePanel` | Which skills and plugins the sessions actually use | Plain React ranked bars from `GET /api/workflows/skill-usage`; plugin chips sum skill calls and the plugin's own MCP tool calls |
| `WorkflowRunsPanel` | Workflow-tool runs reconstructed from on-disk journals | Per-run phase chips, per-agent table, expandable results |
| `OrchestrationDAG` | Horizontal DAG of aggregate spawning patterns | Custom DAG layout, capped at top 7 subagent types with overflow node |
| `ToolExecutionFlow` | Tool-to-tool transition Sankey diagram | `d3-sankey` |
| `WorkflowPatterns` | Common orchestration sequences | Pattern detection from event data; clicking a row expands the full step chain, a stats grid, a deterministic narrative and a suggestion bucket, all i18n-driven (`workflows.patterns.detail.*`) |
| `ModelDelegationFlow` | Model routing through agent hierarchies | Hierarchical layout |
| `ErrorPropagationMap` | Error clustering by hierarchy depth with API/session event errors | Pure React horizontal bars, `eventErrors` support for API and session-level errors |
@@ -2292,7 +2290,7 @@ For the extension source code, refer to the [vscode-extension/](./vscode-extensi
| **Network posture** | Server binds **`127.0.0.1` (loopback) by default** — not network-reachable out of the box (fix for GHSA-gr74-4xfh-6jw9; it previously bound `0.0.0.0` with no auth). Widen the bind via `DASHBOARD_HOST` (e.g. `0.0.0.0`), which logs a startup warning. A Host-header allowlist on HTTP + WebSocket upgrades blocks DNS-rebinding; extra LAN names go in `DASHBOARD_ALLOWED_HOSTS` (comma-separated) |
| **Auth (optional)** | Off by default — the loopback bind is the trust boundary. Set `DASHBOARD_TOKEN` to gate every `/api/*` request **and** the WebSocket, presented as `Authorization: Bearer <token>`, an `x-dashboard-token` header, or `?token=`. Exempt even when set: `/api/health`, `/api/openapi.json`, `/api/docs`, and `/api/hooks` (local Claude Code hook ingestion) |
| **No secrets** | No API keys, tokens, or credentials stored or transmitted |
| **Dependency surface** | Minimal: 5 runtime server deps, 6 runtime client deps (includes `d3` and `d3-sankey` for Workflows visualizations) |
| **Dependency surface** | Minimal: 5 runtime server deps, 5 runtime client deps (includes `d3` for Workflows visualizations) |
---