feat(validator): detect broken/malformed workflow connections (#620)

Add comprehensive connection validation: unknown output keys with fix
suggestions, invalid type field detection, output/input index bounds
checking, and BFS-based trigger reachability analysis replacing simple
orphan detection.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
czlonkowski
2026-03-07 23:18:49 +01:00
parent 0998e5486e
commit bc1c00cc2e
9 changed files with 1250 additions and 171 deletions

View File

@@ -21,17 +21,7 @@ interface WorkflowNode {
}
interface WorkflowConnection {
[sourceNode: string]: {
main?: Array<Array<{
node: string;
type: string;
index: number;
}>>;
error?: Array<Array<{
node: string;
type: string;
index: number;
}>>;
ai_tool?: Array<Array<{
[outputType: string]: Array<Array<{
node: string;
type: string;
index: number;
@@ -94,6 +84,10 @@ export declare class WorkflowValidator {
private validateErrorOutputConfiguration;
private validateAIToolConnection;
private validateAIToolSource;
private validateOutputIndexBounds;
private validateInputIndexBounds;
private flagOrphanedNodes;
private validateTriggerReachability;
private hasCycle;
private validateExpressions;
private countExpressionsInObject;