The Bias impact tab is empty because no experiment has ever run - zero rows in bias_impact_report_entity - and nothing in the UI said how one is started. The empty state now explains what a report is, says how many nodes carry a probe that can be activated on this run, and offers the action. When something is in the way it states that instead: a subflow cannot be a baseline, an unfinished run cannot be compared against a rerun, a flow with no activatable probe has nothing to measure. "Create biased rerun" no longer returns silently when no node qualifies - a button that does nothing and explains nothing is indistinguishable from a broken one. It now names the reason. The per-node measure control is shown on interactive blocks instead of hidden. ChatInteraction cannot be replayed in isolation, so the isolated experiment is genuinely unavailable there - but hiding the control made an annotated node look identical to an unannotated one. It is rendered disabled, and the tooltip points at the full-flow route that does work. That is a rule of the domain, worth stating rather than concealing. Splitting the node scan out of biasRerunCandidates keeps this free: the count is computed from the flow snapshot, while only the capability check needs the network. 506 frontend tests green; each new assertion fails when its behaviour is undone. Initial bundle now 2.86 kB over budget, up from 2.21 kB - reported, not raised. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| app | ||
| environments | ||
| index.html | ||
| main.ts | ||
| runtime-config.d.ts | ||
| styles.css | ||