feat(workflows): drop the patterns list and model delegation flow
Neither panel drove a decision: the detected-pattern ranking restated what the orchestration DAG already shows, and the delegation flow's main→subagent model pairing is visible in the per-session drill-in. Removes both components and their i18n blocks, promotes the error-propagation map to full width, and renumbers the remaining sections 4-7.
This commit is contained in:
@@ -3,10 +3,11 @@
|
||||
* @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, 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.
|
||||
* spawning DAG, 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, the detected-patterns list and the model delegation flow
|
||||
* followed for the same reason.
|
||||
* @author Nguyễn Ngọc Trí Vĩ <vinnt@smartgift.vn>
|
||||
*/
|
||||
/* =============================================================================
|
||||
@@ -35,8 +36,6 @@
|
||||
* - `../components/workflows/SkillUsagePanel`
|
||||
* - `../components/workflows/WorkflowRunsPanel`
|
||||
* - `../components/workflows/OrchestrationDAG`
|
||||
* - `../components/workflows/WorkflowPatterns`
|
||||
* - `../components/workflows/ModelDelegationFlow`
|
||||
* - `../components/workflows/ErrorPropagationMap`
|
||||
* - `../components/workflows/SessionComplexityScatter`
|
||||
* - `../components/workflows/CompactionImpact`
|
||||
@@ -80,8 +79,6 @@ import type { WorkflowData, WSMessage } from "../lib/types";
|
||||
|
||||
import { WorkflowStats } from "../components/workflows/WorkflowStats";
|
||||
import { OrchestrationDAG } from "../components/workflows/OrchestrationDAG";
|
||||
import { WorkflowPatterns } from "../components/workflows/WorkflowPatterns";
|
||||
import { ModelDelegationFlow } from "../components/workflows/ModelDelegationFlow";
|
||||
import { ErrorPropagationMap } from "../components/workflows/ErrorPropagationMap";
|
||||
import { SessionComplexityScatter } from "../components/workflows/SessionComplexityScatter";
|
||||
import { CompactionImpact } from "../components/workflows/CompactionImpact";
|
||||
@@ -264,41 +261,20 @@ export function Workflows() {
|
||||
)}
|
||||
</Section>
|
||||
|
||||
{/* Section 4: Workflow Patterns */}
|
||||
{/* Section 4: Error Propagation */}
|
||||
<Section
|
||||
number={4}
|
||||
title={t("patterns.title")}
|
||||
subtitle={t("patterns.subtitle")}
|
||||
infoKey="patterns"
|
||||
title={t("errorPropagation.title")}
|
||||
subtitle={t("errorPropagation.subtitle")}
|
||||
infoKey="errorPropagation"
|
||||
>
|
||||
<WorkflowPatterns data={data.patterns} onPatternClick={() => {}} />
|
||||
<ErrorPropagationMap data={data.errorPropagation} />
|
||||
</Section>
|
||||
|
||||
{/* Section 5 + 6: Two Column */}
|
||||
<div className="grid grid-cols-1 lg:grid-cols-2 gap-6">
|
||||
<Section
|
||||
number={5}
|
||||
title={t("modelDelegation.title")}
|
||||
subtitle={t("modelDelegation.subtitle")}
|
||||
infoKey="modelDelegation"
|
||||
>
|
||||
<ModelDelegationFlow data={data.modelDelegation} />
|
||||
</Section>
|
||||
|
||||
<Section
|
||||
number={6}
|
||||
title={t("errorPropagation.title")}
|
||||
subtitle={t("errorPropagation.subtitle")}
|
||||
infoKey="errorPropagation"
|
||||
>
|
||||
<ErrorPropagationMap data={data.errorPropagation} />
|
||||
</Section>
|
||||
</div>
|
||||
|
||||
{/* Section 7 + 8: Two Column */}
|
||||
<div className="grid grid-cols-1 lg:grid-cols-2 gap-6">
|
||||
<Section
|
||||
number={7}
|
||||
title={t("complexity.title")}
|
||||
subtitle={t("complexity.subtitle")}
|
||||
infoKey="complexity"
|
||||
@@ -307,7 +283,7 @@ export function Workflows() {
|
||||
</Section>
|
||||
|
||||
<Section
|
||||
number={8}
|
||||
number={6}
|
||||
title={t("compaction.title")}
|
||||
subtitle={t("compaction.subtitle")}
|
||||
infoKey="compaction"
|
||||
@@ -316,9 +292,9 @@ export function Workflows() {
|
||||
</Section>
|
||||
</div>
|
||||
|
||||
{/* Section 9: Session Drill-In */}
|
||||
{/* Section 7: Session Drill-In */}
|
||||
<Section
|
||||
number={9}
|
||||
number={7}
|
||||
title={t("drillIn.title")}
|
||||
subtitle={t("drillIn.subtitle")}
|
||||
infoKey="drillIn"
|
||||
|
||||
@@ -10808,7 +10808,7 @@ exports[`screen snapshots > Workflows 1`] = `
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
>
|
||||
Detected Workflow Patterns
|
||||
Error Propagation Map
|
||||
</h2>
|
||||
<button
|
||||
aria-expanded="false"
|
||||
@@ -10844,56 +10844,48 @@ exports[`screen snapshots > Workflows 1`] = `
|
||||
</div>
|
||||
<span
|
||||
class="hidden lg:block flex-shrink-0 max-w-[20rem] xl:max-w-sm truncate text-right text-[11px] text-fg-muted"
|
||||
title="Common agent orchestration sequences"
|
||||
title="Where errors cluster in agent hierarchy depth"
|
||||
>
|
||||
Common agent orchestration sequences
|
||||
Where errors cluster in agent hierarchy depth
|
||||
</span>
|
||||
</div>
|
||||
<div
|
||||
class="card p-4 flex-1"
|
||||
>
|
||||
<div
|
||||
class="card p-5"
|
||||
class="flex flex-col items-center justify-center py-16 gap-3"
|
||||
>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-secondary uppercase tracking-wider mb-4"
|
||||
>
|
||||
Workflow Patterns
|
||||
</h2>
|
||||
<div
|
||||
class="flex flex-col items-center justify-center py-12 text-center"
|
||||
class="w-12 h-12 rounded-full bg-status-success/10 border border-status-success/20 flex items-center justify-center"
|
||||
>
|
||||
<div
|
||||
class="w-10 h-10 rounded-xl bg-surface-4 flex items-center justify-center mb-3"
|
||||
<svg
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="#10b981"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
>
|
||||
<svg
|
||||
class="lucide lucide-zap w-5 h-5 text-fg-muted"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<path
|
||||
d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<p
|
||||
class="text-sm font-medium text-fg-secondary"
|
||||
>
|
||||
No patterns detected yet
|
||||
</p>
|
||||
<p
|
||||
class="text-xs text-fg-muted mt-1"
|
||||
>
|
||||
Patterns appear once multiple sessions share the same agent sequence.
|
||||
</p>
|
||||
<path
|
||||
d="M22 11.08V12a10 10 0 1 1-5.93-9.14"
|
||||
/>
|
||||
<polyline
|
||||
points="22 4 12 14.01 9 11.01"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<span
|
||||
class="text-sm text-status-success font-medium"
|
||||
>
|
||||
No errors recorded
|
||||
</span>
|
||||
<span
|
||||
class="text-xs text-fg-muted"
|
||||
>
|
||||
All sessions completed successfully
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -10914,198 +10906,6 @@ exports[`screen snapshots > Workflows 1`] = `
|
||||
>
|
||||
5
|
||||
</span>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
>
|
||||
Model Delegation Flow
|
||||
</h2>
|
||||
<button
|
||||
aria-expanded="false"
|
||||
aria-label="What this shows"
|
||||
class="flex items-center justify-center rounded-full p-0.5 -m-0.5 text-fg-muted hover:text-fg-secondary transition-colors focus:outline-none focus:ring-1 focus:ring-accent/40"
|
||||
type="button"
|
||||
>
|
||||
<svg
|
||||
class="lucide lucide-info w-3.5 h-3.5"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<circle
|
||||
cx="12"
|
||||
cy="12"
|
||||
r="10"
|
||||
/>
|
||||
<path
|
||||
d="M12 16v-4"
|
||||
/>
|
||||
<path
|
||||
d="M12 8h.01"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
<span
|
||||
class="hidden lg:block flex-shrink-0 max-w-[20rem] xl:max-w-sm truncate text-right text-[11px] text-fg-muted"
|
||||
title="How models route through agent hierarchies"
|
||||
>
|
||||
How models route through agent hierarchies
|
||||
</span>
|
||||
</div>
|
||||
<div
|
||||
class="card p-4 flex-1"
|
||||
>
|
||||
<div
|
||||
class="flex flex-col items-center justify-center py-16 gap-3 text-fg-muted"
|
||||
>
|
||||
<svg
|
||||
aria-hidden="true"
|
||||
fill="none"
|
||||
height="40"
|
||||
stroke="currentColor"
|
||||
stroke-width="1.5"
|
||||
viewBox="0 0 24 24"
|
||||
width="40"
|
||||
>
|
||||
<circle
|
||||
cx="12"
|
||||
cy="12"
|
||||
r="10"
|
||||
/>
|
||||
<path
|
||||
d="M12 8v4M12 16h.01"
|
||||
/>
|
||||
</svg>
|
||||
<span
|
||||
class="text-sm"
|
||||
>
|
||||
No model delegation data available
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="flex flex-col h-full"
|
||||
>
|
||||
<div
|
||||
class="flex items-center justify-between gap-4 mb-3"
|
||||
>
|
||||
<div
|
||||
class="flex items-center gap-2.5 min-w-0"
|
||||
>
|
||||
<span
|
||||
class="w-5 h-5 rounded-md bg-accent/15 text-accent text-[11px] font-bold flex items-center justify-center flex-shrink-0"
|
||||
>
|
||||
6
|
||||
</span>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
>
|
||||
Error Propagation Map
|
||||
</h2>
|
||||
<button
|
||||
aria-expanded="false"
|
||||
aria-label="What this shows"
|
||||
class="flex items-center justify-center rounded-full p-0.5 -m-0.5 text-fg-muted hover:text-fg-secondary transition-colors focus:outline-none focus:ring-1 focus:ring-accent/40"
|
||||
type="button"
|
||||
>
|
||||
<svg
|
||||
class="lucide lucide-info w-3.5 h-3.5"
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="currentColor"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<circle
|
||||
cx="12"
|
||||
cy="12"
|
||||
r="10"
|
||||
/>
|
||||
<path
|
||||
d="M12 16v-4"
|
||||
/>
|
||||
<path
|
||||
d="M12 8h.01"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
<span
|
||||
class="hidden lg:block flex-shrink-0 max-w-[20rem] xl:max-w-sm truncate text-right text-[11px] text-fg-muted"
|
||||
title="Where errors cluster in agent hierarchy depth"
|
||||
>
|
||||
Where errors cluster in agent hierarchy depth
|
||||
</span>
|
||||
</div>
|
||||
<div
|
||||
class="card p-4 flex-1"
|
||||
>
|
||||
<div
|
||||
class="flex flex-col items-center justify-center py-16 gap-3"
|
||||
>
|
||||
<div
|
||||
class="w-12 h-12 rounded-full bg-status-success/10 border border-status-success/20 flex items-center justify-center"
|
||||
>
|
||||
<svg
|
||||
fill="none"
|
||||
height="24"
|
||||
stroke="#10b981"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
viewBox="0 0 24 24"
|
||||
width="24"
|
||||
>
|
||||
<path
|
||||
d="M22 11.08V12a10 10 0 1 1-5.93-9.14"
|
||||
/>
|
||||
<polyline
|
||||
points="22 4 12 14.01 9 11.01"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
<span
|
||||
class="text-sm text-status-success font-medium"
|
||||
>
|
||||
No errors recorded
|
||||
</span>
|
||||
<span
|
||||
class="text-xs text-fg-muted"
|
||||
>
|
||||
All sessions completed successfully
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="grid grid-cols-1 lg:grid-cols-2 gap-6"
|
||||
>
|
||||
<div
|
||||
class="flex flex-col h-full"
|
||||
>
|
||||
<div
|
||||
class="flex items-center justify-between gap-4 mb-3"
|
||||
>
|
||||
<div
|
||||
class="flex items-center gap-2.5 min-w-0"
|
||||
>
|
||||
<span
|
||||
class="w-5 h-5 rounded-md bg-accent/15 text-accent text-[11px] font-bold flex items-center justify-center flex-shrink-0"
|
||||
>
|
||||
7
|
||||
</span>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
>
|
||||
@@ -11208,7 +11008,7 @@ exports[`screen snapshots > Workflows 1`] = `
|
||||
<span
|
||||
class="w-5 h-5 rounded-md bg-accent/15 text-accent text-[11px] font-bold flex items-center justify-center flex-shrink-0"
|
||||
>
|
||||
8
|
||||
6
|
||||
</span>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
@@ -11303,7 +11103,7 @@ exports[`screen snapshots > Workflows 1`] = `
|
||||
<span
|
||||
class="w-5 h-5 rounded-md bg-accent/15 text-accent text-[11px] font-bold flex items-center justify-center flex-shrink-0"
|
||||
>
|
||||
9
|
||||
7
|
||||
</span>
|
||||
<h2
|
||||
class="text-sm font-semibold text-fg-primary"
|
||||
|
||||
Reference in New Issue
Block a user