From 880496db0b01a76e6cb84274a7b16159d7dc8147 Mon Sep 17 00:00:00 2001 From: Joel Date: Wed, 25 Dec 2024 14:12:38 +0800 Subject: [PATCH 1/2] chore: add more tests --- .../workflow/run/utils/format-log/iteration/index.spec.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/web/app/components/workflow/run/utils/format-log/iteration/index.spec.ts b/web/app/components/workflow/run/utils/format-log/iteration/index.spec.ts index 4bcbcf53e8..245263ef4a 100644 --- a/web/app/components/workflow/run/utils/format-log/iteration/index.spec.ts +++ b/web/app/components/workflow/run/utils/format-log/iteration/index.spec.ts @@ -2,8 +2,9 @@ import format from '.' import { simpleIterationData } from './data' describe('format api data to tracing panel data', () => { - // test('result should have no nodes in iteration node', () => { - // } + test('result should have no nodes in iteration node', () => { + expect(format(simpleIterationData.in as any).find(item => !!(item as any).execution_metadata?.iteration_id)).toBeUndefined() + }) test('iteration should put nodes in details', () => { expect(format(simpleIterationData.in as any)).toEqual(simpleIterationData.output) }) From 8c662e04e0eb94fd9ab79f67115493691cb6a41b Mon Sep 17 00:00:00 2001 From: Joel Date: Wed, 25 Dec 2024 14:20:39 +0800 Subject: [PATCH 2/2] feat: add iteration error --- .../workflow/run/utils/format-log/iteration/index.ts | 5 +++++ .../workflow/run/utils/format-log/retry/index.ts | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/web/app/components/workflow/run/utils/format-log/iteration/index.ts b/web/app/components/workflow/run/utils/format-log/iteration/index.ts index 731f1ca3f5..7583f40b1a 100644 --- a/web/app/components/workflow/run/utils/format-log/iteration/index.ts +++ b/web/app/components/workflow/run/utils/format-log/iteration/index.ts @@ -31,6 +31,11 @@ const format = (list: NodeTracing[]): NodeTracing[] => { .map((item) => { if (item.node_type === BlockEnum.Iteration) { const childrenNodes = list.filter(child => child.execution_metadata?.iteration_id === item.node_id) + const error = childrenNodes.find(child => child.status === 'failed') + if (error) { + item.status = 'failed' + item.error = error.error + } return addChildrenToIterationNode(item, childrenNodes) } diff --git a/web/app/components/workflow/run/utils/format-log/retry/index.ts b/web/app/components/workflow/run/utils/format-log/retry/index.ts index e69de29bb2..37e68099d6 100644 --- a/web/app/components/workflow/run/utils/format-log/retry/index.ts +++ b/web/app/components/workflow/run/utils/format-log/retry/index.ts @@ -0,0 +1,7 @@ +import type { NodeTracing } from '@/types/workflow' + +const format = (list: NodeTracing[]): NodeTracing[] => { + return list +} + +export default format