From ccfb2590801203d27843dd7fc654e8bf8a7f1965 Mon Sep 17 00:00:00 2001 From: Diego Imbert Date: Wed, 30 Sep 2026 20:10:25 +0200 Subject: [PATCH] fix: no trigger delete for flow-built assets; Multiple triggers chip shows the one being edited Co-Authored-By: Claude Opus 5.5 (1M context) --- .../assets/AssetGraph/AssetGraphCanvas.svelte | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/frontend/src/lib/components/assets/AssetGraph/AssetGraphCanvas.svelte b/frontend/src/lib/components/assets/AssetGraph/AssetGraphCanvas.svelte index f66b35ab23..8a06ae70f0 100644 --- a/frontend/src/lib/components/assets/AssetGraph/AssetGraphCanvas.svelte +++ b/frontend/src/lib/components/assets/AssetGraph/AssetGraphCanvas.svelte @@ -1502,7 +1502,10 @@ // Its scripts' own triggers: a row that starts only them, which // webhooks and data uploads (no row) and missing ones are not. triggerDeletes: scriptIds.flatMap((id) => { - const scriptPath = runnables.get(id)?.data?.path + const runnable = runnables.get(id)?.data + // A flow is not deleted from here, and neither are its triggers. + if (runnable?.runnable_kind !== 'script') return [] + const scriptPath = runnable.path return m.edges .filter((e) => e.kind === 'trigger-native' && e.target === id) .map((e) => m.nodes.find((n) => n.id === e.source)?.data) @@ -1740,7 +1743,11 @@ ...up, selected: up.scripts.some( (sc: { runnableId: string }) => sc.runnableId === selectedId - ) + ), + triggers: (up.triggers ?? []).map((t: { nodeId?: string }) => ({ + ...t, + selected: !!t.nodeId && t.nodeId === activeTriggerId + })) } } : up?.runnableId !== undefined