From ff216aa5b8042eb42cd0d3b43fb2136d880b3640 Mon Sep 17 00:00:00 2001 From: shrimbly Date: Mon, 13 Apr 2026 07:58:05 +1200 Subject: [PATCH] fix: filter orphaned edges referencing non-existent nodes on load Co-Authored-By: Claude Sonnet 4.5 --- src/store/workflowStore.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/store/workflowStore.ts b/src/store/workflowStore.ts index 9f95e051..63f00de4 100644 --- a/src/store/workflowStore.ts +++ b/src/store/workflowStore.ts @@ -2145,6 +2145,12 @@ const workflowStoreImpl: StateCreator = (set, get) => ({ workflow.edges = Array.from(edgeById.values()); } + // Filter orphaned edges referencing non-existent nodes + const nodeIds = new Set(workflow.nodes.map((n) => n.id)); + workflow.edges = workflow.edges.filter( + (edge) => nodeIds.has(edge.source) && nodeIds.has(edge.target) + ); + // Look up saved config from localStorage (only if workflow has an ID) const configs = loadSaveConfigs(); const savedConfig = workflow.id ? configs[workflow.id] : null;