fix interactive edge (#3659)

* fix interactive edge

* fix
This commit is contained in:
heheer
2025-01-25 14:12:12 +08:00
committed by archer
parent 7407912bb8
commit b79d7e4015

View File

@@ -207,7 +207,23 @@ export const checkNodeRunStatus = ({
currentNode: node currentNode: node
}); });
// check skip(其中一组边,全 skip // check active(其中一组边,至少有一个 active且没有 waiting 即可运行
if (
commonEdges.length > 0 &&
commonEdges.some((item) => item.status === 'active') &&
commonEdges.every((item) => item.status !== 'waiting')
) {
return 'run';
}
if (
recursiveEdges.length > 0 &&
recursiveEdges.some((item) => item.status === 'active') &&
recursiveEdges.every((item) => item.status !== 'waiting')
) {
return 'run';
}
// check skip其中一组边全是 skiped 则跳过运行)
if (commonEdges.length > 0 && commonEdges.every((item) => item.status === 'skipped')) { if (commonEdges.length > 0 && commonEdges.every((item) => item.status === 'skipped')) {
return 'skip'; return 'skip';
} }
@@ -215,14 +231,6 @@ export const checkNodeRunStatus = ({
return 'skip'; return 'skip';
} }
// check active有一类边不全是 wait 即可运行)
if (commonEdges.length > 0 && commonEdges.every((item) => item.status !== 'waiting')) {
return 'run';
}
if (recursiveEdges.length > 0 && recursiveEdges.every((item) => item.status !== 'waiting')) {
return 'run';
}
return 'wait'; return 'wait';
}; };