diff --git a/frontend/apps/artcraft/app/src/components/signaled/TopBar/TaskQueue.tsx b/frontend/apps/artcraft/app/src/components/signaled/TopBar/TaskQueue.tsx
index ee6301fbec..46c0336c67 100644
--- a/frontend/apps/artcraft/app/src/components/signaled/TopBar/TaskQueue.tsx
+++ b/frontend/apps/artcraft/app/src/components/signaled/TopBar/TaskQueue.tsx
@@ -79,6 +79,7 @@ type FailedTask = {
failedAt?: Date;
status: string;
failureReason?: string;
+ failureMessage?: string;
};
const formatTimeLeft = (ms: number): string => {
@@ -297,13 +298,38 @@ const FailedCard = ({
{task.subtitle}
)}
-
- {statusLabel}
+
+
+ {statusLabel}
+
+ {task.failureReason && (
+
+
+ {task.failureReason}
+
+
+ )}
- {task.failureReason && (
-
- {task.failureReason}
-
+ {task.failureMessage && (
+
+
+ {task.failureMessage}
+
+
)}
{onDismiss && (
@@ -603,17 +629,20 @@ export const TaskQueue = () => {
const parts = formatTitleParts(t);
const fr = t.failure_reason;
const failureReason = fr
- ? fr.failure_message ||
- FAILURE_REASON_LABEL[fr.failure_type] ||
- undefined
+ ? FAILURE_REASON_LABEL[fr.failure_type] || undefined
: undefined;
+ const failureMessage =
+ fr?.failure_message && fr.failure_type !== "unknown"
+ ? fr.failure_message
+ : undefined;
return {
id: t.id,
title: parts.title || "Task",
subtitle: parts.subtitle,
failedAt: t.completed_at || t.updated_at,
status: t.task_status,
- failureReason,
+ failureReason: failureReason || fr?.failure_message || undefined,
+ failureMessage,
};
});