diff --git a/packages/console/src/components/Executions/contextProvider/NodeExecutionDetails/index.tsx b/packages/console/src/components/Executions/contextProvider/NodeExecutionDetails/index.tsx index 427ae987e..63497f8c1 100644 --- a/packages/console/src/components/Executions/contextProvider/NodeExecutionDetails/index.tsx +++ b/packages/console/src/components/Executions/contextProvider/NodeExecutionDetails/index.tsx @@ -96,12 +96,12 @@ export const NodeExecutionDetailsContextProvider = (props: ProviderProps) => { name, version, }; - const workflow = await fetchWorkflow(queryClient, workflowId); - if (!workflow) { + const result = await fetchWorkflow(queryClient, workflowId); + if (!result) { resetState(); return; } - + const workflow = JSON.parse(JSON.stringify(result)); const tree = createExecutionDetails(workflow); if (isCurrent) { setClosure(workflow.closure?.compiledWorkflow ?? null); diff --git a/packages/console/src/components/Workflow/workflowQueries.ts b/packages/console/src/components/Workflow/workflowQueries.ts index 32ba06ae8..1fff7b10d 100644 --- a/packages/console/src/components/Workflow/workflowQueries.ts +++ b/packages/console/src/components/Workflow/workflowQueries.ts @@ -23,6 +23,9 @@ export function makeWorkflowQuery( return workflow; }, + // `Workflow` objects (individual versions) are immutable and safe to + // cache indefinitely once retrieved in full + staleTime: Infinity, }; }