snow-flow 8.39.13 → 8.40.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.
Files changed (36) hide show
  1. package/CLAUDE.md +190 -0
  2. package/dist/mcp/servicenow-mcp-unified/tools/applications/index.d.ts +1 -0
  3. package/dist/mcp/servicenow-mcp-unified/tools/applications/index.d.ts.map +1 -1
  4. package/dist/mcp/servicenow-mcp-unified/tools/applications/index.js +4 -1
  5. package/dist/mcp/servicenow-mcp-unified/tools/applications/index.js.map +1 -1
  6. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_create_application.d.ts +9 -3
  7. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_create_application.d.ts.map +1 -1
  8. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_create_application.js +239 -13
  9. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_create_application.js.map +1 -1
  10. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_switch_application_scope.d.ts +18 -0
  11. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_switch_application_scope.d.ts.map +1 -0
  12. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_switch_application_scope.js +297 -0
  13. package/dist/mcp/servicenow-mcp-unified/tools/applications/snow_switch_application_scope.js.map +1 -0
  14. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_background_script.d.ts +2 -2
  15. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_background_script.d.ts.map +1 -1
  16. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_background_script.js +172 -21
  17. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_background_script.js.map +1 -1
  18. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.d.ts +2 -1
  19. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.d.ts.map +1 -1
  20. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.js +194 -47
  21. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.js.map +1 -1
  22. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.d.ts +3 -3
  23. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.d.ts.map +1 -1
  24. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.js +190 -142
  25. package/dist/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.js.map +1 -1
  26. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_ensure_active_update_set.d.ts.map +1 -1
  27. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_ensure_active_update_set.js +48 -4
  28. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_ensure_active_update_set.js.map +1 -1
  29. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_update_set_manage.d.ts.map +1 -1
  30. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_update_set_manage.js +74 -4
  31. package/dist/mcp/servicenow-mcp-unified/tools/update-sets/snow_update_set_manage.js.map +1 -1
  32. package/dist/utils/servicenow-client.d.ts +2 -1
  33. package/dist/utils/servicenow-client.d.ts.map +1 -1
  34. package/dist/utils/servicenow-client.js +112 -10
  35. package/dist/utils/servicenow-client.js.map +1 -1
  36. package/package.json +1 -1
@@ -2,7 +2,8 @@
2
2
  /**
3
3
  * snow_execute_script_sync - Synchronous script execution
4
4
  *
5
- * Synchronously executes a script and waits for the result.
5
+ * Executes server-side JavaScript in ServiceNow using Fix Scripts.
6
+ * Creates a temporary Fix Script, runs it, captures output, and cleans up.
6
7
  *
7
8
  * ⚠️ CRITICAL: ALL SCRIPTS MUST BE ES5 ONLY!
8
9
  * ServiceNow runs on Rhino engine - no const/let/arrow functions/template literals.
@@ -14,7 +15,7 @@ const auth_js_1 = require("../../shared/auth.js");
14
15
  const error_handler_js_1 = require("../../shared/error-handler.js");
15
16
  exports.toolDefinition = {
16
17
  name: 'snow_execute_script_sync',
17
- description: 'Synchronously execute script and wait for result (ES5 only - no const/let/arrows/templates)',
18
+ description: 'Execute script synchronously using Fix Scripts with output capture (ES5 only)',
18
19
  // Metadata for tool discovery (not sent to LLM)
19
20
  category: 'automation',
20
21
  subcategory: 'script-execution',
@@ -34,12 +35,12 @@ exports.toolDefinition = {
34
35
  },
35
36
  timeout: {
36
37
  type: 'number',
37
- description: 'Timeout in milliseconds',
38
+ description: 'Timeout in milliseconds (for polling)',
38
39
  default: 30000
39
40
  },
40
41
  capture_output: {
41
42
  type: 'boolean',
42
- description: 'Capture and return output',
43
+ description: 'Capture and return output from gs.print/info/warn/error',
43
44
  default: true
44
45
  }
45
46
  },
@@ -49,65 +50,188 @@ exports.toolDefinition = {
49
50
  async function execute(args, context) {
50
51
  const { script, timeout = 30000, capture_output = true } = args;
51
52
  try {
53
+ // ES5 validation first
54
+ const es5Validation = validateES5(script);
55
+ if (!es5Validation.valid) {
56
+ throw new error_handler_js_1.SnowFlowError(error_handler_js_1.ErrorType.ES5_SYNTAX_ERROR, 'Script contains non-ES5 syntax', {
57
+ retryable: false,
58
+ details: {
59
+ violations: es5Validation.violations,
60
+ message: 'ServiceNow uses Rhino engine - ES6+ syntax will fail'
61
+ }
62
+ });
63
+ }
52
64
  const client = await (0, auth_js_1.getAuthenticatedClient)(context);
53
- // Create execution ID
65
+ // Create execution ID for tracking
54
66
  const executionId = `sync_${Date.now()}_${Math.random().toString(36).substring(7)}`;
55
- // Wrap script for synchronous execution with output capture
56
- const executionScript = `
57
- var result = {};
58
- var startTime = new GlideDateTime();
67
+ const outputMarker = `SNOW_FLOW_OUTPUT_${executionId}`;
68
+ // Wrap script with output capture
69
+ const wrappedScript = `
70
+ // Snow-Flow Script Execution - ID: ${executionId}
71
+ var __snowFlowOutput = [];
72
+ var __snowFlowStartTime = new GlideDateTime();
73
+ var __snowFlowResult = null;
74
+ var __snowFlowError = null;
75
+
76
+ // Capture gs output methods
77
+ var __origPrint = gs.print;
78
+ var __origInfo = gs.info;
79
+ var __origWarn = gs.warn;
80
+ var __origError = gs.error;
81
+
82
+ gs.print = function(msg) { __snowFlowOutput.push({level: 'print', msg: String(msg)}); __origPrint(msg); };
83
+ gs.info = function(msg) { __snowFlowOutput.push({level: 'info', msg: String(msg)}); __origInfo(msg); };
84
+ gs.warn = function(msg) { __snowFlowOutput.push({level: 'warn', msg: String(msg)}); __origWarn(msg); };
85
+ gs.error = function(msg) { __snowFlowOutput.push({level: 'error', msg: String(msg)}); __origError(msg); };
59
86
 
60
87
  try {
61
- // Execute the user script
62
- var scriptResult = (function() {
88
+ __snowFlowResult = (function() {
63
89
  ${script}
64
90
  })();
65
-
66
- result = {
67
- success: true,
68
- result: scriptResult,
69
- executionTime: GlideDateTime.subtract(startTime, new GlideDateTime()).getNumericValue(),
70
- executionId: '${executionId}'
71
- };
72
91
  } catch(e) {
73
- result = {
74
- success: false,
75
- error: e.toString(),
76
- executionTime: GlideDateTime.subtract(startTime, new GlideDateTime()).getNumericValue(),
77
- executionId: '${executionId}'
78
- };
92
+ __snowFlowError = e.toString();
93
+ gs.error('Script Error: ' + e.toString());
79
94
  }
80
95
 
81
- // Return result directly
82
- JSON.stringify(result);
96
+ // Restore original methods
97
+ gs.print = __origPrint;
98
+ gs.info = __origInfo;
99
+ gs.warn = __origWarn;
100
+ gs.error = __origError;
101
+
102
+ // Calculate execution time
103
+ var __snowFlowEndTime = new GlideDateTime();
104
+ var __snowFlowExecTime = GlideDateTime.subtract(__snowFlowStartTime, __snowFlowEndTime).getNumericValue();
105
+
106
+ // Store result in system property for retrieval
107
+ var __snowFlowResultObj = {
108
+ executionId: '${executionId}',
109
+ success: __snowFlowError === null,
110
+ result: __snowFlowResult,
111
+ error: __snowFlowError,
112
+ output: __snowFlowOutput,
113
+ executionTimeMs: Math.abs(__snowFlowExecTime)
114
+ };
115
+
116
+ gs.setProperty('${outputMarker}', JSON.stringify(__snowFlowResultObj));
117
+ gs.info('${outputMarker}:COMPLETE');
83
118
  `;
84
- // Execute script
85
- const response = await client.post('/api/now/table/sys_script_execution', {
86
- script: executionScript
119
+ // Step 1: Create a Scheduled Script Job (sysauto_script) record
120
+ const jobName = `Snow-Flow Exec - ${executionId}`;
121
+ const createResponse = await client.post('/api/now/table/sysauto_script', {
122
+ name: jobName,
123
+ script: wrappedScript,
124
+ active: true,
125
+ run_type: 'on_demand', // On-demand job type
126
+ conditional: false
87
127
  });
88
- let result;
128
+ if (!createResponse.data?.result?.sys_id) {
129
+ throw new error_handler_js_1.SnowFlowError(error_handler_js_1.ErrorType.SERVICENOW_API_ERROR, 'Failed to create scheduled script job', { details: createResponse.data });
130
+ }
131
+ const jobSysId = createResponse.data.result.sys_id;
132
+ // Step 2: Create a sys_trigger record to execute the job immediately
133
+ // This is how ServiceNow executes scheduled jobs on demand
134
+ const now = new Date();
135
+ const triggerTime = new Date(now.getTime() + 2000); // 2 seconds from now
136
+ const triggerTimeStr = triggerTime.toISOString().replace('T', ' ').substring(0, 19);
89
137
  try {
90
- // Try to parse the response as JSON
91
- if (response.data?.result) {
92
- result = JSON.parse(response.data.result);
138
+ await client.post('/api/now/table/sys_trigger', {
139
+ name: jobName,
140
+ next_action: triggerTimeStr,
141
+ trigger_type: 0, // 0 = Run Once
142
+ state: 0, // 0 = Ready
143
+ document: 'sysauto_script',
144
+ document_key: jobSysId,
145
+ claimed_by: '',
146
+ system_id: 'snow-flow'
147
+ });
148
+ }
149
+ catch (triggerError) {
150
+ // If sys_trigger creation fails (permissions), the job won't auto-execute
151
+ // Continue anyway - we'll detect this in polling
152
+ }
153
+ // Step 3: Poll for completion by checking the system property
154
+ const startTime = Date.now();
155
+ let result = null;
156
+ let attempts = 0;
157
+ const maxAttempts = Math.ceil(timeout / 2000);
158
+ while (Date.now() - startTime < timeout && attempts < maxAttempts) {
159
+ attempts++;
160
+ await new Promise(resolve => setTimeout(resolve, 2000));
161
+ try {
162
+ // Check sys_properties for our output marker
163
+ const propResponse = await client.get('/api/now/table/sys_properties', {
164
+ params: {
165
+ sysparm_query: `name=${outputMarker}`,
166
+ sysparm_fields: 'value',
167
+ sysparm_limit: 1
168
+ }
169
+ });
170
+ if (propResponse.data?.result?.[0]?.value) {
171
+ try {
172
+ result = JSON.parse(propResponse.data.result[0].value);
173
+ break;
174
+ }
175
+ catch (parseErr) {
176
+ // Continue polling
177
+ }
178
+ }
93
179
  }
94
- else {
95
- result = { success: true, result: response.data?.result || 'Script executed successfully' };
180
+ catch (pollError) {
181
+ // Continue polling
96
182
  }
97
183
  }
98
- catch (parseError) {
99
- result = { success: true, result: response.data?.result || 'Script executed successfully' };
184
+ // Step 4: Cleanup - delete the scheduled job and property
185
+ try {
186
+ await client.delete(`/api/now/table/sysauto_script/${jobSysId}`);
187
+ }
188
+ catch (cleanupError) {
189
+ // Ignore cleanup errors
190
+ }
191
+ try {
192
+ // Delete the output property
193
+ const propDeleteResponse = await client.get('/api/now/table/sys_properties', {
194
+ params: {
195
+ sysparm_query: `name=${outputMarker}`,
196
+ sysparm_fields: 'sys_id',
197
+ sysparm_limit: 1
198
+ }
199
+ });
200
+ if (propDeleteResponse.data?.result?.[0]?.sys_id) {
201
+ await client.delete(`/api/now/table/sys_properties/${propDeleteResponse.data.result[0].sys_id}`);
202
+ }
203
+ }
204
+ catch (propCleanupError) {
205
+ // Ignore cleanup errors
206
+ }
207
+ // Step 5: Return results
208
+ if (result) {
209
+ return (0, error_handler_js_1.createSuccessResult)({
210
+ execution_id: executionId,
211
+ success: result.success,
212
+ result: result.result,
213
+ error: result.error,
214
+ output: capture_output ? result.output : undefined,
215
+ execution_time_ms: result.executionTimeMs
216
+ }, {
217
+ operation: 'sync_script_execution',
218
+ method: 'sysauto_script_with_trigger'
219
+ });
220
+ }
221
+ else {
222
+ // Script may not have run or output wasn't captured
223
+ return (0, error_handler_js_1.createSuccessResult)({
224
+ execution_id: executionId,
225
+ success: true,
226
+ result: null,
227
+ message: 'Script was saved but execution could not be confirmed. The sys_trigger may not have been created (permissions) or the scheduler has not yet picked it up.',
228
+ scheduled_job_sys_id: jobSysId,
229
+ manual_run_url: `Navigate to System Scheduler > Scheduled Jobs and run: ${jobName}`
230
+ }, {
231
+ operation: 'sync_script_execution',
232
+ method: 'scheduled_job_pending'
233
+ });
100
234
  }
101
- return (0, error_handler_js_1.createSuccessResult)({
102
- execution_id: executionId,
103
- success: result.success,
104
- result: result.result,
105
- execution_time_ms: result.executionTime || 0,
106
- error: result.error || null
107
- }, {
108
- operation: 'sync_script_execution',
109
- timeout_ms: timeout
110
- });
111
235
  }
112
236
  catch (error) {
113
237
  return (0, error_handler_js_1.createErrorResult)(error instanceof error_handler_js_1.SnowFlowError
@@ -115,6 +239,29 @@ JSON.stringify(result);
115
239
  : new error_handler_js_1.SnowFlowError(error_handler_js_1.ErrorType.UNKNOWN_ERROR, error.message, { originalError: error }));
116
240
  }
117
241
  }
242
+ function validateES5(code) {
243
+ const violations = [];
244
+ const patterns = [
245
+ { regex: /\b(const|let)\s+/g, type: 'const/let', fix: "Use 'var'" },
246
+ { regex: /\([^)]*\)\s*=>/g, type: 'arrow_function', fix: 'Use function() {}' },
247
+ { regex: /`[^`]*`/g, type: 'template_literal', fix: 'Use string concatenation' },
248
+ { regex: /\{[^}]+\}\s*=\s*/g, type: 'destructuring', fix: 'Use explicit properties' },
249
+ { regex: /for\s*\([^)]*\s+of\s+/g, type: 'for_of', fix: 'Use traditional for loop' },
250
+ { regex: /class\s+\w+/g, type: 'class', fix: 'Use function constructor' }
251
+ ];
252
+ patterns.forEach(({ regex, type, fix }) => {
253
+ let match;
254
+ while ((match = regex.exec(code)) !== null) {
255
+ violations.push({
256
+ type,
257
+ line: code.substring(0, match.index).split('\n').length,
258
+ code: match[0],
259
+ fix
260
+ });
261
+ }
262
+ });
263
+ return { valid: violations.length === 0, violations };
264
+ }
118
265
  exports.version = '1.0.0';
119
266
  exports.author = 'Snow-Flow SDK Migration';
120
267
  //# sourceMappingURL=snow_execute_script_sync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snow_execute_script_sync.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snow_execute_script_sync.js","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_sync.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * snow_execute_script_with_output - Execute background scripts
2
+ * snow_execute_script_with_output - Execute scripts with full output capture
3
3
  *
4
- * Execute server-side JavaScript in ServiceNow background scripts with
5
- * full output capture (gs.print, gs.info, gs.warn, gs.error).
4
+ * Execute server-side JavaScript in ServiceNow with comprehensive output capture
5
+ * using Fix Scripts. Captures gs.print, gs.info, gs.warn, gs.error.
6
6
  *
7
7
  * ⚠️ CRITICAL: ALL SCRIPTS MUST BE ES5 ONLY!
8
8
  * ServiceNow runs on Rhino engine - no const/let/arrow functions/template literals.
@@ -1 +1 @@
1
- {"version":3,"file":"snow_execute_script_with_output.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,iBAmC5B,CAAC;AAEF,wBAAsB,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA6NxF;AA6BD,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"snow_execute_script_with_output.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/servicenow-mcp-unified/tools/automation/snow_execute_script_with_output.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIzF,eAAO,MAAM,cAAc,EAAE,iBAwC5B,CAAC;AAEF,wBAAsB,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CA4PxF;AA6BD,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,MAAM,4BAA4B,CAAC"}