fix(frontend): keep the persisted flow when the header list refreshes (#14659)
The app header polls GET /flows/?get_all=true&header_flows=true, whose rows are FlowHeader objects: they carry no updated_at at all, and data is nulled for anything that is not a component. setFlows took the matching row wholesale as flowsManagerStore.currentFlow, which is the *persisted* flow the editor diffs the canvas against. Every flow open triggers that refetch (useGetFlow's onSettled refetches the header query), so it lands right after applyFlowToCanvas has stored the full flow — replacing it with a header. The exit dialog reads updated_at for its "Last saved" line and so reported "Last saved: Never" for a flow that was persisted, including after a full page reload. Merge instead: apply the fields the refreshed row carries, keep data and updated_at when it does not.
E
Eric Hare committed
9e61d2cb67c3cf753f41b3a5f7e8c000085f7169
Parent: c5bf996
Committed by GitHub <noreply@github.com>
on 8/19/2026, 7:16:43 PM