From beb85edfe2f8f3ca38b581a74aaee549cee60fdd Mon Sep 17 00:00:00 2001 From: Devin Date: Wed, 17 Jun 2026 14:46:09 -0400 Subject: [PATCH] Show automation run error detail --- .../automations/detail/activity-log-item.tsx | 7 ++- .../detail/run-logs-modal.test.tsx | 57 +++++++++++++++++++ .../automations/detail/run-logs-modal.tsx | 19 +++++++ src/i18n/translation.json | 17 ++++++ 4 files changed, 98 insertions(+), 2 deletions(-) create mode 100644 src/components/features/automations/detail/run-logs-modal.test.tsx diff --git a/src/components/features/automations/detail/activity-log-item.tsx b/src/components/features/automations/detail/activity-log-item.tsx index 715e31ed4..f01c1d5c6 100644 --- a/src/components/features/automations/detail/activity-log-item.tsx +++ b/src/components/features/automations/detail/activity-log-item.tsx @@ -37,6 +37,8 @@ export function ActivityLogItem({ run }: ActivityLogItemProps) { const { t, i18n } = useTranslation("openhands"); const hasConversation = !!run.conversation_id; const hasBashCommand = !!run.bash_command_id; + const hasErrorDetail = !!run.error_detail?.trim(); + const hasDebugInfo = hasBashCommand || hasErrorDetail; // Only surface "Conversation not created" when the run has reached a // terminal status without a conversation — i.e. the conversation truly // will not be created (e.g. sandbox provisioning failed). While @@ -73,7 +75,7 @@ export function ActivityLogItem({ run }: ActivityLogItemProps) { setLogsOpen(true); }; - const logsButton = hasBashCommand ? ( + const logsButton = hasDebugInfo ? (