diff --git a/webui/components/modals/scheduler/scheduler-store.js b/webui/components/modals/scheduler/scheduler-store.js index cc654bf028..9fe4ed6af6 100644 --- a/webui/components/modals/scheduler/scheduler-store.js +++ b/webui/components/modals/scheduler/scheduler-store.js @@ -944,7 +944,7 @@ const schedulerStoreModel = { // Smart merge: preserve object references to prevent UI flickering const taskMap = new Map(this.tasks.map((t) => [t.uuid, t])); this.tasks = sidebarTasks.map((sidebarTask) => { - const taskId = sidebarTask.uuid || sidebarTask.id; + const taskId = sidebarTask.uuid || sidebarTask.id || sidebarTask.context_id; const existing = taskMap.get(taskId); if (existing) { // Update existing object in-place if different diff --git a/webui/components/sidebar/tasks/tasks-store.js b/webui/components/sidebar/tasks/tasks-store.js index eb44a67de1..9f61f69fcb 100644 --- a/webui/components/sidebar/tasks/tasks-store.js +++ b/webui/components/sidebar/tasks/tasks-store.js @@ -36,12 +36,12 @@ const model = { // Returns true if a task with the given id exists in the current list contains(taskId) { - return Array.isArray(this.tasks) && this.tasks.some((t) => t?.id === taskId); + return Array.isArray(this.tasks) && this.tasks.some((t) => t?.uuid === taskId); }, // Convenience: id of the first task in the current list (or empty string) firstId() { - return (Array.isArray(this.tasks) && this.tasks[0]?.id) || ""; + return (Array.isArray(this.tasks) && this.tasks[0]?.uuid) || ""; }, // Action methods for task management diff --git a/webui/css/modals.css b/webui/css/modals.css index a86229629d..0c41b0652a 100644 --- a/webui/css/modals.css +++ b/webui/css/modals.css @@ -78,7 +78,7 @@ some classes like modal-header are shared between the old and the new system */ /* Modal Header */ .modal-header { display: grid; - grid-template-columns: 40fr 0.5fr; + grid-template-columns: 1fr auto; align-items: center; justify-content: space-between; padding: 0.5rem 1.5rem 0.5rem 2rem;