agentic-qe 2.5.6 → 2.5.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/n8n/n8n-base-agent.md +376 -0
- package/.claude/agents/n8n/n8n-bdd-scenario-tester.md +613 -0
- package/.claude/agents/n8n/n8n-chaos-tester.md +654 -0
- package/.claude/agents/n8n/n8n-ci-orchestrator.md +850 -0
- package/.claude/agents/n8n/n8n-compliance-validator.md +685 -0
- package/.claude/agents/n8n/n8n-expression-validator.md +560 -0
- package/.claude/agents/n8n/n8n-integration-test.md +602 -0
- package/.claude/agents/n8n/n8n-monitoring-validator.md +589 -0
- package/.claude/agents/n8n/n8n-node-validator.md +455 -0
- package/.claude/agents/n8n/n8n-performance-tester.md +630 -0
- package/.claude/agents/n8n/n8n-security-auditor.md +786 -0
- package/.claude/agents/n8n/n8n-trigger-test.md +500 -0
- package/.claude/agents/n8n/n8n-unit-tester.md +633 -0
- package/.claude/agents/n8n/n8n-version-comparator.md +567 -0
- package/.claude/agents/n8n/n8n-workflow-executor.md +392 -0
- package/.claude/skills/n8n-expression-testing/SKILL.md +434 -0
- package/.claude/skills/n8n-integration-testing-patterns/SKILL.md +540 -0
- package/.claude/skills/n8n-security-testing/SKILL.md +599 -0
- package/.claude/skills/n8n-trigger-testing-strategies/SKILL.md +541 -0
- package/.claude/skills/n8n-workflow-testing-fundamentals/SKILL.md +447 -0
- package/CHANGELOG.md +127 -0
- package/README.md +7 -4
- package/dist/agents/BaseAgent.d.ts +142 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +372 -2
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +5 -0
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +38 -0
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/index.d.ts +1 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/n8n/N8nAPIClient.d.ts +121 -0
- package/dist/agents/n8n/N8nAPIClient.d.ts.map +1 -0
- package/dist/agents/n8n/N8nAPIClient.js +367 -0
- package/dist/agents/n8n/N8nAPIClient.js.map +1 -0
- package/dist/agents/n8n/N8nAuditPersistence.d.ts +120 -0
- package/dist/agents/n8n/N8nAuditPersistence.d.ts.map +1 -0
- package/dist/agents/n8n/N8nAuditPersistence.js +473 -0
- package/dist/agents/n8n/N8nAuditPersistence.js.map +1 -0
- package/dist/agents/n8n/N8nBDDScenarioTesterAgent.d.ts +159 -0
- package/dist/agents/n8n/N8nBDDScenarioTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nBDDScenarioTesterAgent.js +697 -0
- package/dist/agents/n8n/N8nBDDScenarioTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts +126 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nBaseAgent.js +446 -0
- package/dist/agents/n8n/N8nBaseAgent.js.map +1 -0
- package/dist/agents/n8n/N8nCIOrchestratorAgent.d.ts +164 -0
- package/dist/agents/n8n/N8nCIOrchestratorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nCIOrchestratorAgent.js +610 -0
- package/dist/agents/n8n/N8nCIOrchestratorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nChaosTesterAgent.d.ts +205 -0
- package/dist/agents/n8n/N8nChaosTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nChaosTesterAgent.js +729 -0
- package/dist/agents/n8n/N8nChaosTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nComplianceValidatorAgent.d.ts +228 -0
- package/dist/agents/n8n/N8nComplianceValidatorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nComplianceValidatorAgent.js +986 -0
- package/dist/agents/n8n/N8nComplianceValidatorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nContractTesterAgent.d.ts +213 -0
- package/dist/agents/n8n/N8nContractTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nContractTesterAgent.js +989 -0
- package/dist/agents/n8n/N8nContractTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nExpressionValidatorAgent.d.ts +99 -0
- package/dist/agents/n8n/N8nExpressionValidatorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nExpressionValidatorAgent.js +632 -0
- package/dist/agents/n8n/N8nExpressionValidatorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nFailureModeTesterAgent.d.ts +238 -0
- package/dist/agents/n8n/N8nFailureModeTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nFailureModeTesterAgent.js +956 -0
- package/dist/agents/n8n/N8nFailureModeTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nIdempotencyTesterAgent.d.ts +242 -0
- package/dist/agents/n8n/N8nIdempotencyTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nIdempotencyTesterAgent.js +992 -0
- package/dist/agents/n8n/N8nIdempotencyTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nIntegrationTestAgent.d.ts +104 -0
- package/dist/agents/n8n/N8nIntegrationTestAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nIntegrationTestAgent.js +653 -0
- package/dist/agents/n8n/N8nIntegrationTestAgent.js.map +1 -0
- package/dist/agents/n8n/N8nMonitoringValidatorAgent.d.ts +210 -0
- package/dist/agents/n8n/N8nMonitoringValidatorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nMonitoringValidatorAgent.js +669 -0
- package/dist/agents/n8n/N8nMonitoringValidatorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nNodeValidatorAgent.d.ts +142 -0
- package/dist/agents/n8n/N8nNodeValidatorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nNodeValidatorAgent.js +1090 -0
- package/dist/agents/n8n/N8nNodeValidatorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nPerformanceTesterAgent.d.ts +198 -0
- package/dist/agents/n8n/N8nPerformanceTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nPerformanceTesterAgent.js +653 -0
- package/dist/agents/n8n/N8nPerformanceTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nReplayabilityTesterAgent.d.ts +245 -0
- package/dist/agents/n8n/N8nReplayabilityTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nReplayabilityTesterAgent.js +952 -0
- package/dist/agents/n8n/N8nReplayabilityTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nSecretsHygieneAuditorAgent.d.ts +325 -0
- package/dist/agents/n8n/N8nSecretsHygieneAuditorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nSecretsHygieneAuditorAgent.js +1187 -0
- package/dist/agents/n8n/N8nSecretsHygieneAuditorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nSecurityAuditorAgent.d.ts +91 -0
- package/dist/agents/n8n/N8nSecurityAuditorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nSecurityAuditorAgent.js +825 -0
- package/dist/agents/n8n/N8nSecurityAuditorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nTestHarness.d.ts +131 -0
- package/dist/agents/n8n/N8nTestHarness.d.ts.map +1 -0
- package/dist/agents/n8n/N8nTestHarness.js +456 -0
- package/dist/agents/n8n/N8nTestHarness.js.map +1 -0
- package/dist/agents/n8n/N8nTriggerTestAgent.d.ts +119 -0
- package/dist/agents/n8n/N8nTriggerTestAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nTriggerTestAgent.js +652 -0
- package/dist/agents/n8n/N8nTriggerTestAgent.js.map +1 -0
- package/dist/agents/n8n/N8nUnitTesterAgent.d.ts +130 -0
- package/dist/agents/n8n/N8nUnitTesterAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nUnitTesterAgent.js +522 -0
- package/dist/agents/n8n/N8nUnitTesterAgent.js.map +1 -0
- package/dist/agents/n8n/N8nVersionComparatorAgent.d.ts +201 -0
- package/dist/agents/n8n/N8nVersionComparatorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nVersionComparatorAgent.js +645 -0
- package/dist/agents/n8n/N8nVersionComparatorAgent.js.map +1 -0
- package/dist/agents/n8n/N8nWorkflowExecutorAgent.d.ts +120 -0
- package/dist/agents/n8n/N8nWorkflowExecutorAgent.d.ts.map +1 -0
- package/dist/agents/n8n/N8nWorkflowExecutorAgent.js +347 -0
- package/dist/agents/n8n/N8nWorkflowExecutorAgent.js.map +1 -0
- package/dist/agents/n8n/index.d.ts +119 -0
- package/dist/agents/n8n/index.d.ts.map +1 -0
- package/dist/agents/n8n/index.js +298 -0
- package/dist/agents/n8n/index.js.map +1 -0
- package/dist/agents/n8n/types.d.ts +486 -0
- package/dist/agents/n8n/types.d.ts.map +1 -0
- package/dist/agents/n8n/types.js +8 -0
- package/dist/agents/n8n/types.js.map +1 -0
- package/dist/cli/init/agents.d.ts.map +1 -1
- package/dist/cli/init/agents.js +29 -0
- package/dist/cli/init/agents.js.map +1 -1
- package/dist/cli/init/skills.d.ts.map +1 -1
- package/dist/cli/init/skills.js +7 -1
- package/dist/cli/init/skills.js.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/core/memory/RuVectorPatternStore.d.ts +90 -0
- package/dist/core/memory/RuVectorPatternStore.d.ts.map +1 -1
- package/dist/core/memory/RuVectorPatternStore.js +209 -0
- package/dist/core/memory/RuVectorPatternStore.js.map +1 -1
- package/dist/learning/FederatedManager.d.ts +232 -0
- package/dist/learning/FederatedManager.d.ts.map +1 -0
- package/dist/learning/FederatedManager.js +489 -0
- package/dist/learning/FederatedManager.js.map +1 -0
- package/dist/learning/HNSWPatternAdapter.d.ts +117 -0
- package/dist/learning/HNSWPatternAdapter.d.ts.map +1 -0
- package/dist/learning/HNSWPatternAdapter.js +262 -0
- package/dist/learning/HNSWPatternAdapter.js.map +1 -0
- package/dist/learning/LearningEngine.d.ts +27 -0
- package/dist/learning/LearningEngine.d.ts.map +1 -1
- package/dist/learning/LearningEngine.js +75 -1
- package/dist/learning/LearningEngine.js.map +1 -1
- package/dist/learning/PatternCurator.d.ts +217 -0
- package/dist/learning/PatternCurator.d.ts.map +1 -0
- package/dist/learning/PatternCurator.js +393 -0
- package/dist/learning/PatternCurator.js.map +1 -0
- package/dist/learning/index.d.ts +6 -0
- package/dist/learning/index.d.ts.map +1 -1
- package/dist/learning/index.js +16 -1
- package/dist/learning/index.js.map +1 -1
- package/dist/learning/types.d.ts +4 -0
- package/dist/learning/types.d.ts.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/memory/HNSWPatternStore.d.ts +176 -0
- package/dist/memory/HNSWPatternStore.d.ts.map +1 -0
- package/dist/memory/HNSWPatternStore.js +392 -0
- package/dist/memory/HNSWPatternStore.js.map +1 -0
- package/dist/memory/index.d.ts +8 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +13 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/providers/HybridRouter.d.ts +85 -4
- package/dist/providers/HybridRouter.d.ts.map +1 -1
- package/dist/providers/HybridRouter.js +332 -10
- package/dist/providers/HybridRouter.js.map +1 -1
- package/dist/providers/LLMBaselineTracker.d.ts +120 -0
- package/dist/providers/LLMBaselineTracker.d.ts.map +1 -0
- package/dist/providers/LLMBaselineTracker.js +305 -0
- package/dist/providers/LLMBaselineTracker.js.map +1 -0
- package/dist/providers/OpenRouterProvider.d.ts +26 -0
- package/dist/providers/OpenRouterProvider.d.ts.map +1 -1
- package/dist/providers/OpenRouterProvider.js +75 -6
- package/dist/providers/OpenRouterProvider.js.map +1 -1
- package/dist/providers/RuVectorClient.d.ts +259 -0
- package/dist/providers/RuVectorClient.d.ts.map +1 -0
- package/dist/providers/RuVectorClient.js +416 -0
- package/dist/providers/RuVectorClient.js.map +1 -0
- package/dist/providers/RuvllmPatternCurator.d.ts +116 -0
- package/dist/providers/RuvllmPatternCurator.d.ts.map +1 -0
- package/dist/providers/RuvllmPatternCurator.js +323 -0
- package/dist/providers/RuvllmPatternCurator.js.map +1 -0
- package/dist/providers/RuvllmProvider.d.ts +233 -1
- package/dist/providers/RuvllmProvider.d.ts.map +1 -1
- package/dist/providers/RuvllmProvider.js +781 -11
- package/dist/providers/RuvllmProvider.js.map +1 -1
- package/dist/providers/index.d.ts +5 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +12 -2
- package/dist/providers/index.js.map +1 -1
- package/dist/utils/ruvllm-loader.d.ts +98 -1
- package/dist/utils/ruvllm-loader.d.ts.map +1 -1
- package/dist/utils/ruvllm-loader.js.map +1 -1
- package/docs/reference/agents.md +91 -2
- package/docs/reference/skills.md +97 -2
- package/package.json +2 -2
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* N8nFailureModeTesterAgent
|
|
3
|
+
*
|
|
4
|
+
* Error handling and retry semantics testing for n8n workflows:
|
|
5
|
+
* - Retry/backoff behavior validation
|
|
6
|
+
* - Partial failure handling in loops
|
|
7
|
+
* - Error branch testing
|
|
8
|
+
* - "Continue on fail" behavior
|
|
9
|
+
* - Dead-letter patterns
|
|
10
|
+
* - Timeout handling
|
|
11
|
+
* - Error propagation analysis
|
|
12
|
+
*/
|
|
13
|
+
import { N8nBaseAgent, N8nAgentConfig } from './N8nBaseAgent';
|
|
14
|
+
import { N8nWorkflow } from './types';
|
|
15
|
+
import { QETask } from '../../types';
|
|
16
|
+
export interface FailureModeTestTask extends QETask {
|
|
17
|
+
type: 'failure-mode-test';
|
|
18
|
+
target: string;
|
|
19
|
+
options?: {
|
|
20
|
+
testRetryBehavior?: boolean;
|
|
21
|
+
testErrorBranches?: boolean;
|
|
22
|
+
testContinueOnFail?: boolean;
|
|
23
|
+
testTimeouts?: boolean;
|
|
24
|
+
testPartialFailures?: boolean;
|
|
25
|
+
injectFaults?: FaultInjection[];
|
|
26
|
+
dryRun?: boolean;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export interface FaultInjection {
|
|
30
|
+
targetNode: string;
|
|
31
|
+
faultType: 'error' | 'timeout' | 'empty-response' | 'malformed-response' | 'rate-limit';
|
|
32
|
+
probability?: number;
|
|
33
|
+
delay?: number;
|
|
34
|
+
errorMessage?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface FailureModeTestResult {
|
|
37
|
+
workflowId: string;
|
|
38
|
+
workflowName: string;
|
|
39
|
+
testDate: string;
|
|
40
|
+
passed: boolean;
|
|
41
|
+
score: number;
|
|
42
|
+
errorHandlingScore: number;
|
|
43
|
+
resilienceScore: number;
|
|
44
|
+
findings: FailureModeFinding[];
|
|
45
|
+
retryAnalysis: RetryAnalysis;
|
|
46
|
+
errorBranchAnalysis: ErrorBranchAnalysis;
|
|
47
|
+
continueOnFailAnalysis: ContinueOnFailAnalysis;
|
|
48
|
+
recommendations: string[];
|
|
49
|
+
faultInjectionResults?: FaultInjectionResult[];
|
|
50
|
+
dlqAnalysis?: DLQAnalysis;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Result of active fault injection testing
|
|
54
|
+
*/
|
|
55
|
+
export interface FaultInjectionResult {
|
|
56
|
+
fault: FaultInjection;
|
|
57
|
+
executed: boolean;
|
|
58
|
+
errorHandled: boolean;
|
|
59
|
+
retryAttempts: number;
|
|
60
|
+
finalStatus: 'recovered' | 'failed-gracefully' | 'crashed' | 'timeout';
|
|
61
|
+
executionTime: number;
|
|
62
|
+
errorPropagation: string[];
|
|
63
|
+
dataIntegrity: 'preserved' | 'partial-loss' | 'corrupted';
|
|
64
|
+
details: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Dead Letter Queue analysis
|
|
68
|
+
*/
|
|
69
|
+
export interface DLQAnalysis {
|
|
70
|
+
hasDLQPattern: boolean;
|
|
71
|
+
dlqNodes: string[];
|
|
72
|
+
unhandledFailurePaths: string[];
|
|
73
|
+
poisonMessageHandling: 'present' | 'partial' | 'missing';
|
|
74
|
+
recommendations: string[];
|
|
75
|
+
}
|
|
76
|
+
export interface FailureModeFinding {
|
|
77
|
+
type: 'missing-error-handler' | 'retry-misconfiguration' | 'silent-failure' | 'cascade-failure' | 'timeout-risk' | 'dlq-missing' | 'partial-failure-risk';
|
|
78
|
+
severity: 'critical' | 'high' | 'medium' | 'low';
|
|
79
|
+
node: string;
|
|
80
|
+
message: string;
|
|
81
|
+
details: string;
|
|
82
|
+
suggestion: string;
|
|
83
|
+
}
|
|
84
|
+
export interface RetryAnalysis {
|
|
85
|
+
nodesWithRetry: string[];
|
|
86
|
+
nodesWithoutRetry: string[];
|
|
87
|
+
retryConfigurations: Array<{
|
|
88
|
+
node: string;
|
|
89
|
+
maxRetries: number;
|
|
90
|
+
backoffType: string;
|
|
91
|
+
waitBetween: number;
|
|
92
|
+
issues: string[];
|
|
93
|
+
}>;
|
|
94
|
+
overallScore: number;
|
|
95
|
+
}
|
|
96
|
+
export interface ErrorBranchAnalysis {
|
|
97
|
+
nodesWithErrorBranch: string[];
|
|
98
|
+
nodesWithoutErrorBranch: string[];
|
|
99
|
+
errorBranchCoverage: number;
|
|
100
|
+
orphanedErrorBranches: string[];
|
|
101
|
+
errorHandlers: Array<{
|
|
102
|
+
triggerNode: string;
|
|
103
|
+
handlerNode: string;
|
|
104
|
+
handlesAllErrors: boolean;
|
|
105
|
+
}>;
|
|
106
|
+
}
|
|
107
|
+
export interface ContinueOnFailAnalysis {
|
|
108
|
+
nodesWithContinueOnFail: string[];
|
|
109
|
+
silentFailureRisks: string[];
|
|
110
|
+
dataIntegrityRisks: Array<{
|
|
111
|
+
node: string;
|
|
112
|
+
risk: string;
|
|
113
|
+
affectedDownstream: string[];
|
|
114
|
+
}>;
|
|
115
|
+
}
|
|
116
|
+
export declare class N8nFailureModeTesterAgent extends N8nBaseAgent {
|
|
117
|
+
constructor(config: N8nAgentConfig);
|
|
118
|
+
protected performTask(task: QETask): Promise<FailureModeTestResult>;
|
|
119
|
+
/**
|
|
120
|
+
* Test failure modes in workflow
|
|
121
|
+
*/
|
|
122
|
+
testFailureModes(workflowId: string, options?: FailureModeTestTask['options'], providedWorkflow?: N8nWorkflow): Promise<FailureModeTestResult>;
|
|
123
|
+
/**
|
|
124
|
+
* Analyze retry configurations
|
|
125
|
+
*/
|
|
126
|
+
private analyzeRetryConfigurations;
|
|
127
|
+
/**
|
|
128
|
+
* Analyze error branches
|
|
129
|
+
*/
|
|
130
|
+
private analyzeErrorBranches;
|
|
131
|
+
/**
|
|
132
|
+
* Analyze continue-on-fail settings
|
|
133
|
+
*/
|
|
134
|
+
private analyzeContinueOnFail;
|
|
135
|
+
/**
|
|
136
|
+
* Check for partial failure risks in loops
|
|
137
|
+
*/
|
|
138
|
+
private checkPartialFailureRisks;
|
|
139
|
+
/**
|
|
140
|
+
* Check for timeout risks
|
|
141
|
+
*/
|
|
142
|
+
private checkTimeoutRisks;
|
|
143
|
+
/**
|
|
144
|
+
* Check for dead-letter patterns
|
|
145
|
+
*/
|
|
146
|
+
private checkDeadLetterPatterns;
|
|
147
|
+
/**
|
|
148
|
+
* Execute fault injection tests
|
|
149
|
+
*/
|
|
150
|
+
private executeFaultInjection;
|
|
151
|
+
/**
|
|
152
|
+
* Convert retry analysis to findings
|
|
153
|
+
*/
|
|
154
|
+
private retryConfigToFindings;
|
|
155
|
+
/**
|
|
156
|
+
* Convert error branch analysis to findings
|
|
157
|
+
*/
|
|
158
|
+
private errorBranchToFindings;
|
|
159
|
+
/**
|
|
160
|
+
* Convert continue-on-fail analysis to findings
|
|
161
|
+
*/
|
|
162
|
+
private continueOnFailToFindings;
|
|
163
|
+
/**
|
|
164
|
+
* Calculate error handling score
|
|
165
|
+
*/
|
|
166
|
+
private calculateErrorHandlingScore;
|
|
167
|
+
/**
|
|
168
|
+
* Calculate resilience score
|
|
169
|
+
*/
|
|
170
|
+
private calculateResilienceScore;
|
|
171
|
+
/**
|
|
172
|
+
* Generate recommendations
|
|
173
|
+
*/
|
|
174
|
+
private generateRecommendations;
|
|
175
|
+
/**
|
|
176
|
+
* Execute fault injection tests against a live workflow
|
|
177
|
+
* This actually runs the workflow with injected faults to verify error handling
|
|
178
|
+
*/
|
|
179
|
+
executeFaultInjectionTests(workflowId: string, faults?: FaultInjection[], providedWorkflow?: N8nWorkflow): Promise<FaultInjectionResult[]>;
|
|
180
|
+
/**
|
|
181
|
+
* Generate default faults for error-prone nodes
|
|
182
|
+
*/
|
|
183
|
+
private generateDefaultFaults;
|
|
184
|
+
/**
|
|
185
|
+
* Execute a single fault injection test
|
|
186
|
+
*/
|
|
187
|
+
private executeSingleFaultTest;
|
|
188
|
+
/**
|
|
189
|
+
* Analyze the result of a fault injection test
|
|
190
|
+
*/
|
|
191
|
+
private analyzeFaultTestResult;
|
|
192
|
+
/**
|
|
193
|
+
* Find nodes that had errors in execution
|
|
194
|
+
*/
|
|
195
|
+
private findErrorNodes;
|
|
196
|
+
/**
|
|
197
|
+
* Count retry attempts for a node
|
|
198
|
+
*/
|
|
199
|
+
private countRetryAttempts;
|
|
200
|
+
/**
|
|
201
|
+
* Check if error branch was used
|
|
202
|
+
*/
|
|
203
|
+
private checkErrorBranchUsed;
|
|
204
|
+
/**
|
|
205
|
+
* Check if continue-on-fail was used
|
|
206
|
+
*/
|
|
207
|
+
private checkContinueOnFailUsed;
|
|
208
|
+
/**
|
|
209
|
+
* Assess data integrity after fault
|
|
210
|
+
*/
|
|
211
|
+
private assessDataIntegrity;
|
|
212
|
+
/**
|
|
213
|
+
* Trace how error propagated through workflow
|
|
214
|
+
*/
|
|
215
|
+
private traceErrorPropagation;
|
|
216
|
+
/**
|
|
217
|
+
* Generate human-readable details for fault test
|
|
218
|
+
*/
|
|
219
|
+
private generateFaultTestDetails;
|
|
220
|
+
/**
|
|
221
|
+
* Analyze Dead Letter Queue patterns
|
|
222
|
+
*/
|
|
223
|
+
analyzeDLQPatterns(workflow: N8nWorkflow): DLQAnalysis;
|
|
224
|
+
/**
|
|
225
|
+
* Check if a node eventually leads to any of the target nodes
|
|
226
|
+
*/
|
|
227
|
+
private eventuallyLeadsTo;
|
|
228
|
+
/**
|
|
229
|
+
* Quick failure mode check
|
|
230
|
+
*/
|
|
231
|
+
quickCheck(workflowId: string): Promise<{
|
|
232
|
+
resilient: boolean;
|
|
233
|
+
errorHandlingScore: number;
|
|
234
|
+
criticalIssues: number;
|
|
235
|
+
topIssue: string | null;
|
|
236
|
+
}>;
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=N8nFailureModeTesterAgent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"N8nFailureModeTesterAgent.d.ts","sourceRoot":"","sources":["../../../src/agents/n8n/N8nFailureModeTesterAgent.ts"],"names":[],"mappings":"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"}
|