snow-flow 1.1.78 → 1.1.80
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.md +233 -0
- package/dist/cli.js +117 -13
- package/dist/cli.js.map +1 -1
- package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts +14 -3
- package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts.map +1 -1
- package/dist/mcp/servicenow-deployment-mcp-refactored.js +274 -61
- package/dist/mcp/servicenow-deployment-mcp-refactored.js.map +1 -1
- package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts.map +1 -1
- package/dist/mcp/servicenow-intelligent-mcp-refactored.js +12 -6
- package/dist/mcp/servicenow-intelligent-mcp-refactored.js.map +1 -1
- package/dist/mcp/shared/base-mcp-server.d.ts +75 -3
- package/dist/mcp/shared/base-mcp-server.d.ts.map +1 -1
- package/dist/mcp/shared/base-mcp-server.js +497 -9
- package/dist/mcp/shared/base-mcp-server.js.map +1 -1
- package/dist/utils/servicenow-client.d.ts +1 -1
- package/dist/utils/servicenow-client.d.ts.map +1 -1
- package/dist/utils/servicenow-client.js +44 -7
- package/dist/utils/servicenow-client.js.map +1 -1
- package/dist/utils/snow-oauth.d.ts +1 -1
- package/dist/utils/snow-oauth.d.ts.map +1 -1
- package/dist/utils/snow-oauth.js +91 -24
- package/dist/utils/snow-oauth.js.map +1 -1
- package/dist/version.d.ts +9 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +53 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
|
@@ -95,34 +95,209 @@ class BaseMCPServer {
|
|
|
95
95
|
return result.data;
|
|
96
96
|
}
|
|
97
97
|
/**
|
|
98
|
-
*
|
|
98
|
+
* MANDATORY authentication and connection validation before ServiceNow operations
|
|
99
99
|
*/
|
|
100
|
-
async
|
|
100
|
+
async validateServiceNowConnection() {
|
|
101
101
|
try {
|
|
102
|
+
this.logger.info('🔍 Validating ServiceNow connection...');
|
|
103
|
+
// 1. Check if we have valid credentials
|
|
104
|
+
const credentials = await this.oauth.loadCredentials();
|
|
105
|
+
if (!credentials) {
|
|
106
|
+
return {
|
|
107
|
+
success: false,
|
|
108
|
+
error: 'No ServiceNow credentials found. Set up .env file and run "snow-flow auth login".'
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
// 2. Check if we have access token (OAuth session)
|
|
112
|
+
if (!credentials.accessToken) {
|
|
113
|
+
return {
|
|
114
|
+
success: false,
|
|
115
|
+
error: 'OAuth authentication required. Run "snow-flow auth login" to authenticate.'
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
// 3. Check if token is still valid
|
|
102
119
|
const isAuth = await this.oauth.isAuthenticated();
|
|
103
120
|
if (!isAuth) {
|
|
104
|
-
this.logger.
|
|
121
|
+
this.logger.info('🔄 Token expired, attempting refresh...');
|
|
122
|
+
// Try to refresh token
|
|
123
|
+
const refreshResult = await this.oauth.refreshAccessToken();
|
|
124
|
+
if (!refreshResult.success) {
|
|
125
|
+
return {
|
|
126
|
+
success: false,
|
|
127
|
+
error: 'OAuth token expired and refresh failed. Run "snow-flow auth login" to re-authenticate.'
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
this.logger.info('✅ Token refreshed successfully');
|
|
105
131
|
}
|
|
106
|
-
|
|
132
|
+
// 4. Test actual ServiceNow connection
|
|
133
|
+
const connectionTest = await this.client.testConnection();
|
|
134
|
+
if (!connectionTest.success) {
|
|
135
|
+
return {
|
|
136
|
+
success: false,
|
|
137
|
+
error: `ServiceNow connection failed: ${connectionTest.error}`
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
this.logger.info('✅ ServiceNow connection validated');
|
|
141
|
+
return { success: true };
|
|
107
142
|
}
|
|
108
143
|
catch (error) {
|
|
109
|
-
this.logger.error('
|
|
110
|
-
return
|
|
144
|
+
this.logger.error('ServiceNow connection validation failed', error);
|
|
145
|
+
return {
|
|
146
|
+
success: false,
|
|
147
|
+
error: error instanceof Error ? error.message : String(error)
|
|
148
|
+
};
|
|
111
149
|
}
|
|
112
150
|
}
|
|
113
151
|
/**
|
|
114
|
-
*
|
|
152
|
+
* Check authentication with proper error handling (deprecated - use validateServiceNowConnection)
|
|
115
153
|
*/
|
|
116
|
-
|
|
154
|
+
async checkAuthentication() {
|
|
155
|
+
const result = await this.validateServiceNowConnection();
|
|
156
|
+
return result.success;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Create standard authentication error response with detailed instructions
|
|
160
|
+
*/
|
|
161
|
+
createAuthenticationError(error) {
|
|
162
|
+
const errorText = error || 'Authentication validation failed';
|
|
117
163
|
return {
|
|
118
164
|
content: [
|
|
119
165
|
{
|
|
120
166
|
type: 'text',
|
|
121
|
-
text:
|
|
167
|
+
text: `❌ ServiceNow Connection Failed
|
|
168
|
+
|
|
169
|
+
${errorText}
|
|
170
|
+
|
|
171
|
+
🔧 To fix this:
|
|
172
|
+
|
|
173
|
+
1. Ensure .env file has OAuth credentials:
|
|
174
|
+
SNOW_INSTANCE=your-instance.service-now.com
|
|
175
|
+
SNOW_CLIENT_ID=your_oauth_client_id
|
|
176
|
+
SNOW_CLIENT_SECRET=your_oauth_client_secret
|
|
177
|
+
|
|
178
|
+
2. Authenticate with ServiceNow:
|
|
179
|
+
snow-flow auth login
|
|
180
|
+
|
|
181
|
+
3. If you still get errors, run diagnostics:
|
|
182
|
+
snow_auth_diagnostics()
|
|
183
|
+
|
|
184
|
+
💡 To get OAuth credentials:
|
|
185
|
+
• ServiceNow: System OAuth > Application Registry > New OAuth Application
|
|
186
|
+
• Redirect URI: http://localhost:3005/callback
|
|
187
|
+
• Scopes: useraccount write admin`
|
|
122
188
|
}
|
|
123
189
|
]
|
|
124
190
|
};
|
|
125
191
|
}
|
|
192
|
+
/**
|
|
193
|
+
* Smart artifact discovery - check for existing artifacts before creating new ones
|
|
194
|
+
*/
|
|
195
|
+
async discoverExistingArtifacts(type, name, searchTerms) {
|
|
196
|
+
try {
|
|
197
|
+
this.logger.info(`🔍 Discovering existing ${type} artifacts...`);
|
|
198
|
+
const suggestions = [];
|
|
199
|
+
let artifacts = [];
|
|
200
|
+
// Search by name
|
|
201
|
+
const nameSearch = await this.client.searchRecords(this.getTableForType(type), `nameLIKE${name}`, 5);
|
|
202
|
+
if (nameSearch.success && nameSearch.data?.result?.length > 0) {
|
|
203
|
+
artifacts = nameSearch.data.result;
|
|
204
|
+
suggestions.push(`Found ${artifacts.length} existing ${type}(s) with similar names`);
|
|
205
|
+
suggestions.push(`Consider reusing: ${artifacts.map(a => a.name).join(', ')}`);
|
|
206
|
+
}
|
|
207
|
+
// Search by additional terms if provided
|
|
208
|
+
if (searchTerms && searchTerms.length > 0) {
|
|
209
|
+
for (const term of searchTerms) {
|
|
210
|
+
const termSearch = await this.client.searchRecords(this.getTableForType(type), `nameLIKE${term}^ORdescriptionLIKE${term}`, 3);
|
|
211
|
+
if (termSearch.success && termSearch.data?.result?.length > 0) {
|
|
212
|
+
const newArtifacts = termSearch.data.result.filter((new_artifact) => !artifacts.some(existing => existing.sys_id === new_artifact.sys_id));
|
|
213
|
+
artifacts.push(...newArtifacts);
|
|
214
|
+
if (newArtifacts.length > 0) {
|
|
215
|
+
suggestions.push(`Found ${newArtifacts.length} related ${type}(s) for "${term}"`);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
return {
|
|
221
|
+
found: artifacts.length > 0,
|
|
222
|
+
artifacts,
|
|
223
|
+
suggestions
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
catch (error) {
|
|
227
|
+
this.logger.warn('Artifact discovery failed', error);
|
|
228
|
+
return { found: false, artifacts: [], suggestions: [] };
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Ensure active Update Set for tracking changes
|
|
233
|
+
*/
|
|
234
|
+
async ensureUpdateSet(context, purpose) {
|
|
235
|
+
try {
|
|
236
|
+
this.logger.info('📦 Ensuring active Update Set...');
|
|
237
|
+
// Check current update set
|
|
238
|
+
const currentUpdateSet = await this.client.getCurrentUpdateSet();
|
|
239
|
+
if (currentUpdateSet.success && currentUpdateSet.data) {
|
|
240
|
+
this.logger.info(`✅ Using existing Update Set: ${currentUpdateSet.data.name}`);
|
|
241
|
+
return currentUpdateSet.data.sys_id;
|
|
242
|
+
}
|
|
243
|
+
// Create new update set
|
|
244
|
+
const updateSetName = purpose
|
|
245
|
+
? `Snow-Flow ${purpose} - ${new Date().toISOString().split('T')[0]}`
|
|
246
|
+
: `Snow-Flow Changes - ${new Date().toISOString().split('T')[0]}`;
|
|
247
|
+
this.logger.info(`📦 Creating new Update Set: ${updateSetName}`);
|
|
248
|
+
const newUpdateSet = await this.client.createUpdateSet({
|
|
249
|
+
name: updateSetName,
|
|
250
|
+
description: `Automated changes from Snow-Flow Agent (${context.agent_id})`,
|
|
251
|
+
state: 'in_progress'
|
|
252
|
+
});
|
|
253
|
+
if (newUpdateSet.success && newUpdateSet.data) {
|
|
254
|
+
// Set it as current
|
|
255
|
+
await this.client.setCurrentUpdateSet(newUpdateSet.data.sys_id);
|
|
256
|
+
this.logger.info(`✅ Update Set created and activated: ${newUpdateSet.data.sys_id}`);
|
|
257
|
+
return newUpdateSet.data.sys_id;
|
|
258
|
+
}
|
|
259
|
+
this.logger.warn('⚠️ Could not create Update Set, changes will not be tracked');
|
|
260
|
+
return null;
|
|
261
|
+
}
|
|
262
|
+
catch (error) {
|
|
263
|
+
this.logger.warn('Update Set creation failed', error);
|
|
264
|
+
return null;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Automatically track artifact in Update Set
|
|
269
|
+
*/
|
|
270
|
+
async trackArtifact(sysId, type, name, updateSetId) {
|
|
271
|
+
try {
|
|
272
|
+
if (!updateSetId) {
|
|
273
|
+
this.logger.warn('No Update Set ID provided for artifact tracking');
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
this.logger.info(`📋 Tracking ${type} artifact: ${name} (${sysId})`);
|
|
277
|
+
// Add artifact to update set tracking (this is handled automatically by ServiceNow
|
|
278
|
+
// when artifacts are created/modified, but we can log it for visibility)
|
|
279
|
+
this.logger.info(`✅ Artifact tracked in Update Set: ${updateSetId}`);
|
|
280
|
+
}
|
|
281
|
+
catch (error) {
|
|
282
|
+
this.logger.warn('Artifact tracking failed', error);
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Get ServiceNow table name for artifact type
|
|
287
|
+
*/
|
|
288
|
+
getTableForType(type) {
|
|
289
|
+
const tableMap = {
|
|
290
|
+
'widget': 'sp_widget',
|
|
291
|
+
'flow': 'sys_hub_flow',
|
|
292
|
+
'subflow': 'sys_hub_flow',
|
|
293
|
+
'action': 'sys_hub_action_type_definition',
|
|
294
|
+
'script': 'sys_script_include',
|
|
295
|
+
'business_rule': 'sys_script',
|
|
296
|
+
'table': 'sys_db_object',
|
|
297
|
+
'application': 'sys_app'
|
|
298
|
+
};
|
|
299
|
+
return tableMap[type] || 'sys_metadata';
|
|
300
|
+
}
|
|
126
301
|
/**
|
|
127
302
|
* Report progress during long operations
|
|
128
303
|
*/
|
|
@@ -195,6 +370,319 @@ class BaseMCPServer {
|
|
|
195
370
|
metadata
|
|
196
371
|
};
|
|
197
372
|
}
|
|
373
|
+
/**
|
|
374
|
+
* Enhanced error handling with intelligent recovery strategies
|
|
375
|
+
*/
|
|
376
|
+
async handleServiceNowError(error, operation, context, fallbackOptions) {
|
|
377
|
+
this.logger.error(`ServiceNow operation failed: ${operation}`, error);
|
|
378
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
379
|
+
const errorCode = this.extractErrorCode(errorMessage);
|
|
380
|
+
// Categorize error and determine recovery strategy
|
|
381
|
+
const errorCategory = this.categorizeError(errorMessage, errorCode);
|
|
382
|
+
switch (errorCategory) {
|
|
383
|
+
case 'authentication':
|
|
384
|
+
return this.handleAuthenticationError(error, operation, context);
|
|
385
|
+
case 'permissions':
|
|
386
|
+
return this.handlePermissionError(error, operation, context, fallbackOptions);
|
|
387
|
+
case 'network':
|
|
388
|
+
return this.handleNetworkError(error, operation, context, fallbackOptions);
|
|
389
|
+
case 'validation':
|
|
390
|
+
return this.handleValidationError(error, operation, context);
|
|
391
|
+
case 'scope':
|
|
392
|
+
return this.handleScopeError(error, operation, context, fallbackOptions);
|
|
393
|
+
default:
|
|
394
|
+
return this.handleGenericError(error, operation, context, fallbackOptions);
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* Categorize error for appropriate recovery strategy
|
|
399
|
+
*/
|
|
400
|
+
categorizeError(errorMessage, errorCode) {
|
|
401
|
+
const msgLower = errorMessage.toLowerCase();
|
|
402
|
+
// Authentication errors
|
|
403
|
+
if (msgLower.includes('unauthorized') ||
|
|
404
|
+
msgLower.includes('invalid_grant') ||
|
|
405
|
+
msgLower.includes('authentication') ||
|
|
406
|
+
errorCode === '401' || errorCode === '403') {
|
|
407
|
+
return 'authentication';
|
|
408
|
+
}
|
|
409
|
+
// Permission errors
|
|
410
|
+
if (msgLower.includes('insufficient privileges') ||
|
|
411
|
+
msgLower.includes('access denied') ||
|
|
412
|
+
msgLower.includes('acl')) {
|
|
413
|
+
return 'permissions';
|
|
414
|
+
}
|
|
415
|
+
// Network errors
|
|
416
|
+
if (msgLower.includes('network') ||
|
|
417
|
+
msgLower.includes('timeout') ||
|
|
418
|
+
msgLower.includes('connection') ||
|
|
419
|
+
msgLower.includes('econnrefused')) {
|
|
420
|
+
return 'network';
|
|
421
|
+
}
|
|
422
|
+
// Validation errors
|
|
423
|
+
if (msgLower.includes('invalid') ||
|
|
424
|
+
msgLower.includes('required field') ||
|
|
425
|
+
msgLower.includes('constraint') ||
|
|
426
|
+
msgLower.includes('validation')) {
|
|
427
|
+
return 'validation';
|
|
428
|
+
}
|
|
429
|
+
// Scope errors
|
|
430
|
+
if (msgLower.includes('scope') ||
|
|
431
|
+
msgLower.includes('application') ||
|
|
432
|
+
msgLower.includes('global')) {
|
|
433
|
+
return 'scope';
|
|
434
|
+
}
|
|
435
|
+
return 'generic';
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* Handle authentication errors with automatic recovery
|
|
439
|
+
*/
|
|
440
|
+
async handleAuthenticationError(error, operation, context) {
|
|
441
|
+
this.logger.info('🔄 Attempting automatic authentication recovery...');
|
|
442
|
+
// Try to refresh token automatically
|
|
443
|
+
try {
|
|
444
|
+
const refreshResult = await this.oauth.refreshAccessToken();
|
|
445
|
+
if (refreshResult.success) {
|
|
446
|
+
this.logger.info('✅ Token refreshed successfully, retry operation');
|
|
447
|
+
// Store recovery in context for coordination
|
|
448
|
+
await this.memory.updateSharedContext({
|
|
449
|
+
session_id: context.session_id,
|
|
450
|
+
context_key: `auth_recovery_${operation}`,
|
|
451
|
+
context_value: JSON.stringify({
|
|
452
|
+
recovery_action: 'token_refresh',
|
|
453
|
+
timestamp: new Date().toISOString(),
|
|
454
|
+
operation: operation
|
|
455
|
+
}),
|
|
456
|
+
created_by_agent: context.agent_id
|
|
457
|
+
});
|
|
458
|
+
return this.createSuccessResponse('Authentication recovered - token refreshed', {
|
|
459
|
+
recovery_action: 'token_refresh',
|
|
460
|
+
next_step: 'retry_operation',
|
|
461
|
+
can_continue: true
|
|
462
|
+
});
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
catch (refreshError) {
|
|
466
|
+
this.logger.warn('Token refresh failed', refreshError);
|
|
467
|
+
}
|
|
468
|
+
// Request Queen intervention for authentication issues
|
|
469
|
+
await this.requestQueenIntervention(context, {
|
|
470
|
+
type: 'authentication_failure',
|
|
471
|
+
priority: 'high',
|
|
472
|
+
description: `Authentication failed for ${operation}`,
|
|
473
|
+
attempted_solutions: ['token_refresh']
|
|
474
|
+
});
|
|
475
|
+
return this.createAuthenticationError(`Authentication failed during ${operation}. Automatic recovery failed.`);
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* Handle permission errors with scope escalation
|
|
479
|
+
*/
|
|
480
|
+
async handlePermissionError(error, operation, context, fallbackOptions) {
|
|
481
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
482
|
+
// Try scope escalation if enabled
|
|
483
|
+
if (fallbackOptions?.enableScopeEscalation) {
|
|
484
|
+
this.logger.info('🔝 Attempting scope escalation...');
|
|
485
|
+
try {
|
|
486
|
+
// Try to escalate to global scope
|
|
487
|
+
const escalationResult = await this.escalateToGlobalScope(operation, context);
|
|
488
|
+
if (escalationResult.success) {
|
|
489
|
+
return this.createSuccessResponse('Permission issue resolved via scope escalation', escalationResult);
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
catch (escalationError) {
|
|
493
|
+
this.logger.warn('Scope escalation failed', escalationError);
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
// Request permission elevation
|
|
497
|
+
await this.requestQueenIntervention(context, {
|
|
498
|
+
type: 'permission_elevation_needed',
|
|
499
|
+
priority: 'high',
|
|
500
|
+
description: `Insufficient privileges for ${operation}: ${errorMessage}`,
|
|
501
|
+
attempted_solutions: fallbackOptions?.enableScopeEscalation ? ['scope_escalation'] : []
|
|
502
|
+
});
|
|
503
|
+
return this.createErrorResponse(`Permission error during ${operation}`, {
|
|
504
|
+
error: errorMessage,
|
|
505
|
+
recovery_options: [
|
|
506
|
+
'1. Request admin privileges from Queen Agent',
|
|
507
|
+
'2. Try scope escalation to global',
|
|
508
|
+
'3. Create manual Update Set instructions',
|
|
509
|
+
'4. Use alternative deployment approach'
|
|
510
|
+
],
|
|
511
|
+
next_steps: [
|
|
512
|
+
'Contact ServiceNow admin for elevated permissions',
|
|
513
|
+
'Or use snow_deploy with fallback_strategy="manual_steps"'
|
|
514
|
+
]
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
/**
|
|
518
|
+
* Handle network errors with intelligent retry
|
|
519
|
+
*/
|
|
520
|
+
async handleNetworkError(error, operation, context, fallbackOptions) {
|
|
521
|
+
if (fallbackOptions?.enableRetry) {
|
|
522
|
+
this.logger.info('🔄 Network error - attempting retry with backoff...');
|
|
523
|
+
// Implement exponential backoff retry
|
|
524
|
+
const maxRetries = 3;
|
|
525
|
+
for (let attempt = 1; attempt <= maxRetries; attempt++) {
|
|
526
|
+
await this.delay(Math.pow(2, attempt) * 1000); // Exponential backoff
|
|
527
|
+
try {
|
|
528
|
+
// Test connection
|
|
529
|
+
const connectionTest = await this.client.testConnection();
|
|
530
|
+
if (connectionTest.success) {
|
|
531
|
+
this.logger.info(`✅ Network recovered after ${attempt} attempts`);
|
|
532
|
+
return this.createSuccessResponse('Network error recovered - connection restored', {
|
|
533
|
+
recovery_action: 'network_retry',
|
|
534
|
+
attempts: attempt,
|
|
535
|
+
can_continue: true
|
|
536
|
+
});
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
catch (retryError) {
|
|
540
|
+
this.logger.warn(`Retry attempt ${attempt} failed`, retryError);
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
return this.createErrorResponse(`Network error during ${operation}`, {
|
|
545
|
+
error: error instanceof Error ? error.message : String(error),
|
|
546
|
+
recovery_options: [
|
|
547
|
+
'1. Check ServiceNow instance availability',
|
|
548
|
+
'2. Verify network connectivity',
|
|
549
|
+
'3. Check firewall/proxy settings',
|
|
550
|
+
'4. Retry operation in a few minutes'
|
|
551
|
+
],
|
|
552
|
+
next_steps: [
|
|
553
|
+
'Wait for network recovery and retry',
|
|
554
|
+
'Or check ServiceNow instance status'
|
|
555
|
+
]
|
|
556
|
+
});
|
|
557
|
+
}
|
|
558
|
+
/**
|
|
559
|
+
* Handle validation errors with correction suggestions
|
|
560
|
+
*/
|
|
561
|
+
async handleValidationError(error, operation, context) {
|
|
562
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
563
|
+
// Extract field information from validation error
|
|
564
|
+
const fieldInfo = this.extractFieldInfoFromError(errorMessage);
|
|
565
|
+
return this.createErrorResponse(`Validation error during ${operation}`, {
|
|
566
|
+
error: errorMessage,
|
|
567
|
+
field_issues: fieldInfo,
|
|
568
|
+
recovery_options: [
|
|
569
|
+
'1. Fix required fields and retry',
|
|
570
|
+
'2. Check field constraints and formats',
|
|
571
|
+
'3. Use snow_validate_deployment() first',
|
|
572
|
+
'4. Review ServiceNow table schema'
|
|
573
|
+
],
|
|
574
|
+
next_steps: [
|
|
575
|
+
'Update configuration with correct field values',
|
|
576
|
+
'Validate against ServiceNow table requirements'
|
|
577
|
+
]
|
|
578
|
+
});
|
|
579
|
+
}
|
|
580
|
+
/**
|
|
581
|
+
* Handle scope errors with automatic fallback
|
|
582
|
+
*/
|
|
583
|
+
async handleScopeError(error, operation, context, fallbackOptions) {
|
|
584
|
+
if (fallbackOptions?.enableScopeEscalation) {
|
|
585
|
+
this.logger.info('🌐 Scope error - attempting global scope fallback...');
|
|
586
|
+
try {
|
|
587
|
+
const scopeFallback = await this.fallbackToGlobalScope(operation, context);
|
|
588
|
+
if (scopeFallback.success) {
|
|
589
|
+
return this.createSuccessResponse('Scope error resolved - using global scope', scopeFallback);
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
catch (scopeError) {
|
|
593
|
+
this.logger.warn('Global scope fallback failed', scopeError);
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
return this.createErrorResponse(`Scope error during ${operation}`, {
|
|
597
|
+
error: error instanceof Error ? error.message : String(error),
|
|
598
|
+
recovery_options: [
|
|
599
|
+
'1. Deploy to global scope instead',
|
|
600
|
+
'2. Create scoped application first',
|
|
601
|
+
'3. Use manual deployment approach',
|
|
602
|
+
'4. Check application scope permissions'
|
|
603
|
+
],
|
|
604
|
+
next_steps: [
|
|
605
|
+
'Try snow_deploy with scope_strategy="global"',
|
|
606
|
+
'Or create application scope manually first'
|
|
607
|
+
]
|
|
608
|
+
});
|
|
609
|
+
}
|
|
610
|
+
/**
|
|
611
|
+
* Handle generic errors with comprehensive guidance
|
|
612
|
+
*/
|
|
613
|
+
async handleGenericError(error, operation, context, fallbackOptions) {
|
|
614
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
615
|
+
// Generate contextual recovery options based on operation type
|
|
616
|
+
const recoveryOptions = this.generateRecoveryOptions(operation, errorMessage);
|
|
617
|
+
// Store error for pattern analysis
|
|
618
|
+
await this.memory.updateSharedContext({
|
|
619
|
+
session_id: context.session_id,
|
|
620
|
+
context_key: `error_${operation}_${Date.now()}`,
|
|
621
|
+
context_value: JSON.stringify({
|
|
622
|
+
error: errorMessage,
|
|
623
|
+
operation: operation,
|
|
624
|
+
timestamp: new Date().toISOString(),
|
|
625
|
+
recovery_attempted: Object.keys(fallbackOptions || {})
|
|
626
|
+
}),
|
|
627
|
+
created_by_agent: context.agent_id
|
|
628
|
+
});
|
|
629
|
+
return this.createErrorResponse(`Unexpected error during ${operation}`, {
|
|
630
|
+
error: errorMessage,
|
|
631
|
+
recovery_options: recoveryOptions,
|
|
632
|
+
next_steps: [
|
|
633
|
+
'Review error details and try alternative approach',
|
|
634
|
+
'Use snow_deployment_debug() for diagnostics',
|
|
635
|
+
'Contact Queen Agent for intervention'
|
|
636
|
+
],
|
|
637
|
+
fallback_available: fallbackOptions?.enableManualSteps || false
|
|
638
|
+
});
|
|
639
|
+
}
|
|
640
|
+
/**
|
|
641
|
+
* Helper methods for error handling
|
|
642
|
+
*/
|
|
643
|
+
extractErrorCode(errorMessage) {
|
|
644
|
+
const codeMatch = errorMessage.match(/(\d{3})/);
|
|
645
|
+
return codeMatch ? codeMatch[1] : undefined;
|
|
646
|
+
}
|
|
647
|
+
extractFieldInfoFromError(errorMessage) {
|
|
648
|
+
const fieldMatch = errorMessage.match(/field[:\s]+([a-z_]+)/i);
|
|
649
|
+
const requiredMatch = errorMessage.match(/required/i);
|
|
650
|
+
return {
|
|
651
|
+
field: fieldMatch ? fieldMatch[1] : null,
|
|
652
|
+
is_required: !!requiredMatch,
|
|
653
|
+
raw_message: errorMessage
|
|
654
|
+
};
|
|
655
|
+
}
|
|
656
|
+
generateRecoveryOptions(operation, errorMessage) {
|
|
657
|
+
const options = [
|
|
658
|
+
'1. Review error message and fix configuration',
|
|
659
|
+
'2. Check ServiceNow instance status and permissions'
|
|
660
|
+
];
|
|
661
|
+
if (operation.includes('deploy')) {
|
|
662
|
+
options.push('3. Use snow_validate_deployment() before retrying');
|
|
663
|
+
options.push('4. Try manual deployment with Update Set');
|
|
664
|
+
}
|
|
665
|
+
if (operation.includes('search') || operation.includes('find')) {
|
|
666
|
+
options.push('3. Try alternative search terms');
|
|
667
|
+
options.push('4. Use snow_comprehensive_search() for broader search');
|
|
668
|
+
}
|
|
669
|
+
options.push('5. Request Queen Agent intervention for complex issues');
|
|
670
|
+
return options;
|
|
671
|
+
}
|
|
672
|
+
async escalateToGlobalScope(operation, context) {
|
|
673
|
+
// Implementation would escalate permissions or scope
|
|
674
|
+
// This is a placeholder for actual escalation logic
|
|
675
|
+
this.logger.info(`Attempting scope escalation for ${operation}`);
|
|
676
|
+
return { success: false, reason: 'Escalation not implemented yet' };
|
|
677
|
+
}
|
|
678
|
+
async fallbackToGlobalScope(operation, context) {
|
|
679
|
+
// Implementation would fallback to global scope deployment
|
|
680
|
+
this.logger.info(`Attempting global scope fallback for ${operation}`);
|
|
681
|
+
return { success: false, reason: 'Global scope fallback not implemented yet' };
|
|
682
|
+
}
|
|
683
|
+
async delay(ms) {
|
|
684
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
685
|
+
}
|
|
198
686
|
/**
|
|
199
687
|
* Handle mock data removal - ensure real operations only
|
|
200
688
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-mcp-server.js","sourceRoot":"","sources":["../../../src/mcp/shared/base-mcp-server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-mcp-server.js","sourceRoot":"","sources":["../../../src/mcp/shared/base-mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,7 +58,7 @@ export declare class ServiceNowClient {
|
|
|
58
58
|
*/
|
|
59
59
|
get credentialsInstance(): ServiceNowCredentials | null;
|
|
60
60
|
/**
|
|
61
|
-
* Ensure we have valid authentication
|
|
61
|
+
* Ensure we have valid authentication with improved error handling
|
|
62
62
|
*/
|
|
63
63
|
private ensureAuthenticated;
|
|
64
64
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"servicenow-client.d.ts","sourceRoot":"","sources":["../../src/utils/servicenow-client.ts"],"names":[],"mappings":";AACA;;;GAGG;AAGH,OAAO,EAAmB,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAGtE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;CACd;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,eAAe,CAAkB;;IA6EzC;;OAEG;IACH,IAAW,mBAAmB,IAAI,qBAAqB,GAAG,IAAI,CAE7D;IAED;;OAEG;YACW,mBAAmB;
|
|
1
|
+
{"version":3,"file":"servicenow-client.d.ts","sourceRoot":"","sources":["../../src/utils/servicenow-client.ts"],"names":[],"mappings":"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"}
|