mcpgraph 0.1.17 → 0.1.19
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/execution/executor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAgD,MAAM,oBAAoB,CAAC;AACvG,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAGf,mBAAmB,IAAI,oBAAoB,EAC5C,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAQ1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,UAAU,CAAoC;gBAE1C,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB;IAMnE,aAAa,IAAI,oBAAoB,GAAG,IAAI;IAI5C,QAAQ,IAAI,KAAK;IAIjB,SAAS,IAAI,cAAc;IAI3B,OAAO,CAAC,eAAe;IAOjB,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../src/execution/executor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAgD,MAAM,oBAAoB,CAAC;AACvG,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EAGf,mBAAmB,IAAI,oBAAoB,EAC5C,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAQ1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,UAAU,CAAoC;gBAE1C,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB;IAMnE,aAAa,IAAI,oBAAoB,GAAG,IAAI;IAI5C,QAAQ,IAAI,KAAK;IAIjB,SAAS,IAAI,cAAc;IAI3B,OAAO,CAAC,eAAe;IAOjB,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IAuW3B,OAAO,CAAC,cAAc;CAgCvB"}
|
|
@@ -127,9 +127,13 @@ export class GraphExecutor {
|
|
|
127
127
|
this.controller.setStatus("paused");
|
|
128
128
|
// Wait for resume - this creates the promise and blocks until resume() is called
|
|
129
129
|
const pausePromise = this.controller.waitIfPaused();
|
|
130
|
+
// Get execution index before node executes (this will be the index after we add this execution)
|
|
131
|
+
const executionIndex = context.getHistory().length;
|
|
132
|
+
// Get data context available at the point of pause
|
|
133
|
+
const dataContext = context.getData();
|
|
130
134
|
// Call onPause hook to notify that we've paused (status is "paused", waiting for resume)
|
|
131
135
|
if (hooks?.onPause) {
|
|
132
|
-
await hooks.onPause(currentNodeId,
|
|
136
|
+
await hooks.onPause(executionIndex, currentNodeId, dataContext);
|
|
133
137
|
}
|
|
134
138
|
// Wait for resume to be called
|
|
135
139
|
await pausePromise;
|
|
@@ -146,9 +150,13 @@ export class GraphExecutor {
|
|
|
146
150
|
throw new Error("Execution was stopped");
|
|
147
151
|
}
|
|
148
152
|
}
|
|
153
|
+
// Get execution index before node executes (this will be the index after we add this execution)
|
|
154
|
+
const executionIndex = context.getHistory().length;
|
|
155
|
+
// Get data context available to the node (same as what nodes see for JSONata/JSON Logic)
|
|
156
|
+
const dataContext = context.getData();
|
|
149
157
|
// Call onNodeStart hook
|
|
150
158
|
if (hooks?.onNodeStart) {
|
|
151
|
-
const shouldContinue = await hooks.onNodeStart(currentNodeId, node,
|
|
159
|
+
const shouldContinue = await hooks.onNodeStart(executionIndex, currentNodeId, node, dataContext);
|
|
152
160
|
// Check for stop after hook (hook may have called stop())
|
|
153
161
|
if (this.controller && this.controller.shouldStop()) {
|
|
154
162
|
if (this.controller) {
|
|
@@ -162,7 +170,7 @@ export class GraphExecutor {
|
|
|
162
170
|
if (this.controller) {
|
|
163
171
|
// Call onPause hook before waiting
|
|
164
172
|
if (hooks?.onPause) {
|
|
165
|
-
await hooks.onPause(currentNodeId,
|
|
173
|
+
await hooks.onPause(executionIndex, currentNodeId, dataContext);
|
|
166
174
|
}
|
|
167
175
|
await this.controller.waitIfPaused();
|
|
168
176
|
// Call onResume hook after resuming
|
|
@@ -193,9 +201,11 @@ export class GraphExecutor {
|
|
|
193
201
|
break;
|
|
194
202
|
case "exit":
|
|
195
203
|
result = executeExitNode(node, context, nodeStartTime);
|
|
204
|
+
// Get execution index after exit node has been added to history
|
|
205
|
+
const exitExecutionIndex = context.getHistory().length - 1;
|
|
196
206
|
// Call onNodeComplete hook for exit node
|
|
197
207
|
if (hooks?.onNodeComplete && inputContext !== undefined) {
|
|
198
|
-
await hooks.onNodeComplete(currentNodeId, node, inputContext, result.output, Date.now() - nodeStartTime);
|
|
208
|
+
await hooks.onNodeComplete(exitExecutionIndex, currentNodeId, node, inputContext, result.output, Date.now() - nodeStartTime);
|
|
199
209
|
}
|
|
200
210
|
if (this.controller) {
|
|
201
211
|
this.controller.setStatus("finished");
|
|
@@ -239,9 +249,11 @@ export class GraphExecutor {
|
|
|
239
249
|
default:
|
|
240
250
|
throw new Error(`Unknown node type: ${node.type}`);
|
|
241
251
|
}
|
|
252
|
+
// Get execution index after node has been added to history
|
|
253
|
+
const nodeExecutionIndex = context.getHistory().length - 1;
|
|
242
254
|
// Call onNodeComplete hook
|
|
243
255
|
if (hooks?.onNodeComplete && inputContext !== undefined) {
|
|
244
|
-
await hooks.onNodeComplete(currentNodeId, node, inputContext, result.output, Date.now() - nodeStartTime);
|
|
256
|
+
await hooks.onNodeComplete(nodeExecutionIndex, currentNodeId, node, inputContext, result.output, Date.now() - nodeStartTime);
|
|
245
257
|
}
|
|
246
258
|
// Mark step complete if stepping
|
|
247
259
|
if (this.controller) {
|
|
@@ -257,9 +269,14 @@ export class GraphExecutor {
|
|
|
257
269
|
if (!lastRecord || lastRecord.nodeId !== currentNodeId) {
|
|
258
270
|
context.addHistory(currentNodeId, node.type, null, nodeStartTime, nodeEndTime, nodeError);
|
|
259
271
|
}
|
|
272
|
+
// Get execution index after error has been added to history
|
|
273
|
+
const errorExecutionIndex = context.getHistory().length - 1;
|
|
274
|
+
// Get data context available at the time of error (before the error occurred)
|
|
275
|
+
// Build context from history up to (but not including) the error execution
|
|
276
|
+
const errorDataContext = context.getContextForExecution(errorExecutionIndex);
|
|
260
277
|
// Call onNodeError hook
|
|
261
278
|
if (hooks?.onNodeError) {
|
|
262
|
-
await hooks.onNodeError(currentNodeId, node, nodeError,
|
|
279
|
+
await hooks.onNodeError(errorExecutionIndex, currentNodeId, node, nodeError, errorDataContext);
|
|
263
280
|
}
|
|
264
281
|
if (this.controller) {
|
|
265
282
|
this.controller.setStatus("error");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/execution/executor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../src/execution/executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* Types for execution introspection and debugging
|
|
3
3
|
*/
|
|
4
4
|
import type { NodeDefinition } from "./config.js";
|
|
5
|
-
import type { ExecutionContext } from "../execution/context.js";
|
|
5
|
+
import type { ExecutionContext as ExecutionContextClass } from "../execution/context.js";
|
|
6
|
+
import type { ExecutionContext as DataContext } from "../expressions/context.js";
|
|
6
7
|
export type ExecutionStatus = "not_started" | "running" | "paused" | "finished" | "error" | "stopped";
|
|
7
8
|
export interface NodeExecutionRecord {
|
|
8
9
|
executionIndex: number;
|
|
@@ -18,27 +19,45 @@ export interface ExecutionState {
|
|
|
18
19
|
status: ExecutionStatus;
|
|
19
20
|
currentNodeId: string | null;
|
|
20
21
|
executionHistory: NodeExecutionRecord[];
|
|
21
|
-
context:
|
|
22
|
+
context: ExecutionContextClass;
|
|
22
23
|
error?: Error;
|
|
23
24
|
}
|
|
24
25
|
export interface ExecutionHooks {
|
|
25
26
|
/**
|
|
26
27
|
* Called before a node executes
|
|
27
|
-
*
|
|
28
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
29
|
+
* @param nodeId - The ID of the node being executed
|
|
30
|
+
* @param node - The node definition
|
|
31
|
+
* @param context - The data context available to the node (same as what nodes see for JSONata/JSON Logic)
|
|
32
|
+
* @returns Return false to pause execution (breakpoint)
|
|
28
33
|
*/
|
|
29
|
-
onNodeStart?: (nodeId: string, node: NodeDefinition, context:
|
|
34
|
+
onNodeStart?: (executionIndex: number, nodeId: string, node: NodeDefinition, context: DataContext) => Promise<boolean>;
|
|
30
35
|
/**
|
|
31
36
|
* Called after a node completes successfully
|
|
37
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
38
|
+
* @param nodeId - The ID of the node that completed
|
|
39
|
+
* @param node - The node definition
|
|
40
|
+
* @param input - The input context available to the node when it started
|
|
41
|
+
* @param output - The output from the node
|
|
42
|
+
* @param duration - The duration of the node execution in milliseconds
|
|
32
43
|
*/
|
|
33
|
-
onNodeComplete?: (nodeId: string, node: NodeDefinition, input: unknown, output: unknown, duration: number) => Promise<void>;
|
|
44
|
+
onNodeComplete?: (executionIndex: number, nodeId: string, node: NodeDefinition, input: unknown, output: unknown, duration: number) => Promise<void>;
|
|
34
45
|
/**
|
|
35
46
|
* Called when a node encounters an error
|
|
47
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
48
|
+
* @param nodeId - The ID of the node that encountered the error
|
|
49
|
+
* @param node - The node definition
|
|
50
|
+
* @param error - The error that occurred
|
|
51
|
+
* @param context - The data context available to the node at the time of error (same as what nodes see for JSONata/JSON Logic)
|
|
36
52
|
*/
|
|
37
|
-
onNodeError?: (nodeId: string, node: NodeDefinition, error: Error, context:
|
|
53
|
+
onNodeError?: (executionIndex: number, nodeId: string, node: NodeDefinition, error: Error, context: DataContext) => Promise<void>;
|
|
38
54
|
/**
|
|
39
55
|
* Called when execution pauses (breakpoint hit or manual pause)
|
|
56
|
+
* @param executionIndex - The unique execution index for the current node execution (0, 1, 2, ...)
|
|
57
|
+
* @param nodeId - The ID of the node where execution paused
|
|
58
|
+
* @param context - The data context available at the point of pause (same as what nodes see for JSONata/JSON Logic)
|
|
40
59
|
*/
|
|
41
|
-
onPause?: (nodeId: string, context:
|
|
60
|
+
onPause?: (executionIndex: number, nodeId: string, context: DataContext) => Promise<void>;
|
|
42
61
|
/**
|
|
43
62
|
* Called when execution resumes
|
|
44
63
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/types/execution.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,14 +26,14 @@ const api = new McpGraphApi('config.yaml');
|
|
|
26
26
|
const { promise, controller } = api.executeTool('count_files', {
|
|
27
27
|
directory: './tests/files'
|
|
28
28
|
}, {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
29
|
+
hooks: {
|
|
30
|
+
onNodeStart: async (executionIndex, nodeId, node) => {
|
|
31
|
+
console.log(`Starting node: ${nodeId} (${node.type}) at execution index ${executionIndex}`);
|
|
32
|
+
},
|
|
33
|
+
onNodeComplete: async (executionIndex, nodeId, node, input, output, duration) => {
|
|
34
|
+
console.log(`Node ${nodeId} (execution ${executionIndex}) completed in ${duration}ms`);
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
37
|
enableTelemetry: true
|
|
38
38
|
});
|
|
39
39
|
|
|
@@ -62,39 +62,64 @@ All hooks are async functions that return Promises:
|
|
|
62
62
|
interface ExecutionHooks {
|
|
63
63
|
/**
|
|
64
64
|
* Called before a node executes
|
|
65
|
-
*
|
|
65
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
66
|
+
* @param nodeId - The ID of the node being executed
|
|
67
|
+
* @param node - The node definition
|
|
68
|
+
* @param context - The data context available to the node (same as what nodes see for JSONata/JSON Logic evaluation)
|
|
69
|
+
* @returns Return false to pause execution (acts as a breakpoint)
|
|
66
70
|
*/
|
|
67
71
|
onNodeStart?: (
|
|
72
|
+
executionIndex: number,
|
|
68
73
|
nodeId: string,
|
|
69
74
|
node: NodeDefinition,
|
|
70
|
-
context:
|
|
75
|
+
context: Record<string, unknown>
|
|
71
76
|
) => Promise<boolean>;
|
|
72
77
|
|
|
73
78
|
/**
|
|
74
79
|
* Called after a node completes successfully
|
|
80
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
81
|
+
* @param nodeId - The ID of the node that completed
|
|
82
|
+
* @param node - The node definition
|
|
83
|
+
* @param input - The data context available to the node when it started (same as what nodes see for JSONata/JSON Logic evaluation)
|
|
84
|
+
* @param output - The output from the node
|
|
85
|
+
* @param duration - The duration of the node execution in milliseconds
|
|
75
86
|
*/
|
|
76
87
|
onNodeComplete?: (
|
|
88
|
+
executionIndex: number,
|
|
77
89
|
nodeId: string,
|
|
78
90
|
node: NodeDefinition,
|
|
79
|
-
input: unknown
|
|
91
|
+
input: Record<string, unknown>,
|
|
80
92
|
output: unknown,
|
|
81
93
|
duration: number
|
|
82
94
|
) => Promise<void>;
|
|
83
95
|
|
|
84
96
|
/**
|
|
85
97
|
* Called when a node encounters an error
|
|
98
|
+
* @param executionIndex - The unique execution index for this node execution (0, 1, 2, ...)
|
|
99
|
+
* @param nodeId - The ID of the node that encountered the error
|
|
100
|
+
* @param node - The node definition
|
|
101
|
+
* @param error - The error that occurred
|
|
102
|
+
* @param context - The data context available to the node at the time of error (same as what nodes see for JSONata/JSON Logic evaluation)
|
|
86
103
|
*/
|
|
87
104
|
onNodeError?: (
|
|
105
|
+
executionIndex: number,
|
|
88
106
|
nodeId: string,
|
|
89
107
|
node: NodeDefinition,
|
|
90
108
|
error: Error,
|
|
91
|
-
context:
|
|
109
|
+
context: Record<string, unknown>
|
|
92
110
|
) => Promise<void>;
|
|
93
111
|
|
|
94
112
|
/**
|
|
95
113
|
* Called when execution pauses (breakpoint hit or manual pause)
|
|
114
|
+
* @param executionIndex - The unique execution index for the current node execution (0, 1, 2, ...)
|
|
115
|
+
* @param nodeId - The ID of the node where execution paused
|
|
116
|
+
* @param context - The data context available at the point of pause (same as what nodes see for JSONata/JSON Logic evaluation)
|
|
96
117
|
*/
|
|
97
|
-
onPause?: (
|
|
118
|
+
onPause?: (
|
|
119
|
+
executionIndex: number,
|
|
120
|
+
nodeId: string,
|
|
121
|
+
context: Record<string, unknown>
|
|
122
|
+
) => Promise<void>;
|
|
98
123
|
|
|
99
124
|
/**
|
|
100
125
|
* Called when execution resumes
|
|
@@ -110,21 +135,23 @@ All hooks are async functions. If you don't need async operations, you can simpl
|
|
|
110
135
|
```typescript
|
|
111
136
|
const hooks: ExecutionHooks = {
|
|
112
137
|
// Async function - no await needed if you don't have async operations
|
|
113
|
-
onNodeStart: async (nodeId, node, context) => {
|
|
138
|
+
onNodeStart: async (executionIndex, nodeId, node, context) => {
|
|
114
139
|
// Update UI synchronously
|
|
115
140
|
updateNodeStatus(nodeId, 'running');
|
|
116
141
|
highlightNode(nodeId);
|
|
142
|
+
// executionIndex uniquely identifies this execution instance (important for loops)
|
|
117
143
|
return true; // Continue execution
|
|
118
144
|
},
|
|
119
145
|
|
|
120
146
|
// Async function - can use await if needed
|
|
121
|
-
onNodeComplete: async (nodeId, node, input, output, duration) => {
|
|
147
|
+
onNodeComplete: async (executionIndex, nodeId, node, input, output, duration) => {
|
|
122
148
|
// Update UI synchronously
|
|
123
149
|
updateNodeResult(nodeId, {
|
|
124
150
|
input,
|
|
125
151
|
output,
|
|
126
152
|
duration,
|
|
127
|
-
status: 'completed'
|
|
153
|
+
status: 'completed',
|
|
154
|
+
executionIndex // Track which execution instance this was
|
|
128
155
|
});
|
|
129
156
|
updateNodeVisualization(nodeId, output);
|
|
130
157
|
|
|
@@ -132,10 +159,11 @@ const hooks: ExecutionHooks = {
|
|
|
132
159
|
// await logToServer(nodeId, output);
|
|
133
160
|
},
|
|
134
161
|
|
|
135
|
-
onNodeError: async (nodeId, node, error, context) => {
|
|
162
|
+
onNodeError: async (executionIndex, nodeId, node, error, context) => {
|
|
136
163
|
// Error handling
|
|
137
164
|
showError(nodeId, error);
|
|
138
165
|
updateNodeStatus(nodeId, 'error');
|
|
166
|
+
// executionIndex can be used to get context: api.getContextForExecution(executionIndex)
|
|
139
167
|
}
|
|
140
168
|
};
|
|
141
169
|
|
|
@@ -214,8 +242,8 @@ interface ExecutionController {
|
|
|
214
242
|
|
|
215
243
|
```typescript
|
|
216
244
|
const hooks: ExecutionHooks = {
|
|
217
|
-
onPause: async (nodeId, context) => {
|
|
218
|
-
console.log(`Paused at node: ${nodeId}`);
|
|
245
|
+
onPause: async (executionIndex, nodeId, context) => {
|
|
246
|
+
console.log(`Paused at node: ${nodeId} (execution index: ${executionIndex})`);
|
|
219
247
|
// Show debugger UI
|
|
220
248
|
showDebuggerUI();
|
|
221
249
|
},
|
|
@@ -290,8 +318,9 @@ if (controller) {
|
|
|
290
318
|
|
|
291
319
|
```typescript
|
|
292
320
|
const hooks: ExecutionHooks = {
|
|
293
|
-
onNodeStart: async (nodeId, node, context) => {
|
|
321
|
+
onNodeStart: async (executionIndex, nodeId, node, context) => {
|
|
294
322
|
// Conditional breakpoint logic
|
|
323
|
+
// executionIndex can be used to identify specific execution instances in loops
|
|
295
324
|
if (shouldBreak(nodeId, context)) {
|
|
296
325
|
return false; // Pause execution
|
|
297
326
|
}
|
|
@@ -499,26 +528,29 @@ class GraphVisualizer {
|
|
|
499
528
|
|
|
500
529
|
async executeWithVisualization(toolName: string, args: Record<string, unknown>) {
|
|
501
530
|
const hooks: ExecutionHooks = {
|
|
502
|
-
onNodeStart: async (nodeId, node, context) => {
|
|
531
|
+
onNodeStart: async (executionIndex, nodeId, node, context) => {
|
|
503
532
|
this.updateNodeStatus(nodeId, 'running');
|
|
504
533
|
this.highlightNode(nodeId);
|
|
534
|
+
// executionIndex uniquely identifies this execution (important for loops)
|
|
505
535
|
return true;
|
|
506
536
|
},
|
|
507
537
|
|
|
508
|
-
onNodeComplete: async (nodeId, node, input, output, duration) => {
|
|
538
|
+
onNodeComplete: async (executionIndex, nodeId, node, input, output, duration) => {
|
|
509
539
|
this.updateNodeStatus(nodeId, 'completed');
|
|
510
|
-
this.updateNodeData(nodeId, { input, output, duration });
|
|
540
|
+
this.updateNodeData(nodeId, { input, output, duration, executionIndex });
|
|
511
541
|
this.unhighlightNode(nodeId);
|
|
512
542
|
},
|
|
513
543
|
|
|
514
|
-
onNodeError: async (nodeId, node, error, context) => {
|
|
544
|
+
onNodeError: async (executionIndex, nodeId, node, error, context) => {
|
|
515
545
|
this.updateNodeStatus(nodeId, 'error');
|
|
516
546
|
this.showError(nodeId, error);
|
|
547
|
+
// Can use executionIndex to get context: api.getContextForExecution(executionIndex)
|
|
517
548
|
},
|
|
518
549
|
|
|
519
|
-
onPause: async (nodeId, context) => {
|
|
550
|
+
onPause: async (executionIndex, nodeId, context) => {
|
|
520
551
|
this.showDebuggerControls();
|
|
521
552
|
this.updateExecutionStatus('paused');
|
|
553
|
+
// executionIndex identifies which execution instance is paused
|
|
522
554
|
},
|
|
523
555
|
|
|
524
556
|
onResume: async () => {
|