diff --git a/frontend/src/components/Flow/FlowNode.tsx b/frontend/src/components/Flow/FlowNode.tsx index 4c358b4..4c62166 100644 --- a/frontend/src/components/Flow/FlowNode.tsx +++ b/frontend/src/components/Flow/FlowNode.tsx @@ -152,6 +152,7 @@ function FlowNodeComponent({ data, selected }: NodeProps) { .split("\n") const problem = [...new Set(lines)].join("\n") const status = problem ? "error" : live?.status + const running = status === "running" const style = STATUS_STYLES[status as keyof typeof STATUS_STYLES] return ( @@ -160,8 +161,15 @@ function FlowNodeComponent({ data, selected }: NodeProps) {
{/* Remounting on each emit is what restarts the animation, so this is gated on the pulse rather than on the count: a node mounting with a - count already in the store would otherwise play it once for free. */} - {firing ? : null} + count already in the store would otherwise play it once for free. + A run is not one shot and has no length known in advance, so while one + is on the ring laps under a key of its own until the node stops. */} + {running || firing ? ( + + ) : null}
- {status === "running" ? ( + {running ? (