* fix(frontend): refetch pipeline dispatch edges on live runs so cascades group
The activity panel groups runs into cascades by connected components of the
dispatch-edge graph, but edges came only from the one-shot history preload
(refetched on workspace/folder/days change). dispatch_event rows are written
server-side when a producer completes, so a run launched live had its producer
and freshly-dispatched children appear as live poll events with no connecting
edge — they rendered as separate ungrouped rows instead of one cascade.
Add an edges-only refetch and trigger it whenever the live poll's event id-set
changes, so live cascades converge to grouped like historic/scheduled ones.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* fix(frontend): address review nits on live dispatch-edge refetch
- Sequence same-scope edges-only refetches with a monotonic edgeSeq so a
slower earlier response can't overwrite a newer one mid-cascade (the gen
counter only guards scope changes).
- Condense the duplicated edge-refetch rationale: keep the canonical "why"
in loadEdges, trim the page effect comment to its trigger/loop invariant.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>