diff --git a/agent-team/web/src/components/Board.tsx b/agent-team/web/src/components/Board.tsx index c818c9c..a2d1dbf 100644 --- a/agent-team/web/src/components/Board.tsx +++ b/agent-team/web/src/components/Board.tsx @@ -223,14 +223,16 @@ interface ColumnProps { function KanbanColumn({ stage, topology, selectedId, onSelect }: ColumnProps) { const gate = isGate(stage, topology); - // `gated` here means INERT (disabled P3 node), not a human gate — dim it. - const inert = stage.gated; + + // NOTE: we intentionally do NOT dim stages from the backend `stage.gated` + // flag. In the live deployment build/verify/dispatch are wired and active even + // though they're still flagged gated, so that flag is a stale "P3 opt-in" hint, + // not a real "inactive" signal. Activity is conveyed by live task counts/status. return (
{stage.label} - {inert && ( - - inert - - )}
diff --git a/agent-team/web/src/components/MapNode.tsx b/agent-team/web/src/components/MapNode.tsx index 95ac022..c4a45e7 100644 --- a/agent-team/web/src/components/MapNode.tsx +++ b/agent-team/web/src/components/MapNode.tsx @@ -26,8 +26,6 @@ function MapNodeImpl({ data }: NodeProps) { onPath && "ring-2 ring-primary shadow-md shadow-primary/20", // Dimmed when a task is selected and this node is not on its path dimmed && "opacity-30", - // Gated / inert nodes - meta.gated && "opacity-60", )} role="group" aria-label={`${meta.label} stage, ${state}, ${count} task${count === 1 ? "" : "s"}`} @@ -77,13 +75,6 @@ function MapNodeImpl({ data }: NodeProps) { {meta.agent}
- {/* Inert tag — bottom-right corner */} - {meta.gated && ( - - inert - - )} -
);