diff --git a/skyvern-frontend/src/routes/tasks/detail/TaskDetails.tsx b/skyvern-frontend/src/routes/tasks/detail/TaskDetails.tsx index d4ece11b..48986f4e 100644 --- a/skyvern-frontend/src/routes/tasks/detail/TaskDetails.tsx +++ b/skyvern-frontend/src/routes/tasks/detail/TaskDetails.tsx @@ -97,6 +97,18 @@ function TaskDetails() { queryClient.invalidateQueries({ queryKey: ["tasks"], }); + if (task?.workflow_run_id) { + queryClient.invalidateQueries({ + queryKey: ["workflowRun", task.workflow_run_id], + }); + queryClient.invalidateQueries({ + queryKey: [ + "workflowRun", + workflow?.workflow_permanent_id, + task.workflow_run_id, + ], + }); + } toast({ variant: "success", title: "Task Canceled", diff --git a/skyvern-frontend/src/routes/workflows/WorkflowRun.tsx b/skyvern-frontend/src/routes/workflows/WorkflowRun.tsx index ae97457c..9e3e3cd4 100644 --- a/skyvern-frontend/src/routes/workflows/WorkflowRun.tsx +++ b/skyvern-frontend/src/routes/workflows/WorkflowRun.tsx @@ -97,6 +97,18 @@ function WorkflowRun() { return false; }, placeholderData: keepPreviousData, + refetchOnMount: (query) => { + if (!query.state.data) { + return false; + } + return statusIsRunningOrQueued(query.state.data); + }, + refetchOnWindowFocus: (query) => { + if (!query.state.data) { + return false; + } + return statusIsRunningOrQueued(query.state.data); + }, }); const { data: workflowTasks, isLoading: workflowTasksIsLoading } = useQuery<