@orbytautomation/engine 0.2.4 → 0.4.0
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/README.md +1 -1
- package/dist/adapters/AdapterRegistry.d.ts.map +1 -1
- package/dist/adapters/AdapterRegistry.js +6 -0
- package/dist/adapters/AdapterRegistry.js.map +1 -1
- package/dist/context/VariableResolver.d.ts.map +1 -1
- package/dist/context/VariableResolver.js +7 -0
- package/dist/context/VariableResolver.js.map +1 -1
- package/dist/core/OrbytEngine.d.ts +19 -0
- package/dist/core/OrbytEngine.d.ts.map +1 -1
- package/dist/core/OrbytEngine.js +79 -3
- package/dist/core/OrbytEngine.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/errors/ErrorCodes.d.ts +205 -6
- package/dist/errors/ErrorCodes.d.ts.map +1 -1
- package/dist/errors/ErrorCodes.js +398 -5
- package/dist/errors/ErrorCodes.js.map +1 -1
- package/dist/errors/ErrorDebugger.d.ts +98 -0
- package/dist/errors/ErrorDebugger.d.ts.map +1 -0
- package/dist/errors/ErrorDebugger.js +290 -0
- package/dist/errors/ErrorDebugger.js.map +1 -0
- package/dist/errors/ErrorDetector.d.ts +148 -0
- package/dist/errors/ErrorDetector.d.ts.map +1 -0
- package/dist/errors/ErrorDetector.js +370 -0
- package/dist/errors/ErrorDetector.js.map +1 -0
- package/dist/errors/ErrorFormatter.d.ts +92 -3
- package/dist/errors/ErrorFormatter.d.ts.map +1 -1
- package/dist/errors/ErrorFormatter.js +220 -4
- package/dist/errors/ErrorFormatter.js.map +1 -1
- package/dist/errors/ErrorHandler.d.ts +259 -0
- package/dist/errors/ErrorHandler.d.ts.map +1 -0
- package/dist/errors/ErrorHandler.js +378 -0
- package/dist/errors/ErrorHandler.js.map +1 -0
- package/dist/errors/FieldRegistry.d.ts +39 -0
- package/dist/errors/FieldRegistry.d.ts.map +1 -1
- package/dist/errors/FieldRegistry.js +172 -74
- package/dist/errors/FieldRegistry.js.map +1 -1
- package/dist/errors/OrbytError.d.ts +85 -3
- package/dist/errors/OrbytError.d.ts.map +1 -1
- package/dist/errors/OrbytError.js +151 -4
- package/dist/errors/OrbytError.js.map +1 -1
- package/dist/errors/SchedulerError.d.ts +93 -1
- package/dist/errors/SchedulerError.d.ts.map +1 -1
- package/dist/errors/SchedulerError.js +145 -1
- package/dist/errors/SchedulerError.js.map +1 -1
- package/dist/errors/SecurityErrors.d.ts +94 -12
- package/dist/errors/SecurityErrors.d.ts.map +1 -1
- package/dist/errors/SecurityErrors.js +162 -18
- package/dist/errors/SecurityErrors.js.map +1 -1
- package/dist/errors/StepError.d.ts +111 -1
- package/dist/errors/StepError.d.ts.map +1 -1
- package/dist/errors/StepError.js +182 -1
- package/dist/errors/StepError.js.map +1 -1
- package/dist/errors/WorkflowError.d.ts +139 -2
- package/dist/errors/WorkflowError.d.ts.map +1 -1
- package/dist/errors/WorkflowError.js +264 -22
- package/dist/errors/WorkflowError.js.map +1 -1
- package/dist/errors/index.d.ts +5 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +7 -4
- package/dist/errors/index.js.map +1 -1
- package/dist/execution/ExecutionEngine.d.ts.map +1 -1
- package/dist/execution/ExecutionEngine.js +36 -6
- package/dist/execution/ExecutionEngine.js.map +1 -1
- package/dist/execution/ExecutionPlan.d.ts.map +1 -1
- package/dist/execution/ExecutionPlan.js +21 -1
- package/dist/execution/ExecutionPlan.js.map +1 -1
- package/dist/execution/IntentAnalyzer.d.ts.map +1 -1
- package/dist/execution/IntentAnalyzer.js +20 -0
- package/dist/execution/IntentAnalyzer.js.map +1 -1
- package/dist/execution/StepExecutor.d.ts.map +1 -1
- package/dist/execution/StepExecutor.js +109 -29
- package/dist/execution/StepExecutor.js.map +1 -1
- package/dist/execution/WorkflowExecutor.d.ts.map +1 -1
- package/dist/execution/WorkflowExecutor.js +31 -0
- package/dist/execution/WorkflowExecutor.js.map +1 -1
- package/dist/explanation/ExplanationGenerator.d.ts +105 -0
- package/dist/explanation/ExplanationGenerator.d.ts.map +1 -0
- package/dist/explanation/ExplanationGenerator.js +814 -0
- package/dist/explanation/ExplanationGenerator.js.map +1 -0
- package/dist/explanation/ExplanationLogger.d.ts +50 -0
- package/dist/explanation/ExplanationLogger.d.ts.map +1 -0
- package/dist/explanation/ExplanationLogger.js +284 -0
- package/dist/explanation/ExplanationLogger.js.map +1 -0
- package/dist/explanation/ExplanationTypes.d.ts +252 -0
- package/dist/explanation/ExplanationTypes.d.ts.map +1 -0
- package/dist/explanation/ExplanationTypes.js +10 -0
- package/dist/explanation/ExplanationTypes.js.map +1 -0
- package/dist/explanation/index.d.ts +12 -0
- package/dist/explanation/index.d.ts.map +1 -0
- package/dist/explanation/index.js +11 -0
- package/dist/explanation/index.js.map +1 -0
- package/dist/hooks/HookManager.d.ts.map +1 -1
- package/dist/hooks/HookManager.js +8 -0
- package/dist/hooks/HookManager.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/ShutdownManager.d.ts.map +1 -1
- package/dist/lifecycle/ShutdownManager.js +22 -9
- package/dist/lifecycle/ShutdownManager.js.map +1 -1
- package/dist/lifecycle/StartupManager.d.ts.map +1 -1
- package/dist/lifecycle/StartupManager.js +16 -5
- package/dist/lifecycle/StartupManager.js.map +1 -1
- package/dist/loader/WorkflowLoader.d.ts +83 -21
- package/dist/loader/WorkflowLoader.d.ts.map +1 -1
- package/dist/loader/WorkflowLoader.js +169 -55
- package/dist/loader/WorkflowLoader.js.map +1 -1
- package/dist/logging/EngineLogger.d.ts +492 -0
- package/dist/logging/EngineLogger.d.ts.map +1 -0
- package/dist/logging/EngineLogger.js +1170 -0
- package/dist/logging/EngineLogger.js.map +1 -0
- package/dist/logging/LoggerManager.d.ts +49 -0
- package/dist/logging/LoggerManager.d.ts.map +1 -0
- package/dist/logging/LoggerManager.js +94 -0
- package/dist/logging/LoggerManager.js.map +1 -0
- package/dist/logging/index.d.ts +2 -1
- package/dist/logging/index.d.ts.map +1 -1
- package/dist/logging/index.js +2 -3
- package/dist/logging/index.js.map +1 -1
- package/dist/parser/SchemaValidator.d.ts.map +1 -1
- package/dist/parser/SchemaValidator.js +8 -1
- package/dist/parser/SchemaValidator.js.map +1 -1
- package/dist/parser/StepParser.d.ts +6 -1
- package/dist/parser/StepParser.d.ts.map +1 -1
- package/dist/parser/StepParser.js +14 -1
- package/dist/parser/StepParser.js.map +1 -1
- package/dist/parser/WorkflowParser.d.ts.map +1 -1
- package/dist/parser/WorkflowParser.js +53 -28
- package/dist/parser/WorkflowParser.js.map +1 -1
- package/dist/scheduling/ScheduleParser.d.ts.map +1 -1
- package/dist/scheduling/ScheduleParser.js +7 -0
- package/dist/scheduling/ScheduleParser.js.map +1 -1
- package/dist/scheduling/Scheduler.d.ts.map +1 -1
- package/dist/scheduling/Scheduler.js +13 -0
- package/dist/scheduling/Scheduler.js.map +1 -1
- package/dist/types/log-types.d.ts +105 -0
- package/dist/types/log-types.d.ts.map +1 -0
- package/dist/types/log-types.js +42 -0
- package/dist/types/log-types.js.map +1 -0
- package/package.json +1 -1
- package/dist/core/EngineLogger.d.ts +0 -182
- package/dist/core/EngineLogger.d.ts.map +0 -1
- package/dist/core/EngineLogger.js +0 -293
- package/dist/core/EngineLogger.js.map +0 -1
- package/dist/logging/LogLevel.d.ts +0 -2
- package/dist/logging/LogLevel.d.ts.map +0 -1
- package/dist/logging/LogLevel.js +0 -2
- package/dist/logging/LogLevel.js.map +0 -1
- package/dist/logging/Logger.d.ts +0 -2
- package/dist/logging/Logger.d.ts.map +0 -1
- package/dist/logging/Logger.js +0 -2
- package/dist/logging/Logger.js.map +0 -1
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Debugger (Smart Fix Suggestions)
|
|
3
|
+
*
|
|
4
|
+
* Analyzes errors and provides actionable fix suggestions.
|
|
5
|
+
* Makes debugging easy by suggesting concrete solutions.
|
|
6
|
+
*
|
|
7
|
+
* PHILOSOPHY:
|
|
8
|
+
* ==========
|
|
9
|
+
* Instead of just showing errors, guide users to fix them.
|
|
10
|
+
* Provide step-by-step solutions based on error context.
|
|
11
|
+
*
|
|
12
|
+
* USAGE:
|
|
13
|
+
* ======
|
|
14
|
+
* ```typescript
|
|
15
|
+
* // Get debug info for an error
|
|
16
|
+
* const debug = ErrorDebugger.analyze(error);
|
|
17
|
+
* console.log(debug.explanation);
|
|
18
|
+
* console.log(debug.fixSteps);
|
|
19
|
+
*
|
|
20
|
+
* // Get formatted debug output
|
|
21
|
+
* const output = ErrorDebugger.format(error);
|
|
22
|
+
* console.error(output);
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @module errors/debugger
|
|
26
|
+
*/
|
|
27
|
+
import { OrbytErrorCode } from './ErrorCodes.js';
|
|
28
|
+
import { LoggerManager } from '../logging/LoggerManager.js';
|
|
29
|
+
/**
|
|
30
|
+
* Error Debugger
|
|
31
|
+
*
|
|
32
|
+
* Smart system that analyzes errors and provides fix suggestions.
|
|
33
|
+
*/
|
|
34
|
+
export class ErrorDebugger {
|
|
35
|
+
/**
|
|
36
|
+
* Analyze error and generate debug information
|
|
37
|
+
*
|
|
38
|
+
* @param error - OrbytError to analyze
|
|
39
|
+
* @returns Debug information with fix suggestions
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const debug = ErrorDebugger.analyze(error);
|
|
44
|
+
* console.log(debug.explanation);
|
|
45
|
+
* debug.fixSteps.forEach((step, i) => {
|
|
46
|
+
* console.log(`${i + 1}. ${step}`);
|
|
47
|
+
* });
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
static analyze(error) {
|
|
51
|
+
const logger = LoggerManager.getLogger();
|
|
52
|
+
logger.debug(`[ErrorDebugger] Analyzing error: ${error.code}`, {
|
|
53
|
+
code: error.code,
|
|
54
|
+
message: error.message,
|
|
55
|
+
path: error.path,
|
|
56
|
+
});
|
|
57
|
+
// Get base information from error code
|
|
58
|
+
const baseInfo = this.getBaseDebugInfo(error.code);
|
|
59
|
+
// Enhance with context-specific information
|
|
60
|
+
const contextInfo = this.analyzeContext(error);
|
|
61
|
+
return {
|
|
62
|
+
...baseInfo,
|
|
63
|
+
...contextInfo,
|
|
64
|
+
// Override with more specific information if available
|
|
65
|
+
cause: contextInfo.cause || baseInfo.cause,
|
|
66
|
+
fixSteps: (contextInfo.fixSteps && contextInfo.fixSteps.length > 0) ? contextInfo.fixSteps : baseInfo.fixSteps,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Format debug information for display
|
|
71
|
+
*
|
|
72
|
+
* @param error - Error to format
|
|
73
|
+
* @param useColors - Whether to use ANSI colors (default: true)
|
|
74
|
+
* @returns Formatted debug output
|
|
75
|
+
*/
|
|
76
|
+
static format(error, useColors = true) {
|
|
77
|
+
const debug = this.analyze(error);
|
|
78
|
+
const lines = [];
|
|
79
|
+
// Color codes
|
|
80
|
+
const c = useColors ? {
|
|
81
|
+
reset: '\x1b[0m',
|
|
82
|
+
bold: '\x1b[1m',
|
|
83
|
+
dim: '\x1b[2m',
|
|
84
|
+
blue: '\x1b[34m',
|
|
85
|
+
cyan: '\x1b[36m',
|
|
86
|
+
yellow: '\x1b[33m',
|
|
87
|
+
green: '\x1b[32m',
|
|
88
|
+
red: '\x1b[31m',
|
|
89
|
+
} : {
|
|
90
|
+
reset: '', bold: '', dim: '', blue: '', cyan: '', yellow: '', green: '', red: '',
|
|
91
|
+
};
|
|
92
|
+
// Header
|
|
93
|
+
lines.push(`${c.bold}${c.blue}━━━━ DEBUG INFO ━━━━${c.reset}`);
|
|
94
|
+
lines.push('');
|
|
95
|
+
// Explanation
|
|
96
|
+
lines.push(`${c.bold}What went wrong:${c.reset}`);
|
|
97
|
+
lines.push(debug.explanation);
|
|
98
|
+
lines.push('');
|
|
99
|
+
// Cause
|
|
100
|
+
lines.push(`${c.bold}Why it happened:${c.reset}`);
|
|
101
|
+
lines.push(debug.cause);
|
|
102
|
+
lines.push('');
|
|
103
|
+
// Fix steps
|
|
104
|
+
lines.push(`${c.bold}${c.green}How to fix:${c.reset}`);
|
|
105
|
+
debug.fixSteps.forEach((step, i) => {
|
|
106
|
+
lines.push(`${c.cyan}${i + 1}.${c.reset} ${step}`);
|
|
107
|
+
});
|
|
108
|
+
// Common mistakes
|
|
109
|
+
if (debug.commonMistakes && debug.commonMistakes.length > 0) {
|
|
110
|
+
lines.push('');
|
|
111
|
+
lines.push(`${c.bold}${c.yellow}Common mistakes:${c.reset}`);
|
|
112
|
+
debug.commonMistakes.forEach(mistake => {
|
|
113
|
+
lines.push(`${c.dim}•${c.reset} ${mistake}`);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
// Example
|
|
117
|
+
if (debug.example) {
|
|
118
|
+
lines.push('');
|
|
119
|
+
lines.push(`${c.bold}Example:${c.reset}`);
|
|
120
|
+
lines.push(`${c.dim}${debug.example.description}${c.reset}`);
|
|
121
|
+
lines.push('');
|
|
122
|
+
lines.push(c.dim + '```' + c.reset);
|
|
123
|
+
lines.push(debug.example.code);
|
|
124
|
+
lines.push(c.dim + '```' + c.reset);
|
|
125
|
+
}
|
|
126
|
+
// Time estimate
|
|
127
|
+
if (debug.estimatedFixTime) {
|
|
128
|
+
lines.push('');
|
|
129
|
+
lines.push(`${c.dim}⏱ Estimated fix time: ${debug.estimatedFixTime}${c.reset}`);
|
|
130
|
+
}
|
|
131
|
+
return lines.join('\n');
|
|
132
|
+
}
|
|
133
|
+
// ==================== PRIVATE METHODS ====================
|
|
134
|
+
/**
|
|
135
|
+
* Get base debug information for error code
|
|
136
|
+
*/
|
|
137
|
+
static getBaseDebugInfo(code) {
|
|
138
|
+
// Map of error codes to debug information
|
|
139
|
+
const debugMap = {
|
|
140
|
+
[OrbytErrorCode.SCHEMA_UNKNOWN_FIELD]: {
|
|
141
|
+
explanation: 'Your workflow contains a field that is not recognized by Orbyt.',
|
|
142
|
+
cause: 'This usually happens due to a typo in the field name or using a field that doesn\'t exist in the schema.',
|
|
143
|
+
fixSteps: [
|
|
144
|
+
'Check the spelling of the field name',
|
|
145
|
+
'Refer to Orbyt documentation for valid field names',
|
|
146
|
+
'Remove the field if it\'s not needed',
|
|
147
|
+
],
|
|
148
|
+
commonMistakes: [
|
|
149
|
+
'Typos in field names (e.g., "varion" instead of "version")',
|
|
150
|
+
'Using deprecated field names',
|
|
151
|
+
'Copy-pasting from old workflow versions',
|
|
152
|
+
],
|
|
153
|
+
},
|
|
154
|
+
[OrbytErrorCode.SCHEMA_RESERVED_FIELD]: {
|
|
155
|
+
explanation: 'You tried to use a field name that is reserved by Orbyt engine.',
|
|
156
|
+
cause: 'Reserved fields are used internally for billing, execution tracking, and security. Users cannot set these.',
|
|
157
|
+
fixSteps: [
|
|
158
|
+
'Rename the field to something else',
|
|
159
|
+
'Avoid using fields starting with "_" or "__"',
|
|
160
|
+
'Avoid fields like "executionId", "billingMode", "userId"',
|
|
161
|
+
],
|
|
162
|
+
commonMistakes: [
|
|
163
|
+
'Using underscore-prefixed fields (_internal, __context)',
|
|
164
|
+
'Trying to set billing fields manually',
|
|
165
|
+
'Using engine-managed field names',
|
|
166
|
+
],
|
|
167
|
+
docsLinks: ['https://docs.orbyt.dev/reserved-fields'],
|
|
168
|
+
},
|
|
169
|
+
[OrbytErrorCode.SCHEMA_MISSING_FIELD]: {
|
|
170
|
+
explanation: 'A required field is missing from your workflow definition.',
|
|
171
|
+
cause: 'Orbyt requires certain fields to be present for the workflow to be valid.',
|
|
172
|
+
fixSteps: [
|
|
173
|
+
'Add the missing required field to your workflow',
|
|
174
|
+
'Check field name spelling',
|
|
175
|
+
'Refer to schema documentation for required fields',
|
|
176
|
+
],
|
|
177
|
+
estimatedFixTime: '1-2 minutes',
|
|
178
|
+
},
|
|
179
|
+
[OrbytErrorCode.VALIDATION_DUPLICATE_ID]: {
|
|
180
|
+
explanation: 'Multiple steps in your workflow have the same ID.',
|
|
181
|
+
cause: 'Each step must have a unique identifier so Orbyt can track execution and dependencies.',
|
|
182
|
+
fixSteps: [
|
|
183
|
+
'Find all steps with the duplicate ID',
|
|
184
|
+
'Rename one (or both) to make IDs unique',
|
|
185
|
+
'Use descriptive, meaningful IDs for clarity',
|
|
186
|
+
],
|
|
187
|
+
commonMistakes: [
|
|
188
|
+
'Copy-pasting steps without changing IDs',
|
|
189
|
+
'Using generic IDs like "step1", "step2"',
|
|
190
|
+
],
|
|
191
|
+
estimatedFixTime: '1 minute',
|
|
192
|
+
},
|
|
193
|
+
[OrbytErrorCode.VALIDATION_CIRCULAR_DEPENDENCY]: {
|
|
194
|
+
explanation: 'Your workflow has steps that depend on each other in a circle.',
|
|
195
|
+
cause: 'Step A depends on Step B, which depends on Step C, which depends on Step A. This creates an infinite loop.',
|
|
196
|
+
fixSteps: [
|
|
197
|
+
'Review the dependency chain shown in the error',
|
|
198
|
+
'Identify which dependency can be removed or reordered',
|
|
199
|
+
'Break the circle by removing one dependency',
|
|
200
|
+
],
|
|
201
|
+
commonMistakes: [
|
|
202
|
+
'Not visualizing the dependency graph',
|
|
203
|
+
'Adding dependencies without checking existing ones',
|
|
204
|
+
],
|
|
205
|
+
urgent: true,
|
|
206
|
+
estimatedFixTime: '5-10 minutes',
|
|
207
|
+
},
|
|
208
|
+
[OrbytErrorCode.EXECUTION_TIMEOUT]: {
|
|
209
|
+
explanation: 'A step took too long to execute and was terminated.',
|
|
210
|
+
cause: 'The step exceeded its configured timeout limit.',
|
|
211
|
+
fixSteps: [
|
|
212
|
+
'Increase the timeout value in step configuration',
|
|
213
|
+
'Optimize the step\'s logic to run faster',
|
|
214
|
+
'Check if the step is stuck in an infinite loop',
|
|
215
|
+
'Verify external services are responding',
|
|
216
|
+
],
|
|
217
|
+
commonMistakes: [
|
|
218
|
+
'Setting timeout too low for long-running operations',
|
|
219
|
+
'Not handling network delays',
|
|
220
|
+
'Infinite loops in custom code',
|
|
221
|
+
],
|
|
222
|
+
urgent: true,
|
|
223
|
+
estimatedFixTime: '10-30 minutes',
|
|
224
|
+
},
|
|
225
|
+
};
|
|
226
|
+
const info = debugMap[code];
|
|
227
|
+
if (info) {
|
|
228
|
+
return {
|
|
229
|
+
explanation: info.explanation || 'An error occurred in your workflow.',
|
|
230
|
+
cause: info.cause || 'The exact cause depends on the specific error code and context.',
|
|
231
|
+
fixSteps: info.fixSteps || [],
|
|
232
|
+
commonMistakes: info.commonMistakes,
|
|
233
|
+
docsLinks: info.docsLinks,
|
|
234
|
+
example: info.example,
|
|
235
|
+
urgent: info.urgent ?? false,
|
|
236
|
+
estimatedFixTime: info.estimatedFixTime,
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
// Default debug info for unknown codes
|
|
240
|
+
return {
|
|
241
|
+
explanation: 'An error occurred in your workflow.',
|
|
242
|
+
cause: 'The exact cause depends on the specific error code and context.',
|
|
243
|
+
fixSteps: [
|
|
244
|
+
'Review the error message carefully',
|
|
245
|
+
'Check the path/location mentioned in the error',
|
|
246
|
+
'Refer to Orbyt documentation',
|
|
247
|
+
'Contact support if issue persists',
|
|
248
|
+
],
|
|
249
|
+
urgent: false,
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Analyze error context for more specific information
|
|
254
|
+
*/
|
|
255
|
+
static analyzeContext(error) {
|
|
256
|
+
const fixSteps = [];
|
|
257
|
+
// Add location-specific fix steps
|
|
258
|
+
if (error.path) {
|
|
259
|
+
fixSteps.push(`Look at: ${error.path}`);
|
|
260
|
+
}
|
|
261
|
+
// Add context-specific information
|
|
262
|
+
if (error.diagnostic.context) {
|
|
263
|
+
const ctx = error.diagnostic.context;
|
|
264
|
+
// For unknown field errors, add suggestion if available
|
|
265
|
+
if (ctx.suggestion) {
|
|
266
|
+
fixSteps.push(`Did you mean: "${ctx.suggestion}"?`);
|
|
267
|
+
}
|
|
268
|
+
// For enum errors, show valid values
|
|
269
|
+
if (ctx.validValues && Array.isArray(ctx.validValues)) {
|
|
270
|
+
fixSteps.push(`Use one of: ${ctx.validValues.join(', ')}`);
|
|
271
|
+
}
|
|
272
|
+
// For type errors, show expected type
|
|
273
|
+
if (ctx.expected) {
|
|
274
|
+
fixSteps.push(`Change type to: ${ctx.expected}`);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
return { fixSteps };
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Quick debug - one-line summary
|
|
281
|
+
*
|
|
282
|
+
* @param error - Error to summarize
|
|
283
|
+
* @returns One-line debug summary
|
|
284
|
+
*/
|
|
285
|
+
static quickDebug(error) {
|
|
286
|
+
const debug = this.analyze(error);
|
|
287
|
+
return `💡 ${debug.fixSteps[0] || debug.cause}`;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
//# sourceMappingURL=ErrorDebugger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorDebugger.js","sourceRoot":"","sources":["../../src/errors/ErrorDebugger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error Detector (Smart Error Classification)
|
|
3
|
+
*
|
|
4
|
+
* Automatically detects error types and assigns correct error codes.
|
|
5
|
+
* Makes the engine smart enough to classify errors without manual coding.
|
|
6
|
+
* Also enriches errors with debug information for developers.
|
|
7
|
+
*
|
|
8
|
+
* PHILOSOPHY:
|
|
9
|
+
* ==========
|
|
10
|
+
* Instead of manually throwing specific error codes everywhere,
|
|
11
|
+
* the detector analyzes the error context and assigns the right code.
|
|
12
|
+
* Debug information is automatically attached at detection time.
|
|
13
|
+
*
|
|
14
|
+
* USAGE:
|
|
15
|
+
* ======
|
|
16
|
+
* ```typescript
|
|
17
|
+
* // Instead of manual classification:
|
|
18
|
+
* if (field === 'version') {
|
|
19
|
+
* throw SchemaError.missingField('version', 'workflow');
|
|
20
|
+
* }
|
|
21
|
+
*
|
|
22
|
+
* // Let detector classify automatically:
|
|
23
|
+
* const error = ErrorDetector.detect({
|
|
24
|
+
* type: 'missing_field',
|
|
25
|
+
* field: 'version',
|
|
26
|
+
* location: 'workflow'
|
|
27
|
+
* });
|
|
28
|
+
* throw error; // Already has debug info attached!
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @module errors/detector
|
|
32
|
+
*/
|
|
33
|
+
import { OrbytError } from './OrbytError.js';
|
|
34
|
+
/**
|
|
35
|
+
* Error context for detection
|
|
36
|
+
* Provides information about what went wrong
|
|
37
|
+
*/
|
|
38
|
+
export interface ErrorContext {
|
|
39
|
+
/** Type of error scenario */
|
|
40
|
+
type: ErrorScenario;
|
|
41
|
+
/** Field name (if applicable) */
|
|
42
|
+
field?: string;
|
|
43
|
+
/** Location in workflow where error occurred */
|
|
44
|
+
location?: string;
|
|
45
|
+
/** Expected value/type */
|
|
46
|
+
expected?: string;
|
|
47
|
+
/** Actual value/type received */
|
|
48
|
+
actual?: string;
|
|
49
|
+
/** Related data for context */
|
|
50
|
+
data?: Record<string, any>;
|
|
51
|
+
/** Raw error message (if from exception) */
|
|
52
|
+
rawMessage?: string;
|
|
53
|
+
/** Stack trace (for internal errors) */
|
|
54
|
+
stack?: string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Error scenarios that detector can identify
|
|
58
|
+
*/
|
|
59
|
+
export type ErrorScenario = 'unknown_field' | 'reserved_field' | 'invalid_type' | 'missing_field' | 'invalid_enum' | 'parse_error' | 'invalid_adapter' | 'duplicate_id' | 'unknown_step' | 'circular_dependency' | 'forward_reference' | 'empty_workflow' | 'missing_input' | 'invalid_condition' | 'invalid_variable' | 'step_not_found' | 'step_timeout' | 'step_failed' | 'step_dependency_failed' | 'step_invalid_config' | 'reserved_field_override' | 'reserved_annotation' | 'permission_denied' | 'unknown';
|
|
60
|
+
/**
|
|
61
|
+
* Error Detector
|
|
62
|
+
*
|
|
63
|
+
* Smart system that analyzes error context and produces correct OrbytError.
|
|
64
|
+
*/
|
|
65
|
+
export declare class ErrorDetector {
|
|
66
|
+
/**
|
|
67
|
+
* Detect and create appropriate error from context
|
|
68
|
+
*
|
|
69
|
+
* @param context - Error context with information about what went wrong
|
|
70
|
+
* @returns Properly classified OrbytError
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const error = ErrorDetector.detect({
|
|
75
|
+
* type: 'missing_field',
|
|
76
|
+
* field: 'version',
|
|
77
|
+
* location: 'workflow'
|
|
78
|
+
* });
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
/**
|
|
82
|
+
* Detect error from context and enrich with debug information
|
|
83
|
+
*
|
|
84
|
+
* This is the main entry point for error detection.
|
|
85
|
+
* All detected errors are automatically enriched with debug info.
|
|
86
|
+
*
|
|
87
|
+
* @param context - Error context
|
|
88
|
+
* @returns OrbytError with debug info attached
|
|
89
|
+
*/
|
|
90
|
+
static detect(context: ErrorContext): OrbytError;
|
|
91
|
+
/**
|
|
92
|
+
* Detect error from raw exception
|
|
93
|
+
* Analyzes exception and tries to classify it
|
|
94
|
+
*
|
|
95
|
+
* @param error - Raw error/exception
|
|
96
|
+
* @param location - Where the error occurred
|
|
97
|
+
* @returns Classified OrbytError with debug info
|
|
98
|
+
*/
|
|
99
|
+
static detectFromException(error: Error, location?: string): OrbytError;
|
|
100
|
+
/**
|
|
101
|
+
* Check if field is reserved by engine
|
|
102
|
+
*/
|
|
103
|
+
private static isReservedField;
|
|
104
|
+
/**
|
|
105
|
+
* Check if annotation uses reserved namespace
|
|
106
|
+
*/
|
|
107
|
+
private static isReservedAnnotation;
|
|
108
|
+
/**
|
|
109
|
+
* Determine field type for security errors
|
|
110
|
+
*/
|
|
111
|
+
private static getFieldType;
|
|
112
|
+
private static handleUnknownField;
|
|
113
|
+
/**
|
|
114
|
+
* Get valid field names based on location in workflow
|
|
115
|
+
*/
|
|
116
|
+
private static getValidFieldsForLocation;
|
|
117
|
+
private static handleReservedField;
|
|
118
|
+
private static handleInvalidType;
|
|
119
|
+
private static handleMissingField;
|
|
120
|
+
private static handleInvalidEnum;
|
|
121
|
+
private static handleParseError;
|
|
122
|
+
private static handleInvalidAdapter;
|
|
123
|
+
private static handleDuplicateId;
|
|
124
|
+
private static handleUnknownStep;
|
|
125
|
+
private static handleCircularDependency;
|
|
126
|
+
private static handleForwardReference;
|
|
127
|
+
private static handleMissingInput;
|
|
128
|
+
private static handleInvalidCondition;
|
|
129
|
+
private static handleInvalidVariable;
|
|
130
|
+
private static handleStepTimeout;
|
|
131
|
+
private static handleStepFailed;
|
|
132
|
+
private static handleStepDependencyFailed;
|
|
133
|
+
private static handleStepInvalidConfig;
|
|
134
|
+
private static handlePermissionDenied;
|
|
135
|
+
private static handleUnknown;
|
|
136
|
+
/**
|
|
137
|
+
* Enrich error with debug information
|
|
138
|
+
*
|
|
139
|
+
* This is called automatically after error detection to attach
|
|
140
|
+
* detailed debug info including explanations, fix steps, examples, etc.
|
|
141
|
+
*
|
|
142
|
+
* @param error - Detected OrbytError
|
|
143
|
+
* @returns Same error with debug info attached (for console display)
|
|
144
|
+
* @private
|
|
145
|
+
*/
|
|
146
|
+
private static enrichWithDebugInfo;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=ErrorDetector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorDetector.d.ts","sourceRoot":"","sources":["../../src/errors/ErrorDetector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAmB7C;;;GAGG;AACH,MAAM,WAAW,YAAY;IACzB,6BAA6B;IAC7B,IAAI,EAAE,aAAa,CAAC;IAEpB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3B,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAEnB,eAAe,GACf,gBAAgB,GAChB,cAAc,GACd,eAAe,GACf,cAAc,GACd,aAAa,GACb,iBAAiB,GAGjB,cAAc,GACd,cAAc,GACd,qBAAqB,GACrB,mBAAmB,GACnB,gBAAgB,GAChB,eAAe,GACf,mBAAmB,GACnB,kBAAkB,GAGlB,gBAAgB,GAChB,cAAc,GACd,aAAa,GACb,wBAAwB,GACxB,qBAAqB,GAGrB,yBAAyB,GACzB,qBAAqB,GACrB,mBAAmB,GAGnB,SAAS,CAAC;AAEhB;;;;GAIG;AACH,qBAAa,aAAa;IACtB;;;;;;;;;;;;;;OAcG;IACH;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,GAAG,UAAU;IA6GhD;;;;;;;OAOG;IACH,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,UAAU;IAoCvE;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAU9B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAInC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAkB3B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAajC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAgCxC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAUlC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAShC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAOjC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAUhC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAS/B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAQnC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAKvC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAQrC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAOjC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAQrC,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAQpC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAU/B,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAQzC,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAQtC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAQrC,OAAO,CAAC,MAAM,CAAC,aAAa;IAU5B;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;CAOrC"}
|