@n8n/expression-runtime 0.8.0 → 0.9.1
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/dist/bundle/runtime.esm.js +15 -15
- package/dist/bundle/runtime.esm.js.map +4 -4
- package/dist/bundle/runtime.iife.js +15 -15
- package/dist/bundle/runtime.iife.js.map +4 -4
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts +40 -34
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/cjs/bridge/isolated-vm-bridge.js +97 -154
- package/dist/cjs/bridge/isolated-vm-bridge.js.map +1 -1
- package/dist/cjs/build.tsbuildinfo +1 -1
- package/dist/cjs/evaluator/expression-evaluator.d.ts.map +1 -1
- package/dist/cjs/evaluator/expression-evaluator.js +5 -4
- package/dist/cjs/evaluator/expression-evaluator.js.map +1 -1
- package/dist/cjs/extensions/function-extensions.d.ts.map +1 -1
- package/dist/cjs/extensions/function-extensions.js +8 -5
- package/dist/cjs/extensions/function-extensions.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/pool/isolate-pool.d.ts +3 -2
- package/dist/cjs/pool/isolate-pool.d.ts.map +1 -1
- package/dist/cjs/pool/isolate-pool.js +5 -4
- package/dist/cjs/pool/isolate-pool.js.map +1 -1
- package/dist/cjs/runtime/context.d.ts +18 -0
- package/dist/cjs/runtime/context.d.ts.map +1 -0
- package/dist/cjs/runtime/{reset.js → context.js} +93 -114
- package/dist/cjs/runtime/context.js.map +1 -0
- package/dist/cjs/runtime/index.d.ts +1 -28
- package/dist/cjs/runtime/index.d.ts.map +1 -1
- package/dist/cjs/runtime/index.js +3 -5
- package/dist/cjs/runtime/index.js.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.d.ts +9 -3
- package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.js +19 -13
- package/dist/cjs/runtime/lazy-proxy.js.map +1 -1
- package/dist/esm/bridge/isolated-vm-bridge.d.ts +40 -34
- package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/esm/bridge/isolated-vm-bridge.js +97 -154
- package/dist/esm/bridge/isolated-vm-bridge.js.map +1 -1
- package/dist/esm/build.tsbuildinfo +1 -1
- package/dist/esm/evaluator/expression-evaluator.d.ts.map +1 -1
- package/dist/esm/evaluator/expression-evaluator.js +4 -3
- package/dist/esm/evaluator/expression-evaluator.js.map +1 -1
- package/dist/esm/extensions/function-extensions.d.ts.map +1 -1
- package/dist/esm/extensions/function-extensions.js +8 -5
- package/dist/esm/extensions/function-extensions.js.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/pool/isolate-pool.d.ts +3 -2
- package/dist/esm/pool/isolate-pool.d.ts.map +1 -1
- package/dist/esm/pool/isolate-pool.js +4 -3
- package/dist/esm/pool/isolate-pool.js.map +1 -1
- package/dist/esm/runtime/context.d.ts +18 -0
- package/dist/esm/runtime/context.d.ts.map +1 -0
- package/dist/esm/runtime/{reset.js → context.js} +92 -113
- package/dist/esm/runtime/context.js.map +1 -0
- package/dist/esm/runtime/index.d.ts +1 -28
- package/dist/esm/runtime/index.d.ts.map +1 -1
- package/dist/esm/runtime/index.js +2 -4
- package/dist/esm/runtime/index.js.map +1 -1
- package/dist/esm/runtime/lazy-proxy.d.ts +9 -3
- package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/esm/runtime/lazy-proxy.js +19 -13
- package/dist/esm/runtime/lazy-proxy.js.map +1 -1
- package/package.json +5 -4
- package/dist/cjs/runtime/reset.d.ts +0 -16
- package/dist/cjs/runtime/reset.d.ts.map +0 -1
- package/dist/cjs/runtime/reset.js.map +0 -1
- package/dist/esm/runtime/reset.d.ts +0 -16
- package/dist/esm/runtime/reset.d.ts.map +0 -1
- package/dist/esm/runtime/reset.js.map +0 -1
|
@@ -17,11 +17,6 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
|
|
|
17
17
|
private disposed;
|
|
18
18
|
private config;
|
|
19
19
|
private logger;
|
|
20
|
-
private scriptCache;
|
|
21
|
-
private valueAtPathRef?;
|
|
22
|
-
private arrayElementRef?;
|
|
23
|
-
private callFunctionRef?;
|
|
24
|
-
private resetDataProxiesRef?;
|
|
25
20
|
constructor(config?: BridgeConfig);
|
|
26
21
|
/**
|
|
27
22
|
* Initialize the isolate and create execution context.
|
|
@@ -42,7 +37,7 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
|
|
|
42
37
|
* - DateTime, extend, extendOptional (expression engine globals)
|
|
43
38
|
* - SafeObject and SafeError wrappers
|
|
44
39
|
* - createDeepLazyProxy function
|
|
45
|
-
* -
|
|
40
|
+
* - buildContext function
|
|
46
41
|
*
|
|
47
42
|
* @private
|
|
48
43
|
* @throws {Error} If context not initialized or bundle loading fails
|
|
@@ -61,56 +56,67 @@ export declare class IsolatedVmBridge implements RuntimeBridge {
|
|
|
61
56
|
/**
|
|
62
57
|
* Inject the E() error handler into the isolate context.
|
|
63
58
|
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
* -
|
|
68
|
-
*
|
|
59
|
+
* There are two exception-handling layers inside the isolate:
|
|
60
|
+
*
|
|
61
|
+
* 1. **Inner layer (this handler, `E()`)** — Tournament wraps each
|
|
62
|
+
* expression with try-catch that calls `E(error, this)`. This handler
|
|
63
|
+
* must match the legacy engine's behavior (set in expression.ts via
|
|
64
|
+
* setErrorHandler):
|
|
65
|
+
* - Re-throw ExpressionError / ExpressionExtensionError
|
|
66
|
+
* - Swallow everything else (TypeErrors, generic Errors, etc.)
|
|
67
|
+
*
|
|
68
|
+
* 2. **Outer layer (`wrappedCode` try-catch in `execute()`)** — Catches
|
|
69
|
+
* anything that escaped `E()` (e.g. re-thrown ExpressionErrors) and
|
|
70
|
+
* serializes it into a sentinel object so the host can reconstruct it.
|
|
71
|
+
*
|
|
72
|
+
* Inside the isolate, errors from host callbacks arrive as sentinel
|
|
73
|
+
* objects ({ __isError, name, message, ... }) rather than class instances,
|
|
74
|
+
* so we match by name instead of instanceof.
|
|
69
75
|
*
|
|
70
76
|
* @private
|
|
71
77
|
* @throws {Error} If context not initialized
|
|
72
78
|
*/
|
|
73
79
|
private injectErrorHandler;
|
|
74
80
|
/**
|
|
75
|
-
*
|
|
81
|
+
* Create an ivm.Reference callback for getting value/metadata at a path.
|
|
76
82
|
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* 2. Initialize fresh workflow data references
|
|
80
|
-
* 3. Expose workflow properties to globalThis
|
|
81
|
-
*
|
|
82
|
-
* The reset function runs in the isolate and calls back to the host
|
|
83
|
-
* via ivm.Reference callbacks to fetch workflow data.
|
|
83
|
+
* Used by createDeepLazyProxy when accessing properties. Returns metadata
|
|
84
|
+
* markers for functions, arrays, and objects, or the primitive value directly.
|
|
84
85
|
*
|
|
86
|
+
* @param data - Current workflow data to use for callback responses
|
|
85
87
|
* @private
|
|
86
|
-
* @throws {Error} If context not initialized or reset fails
|
|
87
88
|
*/
|
|
88
|
-
private
|
|
89
|
+
private createGetValueAtPathRef;
|
|
89
90
|
/**
|
|
90
|
-
*
|
|
91
|
+
* Create an ivm.Reference callback for getting array elements at an index.
|
|
91
92
|
*
|
|
92
|
-
*
|
|
93
|
-
* to fetch data from the host process:
|
|
93
|
+
* Used by array proxy when accessing numeric indices.
|
|
94
94
|
*
|
|
95
|
-
* -
|
|
96
|
-
*
|
|
97
|
-
|
|
95
|
+
* @param data - Current workflow data to use for callback responses
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
private createGetArrayElementRef;
|
|
99
|
+
/**
|
|
100
|
+
* Create an ivm.Reference callback for calling functions at a path.
|
|
98
101
|
*
|
|
99
|
-
*
|
|
102
|
+
* Used when expressions invoke functions from workflow data.
|
|
100
103
|
*
|
|
101
104
|
* @param data - Current workflow data to use for callback responses
|
|
102
105
|
* @private
|
|
103
106
|
*/
|
|
104
|
-
private
|
|
107
|
+
private createCallFunctionAtPathRef;
|
|
105
108
|
/**
|
|
106
109
|
* Execute JavaScript code in the isolated context.
|
|
107
110
|
*
|
|
108
111
|
* Flow:
|
|
109
|
-
* 1.
|
|
110
|
-
* 2.
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
*
|
|
112
|
+
* 1. Create three ivm.Reference callbacks scoped to the current data
|
|
113
|
+
* 2. Use evalClosureSync to run the code in a closure where $0/$1/$2
|
|
114
|
+
* are the callback references — no global mutable state
|
|
115
|
+
* 3. buildContext() inside the isolate creates a fresh evaluation context
|
|
116
|
+
* from the closure-scoped references
|
|
117
|
+
*
|
|
118
|
+
* Each call gets its own closure, so nested and concurrent evaluations
|
|
119
|
+
* cannot interfere with each other.
|
|
114
120
|
*
|
|
115
121
|
* @param code - JavaScript expression to evaluate
|
|
116
122
|
* @param data - Workflow data (e.g., { $json: {...}, $runIndex: 0 })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolated-vm-bridge.d.ts","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AA0E5E;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAAmC;
|
|
1
|
+
{"version":3,"file":"isolated-vm-bridge.d.ts","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AA0E5E;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,MAAM,CAAmC;gBAErC,MAAM,GAAE,YAAiB;IAYrC;;;;;;;;;;OAUG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BjC;;;;;;;;;;;OAWG;YACW,mBAAmB;IAgCjC;;;;;;;;OAQG;YACW,iBAAiB;IA4B/B;;;;;;;;;;;;;;;;;;;;;;OAsBG;YACW,kBAAkB;IAwBhC;;;;;;;;OAQG;IACH,OAAO,CAAC,uBAAuB;IAgE/B;;;;;;;OAOG;IACH,OAAO,CAAC,wBAAwB;IAyDhC;;;;;;;OAOG;IACH,OAAO,CAAC,2BAA2B;IAkCnC;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO;IAsFvF;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAexB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB9B;;;;OAIG;IACH,UAAU,IAAI,OAAO;CAGrB"}
|
|
@@ -119,18 +119,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
119
119
|
disposed = false;
|
|
120
120
|
config;
|
|
121
121
|
logger;
|
|
122
|
-
// Script compilation cache for performance
|
|
123
|
-
// Maps expression code -> compiled ivm.Script
|
|
124
|
-
scriptCache = new Map();
|
|
125
|
-
// Active ivm.Reference callbacks — released before each re-registration
|
|
126
|
-
// to prevent reference accumulation across execute() calls
|
|
127
|
-
valueAtPathRef;
|
|
128
|
-
arrayElementRef;
|
|
129
|
-
callFunctionRef;
|
|
130
|
-
// Pre-resolved reference to resetDataProxies() inside the isolate.
|
|
131
|
-
// Using applySync on a stored reference avoids the per-call
|
|
132
|
-
// ScriptCompiler::Compile() cost that evalSync incurs.
|
|
133
|
-
resetDataProxiesRef;
|
|
134
122
|
constructor(config = {}) {
|
|
135
123
|
this.config = {
|
|
136
124
|
...types_1.DEFAULT_BRIDGE_CONFIG,
|
|
@@ -170,10 +158,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
170
158
|
await this.verifyProxySystem();
|
|
171
159
|
// Inject E() error handler needed by tournament-generated try-catch code
|
|
172
160
|
await this.injectErrorHandler();
|
|
173
|
-
// Store a reference to resetDataProxies for efficient per-call invocation
|
|
174
|
-
this.resetDataProxiesRef = await this.context.global.get('resetDataProxies', {
|
|
175
|
-
reference: true,
|
|
176
|
-
});
|
|
177
161
|
this.initialized = true;
|
|
178
162
|
this.logger.info('[IsolatedVmBridge] Initialized successfully');
|
|
179
163
|
}
|
|
@@ -184,7 +168,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
184
168
|
* - DateTime, extend, extendOptional (expression engine globals)
|
|
185
169
|
* - SafeObject and SafeError wrappers
|
|
186
170
|
* - createDeepLazyProxy function
|
|
187
|
-
* -
|
|
171
|
+
* - buildContext function
|
|
188
172
|
*
|
|
189
173
|
* @private
|
|
190
174
|
* @throws {Error} If context not initialized or bundle loading fails
|
|
@@ -197,7 +181,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
197
181
|
// Load runtime bundle (includes vendor libraries + proxy system)
|
|
198
182
|
const runtimeBundle = await readRuntimeBundle();
|
|
199
183
|
// Evaluate bundle in isolate context
|
|
200
|
-
// This makes all exported globals available (DateTime, extend, extendOptional, SafeObject, SafeError, createDeepLazyProxy,
|
|
184
|
+
// This makes all exported globals available (DateTime, extend, extendOptional, SafeObject, SafeError, createDeepLazyProxy, buildContext)
|
|
201
185
|
await this.context.eval(runtimeBundle);
|
|
202
186
|
this.logger.info('[IsolatedVmBridge] Runtime bundle loaded');
|
|
203
187
|
// Verify vendor libraries loaded correctly
|
|
@@ -229,15 +213,14 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
229
213
|
try {
|
|
230
214
|
// Verify proxy system components loaded correctly
|
|
231
215
|
const hasProxyCreator = await this.context.eval('typeof createDeepLazyProxy !== "undefined"');
|
|
232
|
-
const hasData = await this.context.eval('typeof __data !== "undefined"');
|
|
233
216
|
const hasSafeObject = await this.context.eval('typeof SafeObject !== "undefined"');
|
|
234
217
|
const hasSafeError = await this.context.eval('typeof SafeError !== "undefined"');
|
|
235
|
-
const
|
|
236
|
-
if (!hasProxyCreator || !
|
|
218
|
+
const hasBuildContext = await this.context.eval('typeof buildContext !== "undefined"');
|
|
219
|
+
if (!hasProxyCreator || !hasSafeObject || !hasSafeError || !hasBuildContext) {
|
|
237
220
|
throw new Error(`Proxy system verification failed: ` +
|
|
238
|
-
`createDeepLazyProxy=${hasProxyCreator},
|
|
221
|
+
`createDeepLazyProxy=${hasProxyCreator}, ` +
|
|
239
222
|
`SafeObject=${hasSafeObject}, SafeError=${hasSafeError}, ` +
|
|
240
|
-
`
|
|
223
|
+
`buildContext=${hasBuildContext}`);
|
|
241
224
|
}
|
|
242
225
|
this.logger.info('[IsolatedVmBridge] Proxy system verified successfully');
|
|
243
226
|
}
|
|
@@ -249,11 +232,22 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
249
232
|
/**
|
|
250
233
|
* Inject the E() error handler into the isolate context.
|
|
251
234
|
*
|
|
252
|
-
*
|
|
253
|
-
*
|
|
254
|
-
*
|
|
255
|
-
* -
|
|
256
|
-
*
|
|
235
|
+
* There are two exception-handling layers inside the isolate:
|
|
236
|
+
*
|
|
237
|
+
* 1. **Inner layer (this handler, `E()`)** — Tournament wraps each
|
|
238
|
+
* expression with try-catch that calls `E(error, this)`. This handler
|
|
239
|
+
* must match the legacy engine's behavior (set in expression.ts via
|
|
240
|
+
* setErrorHandler):
|
|
241
|
+
* - Re-throw ExpressionError / ExpressionExtensionError
|
|
242
|
+
* - Swallow everything else (TypeErrors, generic Errors, etc.)
|
|
243
|
+
*
|
|
244
|
+
* 2. **Outer layer (`wrappedCode` try-catch in `execute()`)** — Catches
|
|
245
|
+
* anything that escaped `E()` (e.g. re-thrown ExpressionErrors) and
|
|
246
|
+
* serializes it into a sentinel object so the host can reconstruct it.
|
|
247
|
+
*
|
|
248
|
+
* Inside the isolate, errors from host callbacks arrive as sentinel
|
|
249
|
+
* objects ({ __isError, name, message, ... }) rather than class instances,
|
|
250
|
+
* so we match by name instead of instanceof.
|
|
257
251
|
*
|
|
258
252
|
* @private
|
|
259
253
|
* @throws {Error} If context not initialized
|
|
@@ -265,71 +259,31 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
265
259
|
await this.context.eval(`
|
|
266
260
|
if (typeof E === 'undefined') {
|
|
267
261
|
globalThis.E = function(error, _context) {
|
|
268
|
-
// Re-throw
|
|
269
|
-
|
|
262
|
+
// Re-throw ExpressionError / ExpressionExtensionError to match
|
|
263
|
+
// the legacy handler in expression.ts. Errors from host callbacks
|
|
264
|
+
// arrive as sentinels (not class instances), so check by name.
|
|
265
|
+
const name = error?.name;
|
|
266
|
+
if (name === 'ExpressionError' || name === 'ExpressionExtensionError') {
|
|
270
267
|
throw error;
|
|
271
268
|
}
|
|
272
|
-
// Swallow
|
|
273
|
-
|
|
274
|
-
return undefined;
|
|
275
|
-
}
|
|
276
|
-
throw error;
|
|
269
|
+
// Swallow everything else (TypeErrors, generic Errors, etc.)
|
|
270
|
+
return undefined;
|
|
277
271
|
};
|
|
278
272
|
}
|
|
279
273
|
`);
|
|
280
274
|
this.logger.info('[IsolatedVmBridge] Error handler injected successfully');
|
|
281
275
|
}
|
|
282
276
|
/**
|
|
283
|
-
*
|
|
284
|
-
*
|
|
285
|
-
* This method should be called before each execute() to:
|
|
286
|
-
* 1. Clear proxy caches from previous evaluations
|
|
287
|
-
* 2. Initialize fresh workflow data references
|
|
288
|
-
* 3. Expose workflow properties to globalThis
|
|
289
|
-
*
|
|
290
|
-
* The reset function runs in the isolate and calls back to the host
|
|
291
|
-
* via ivm.Reference callbacks to fetch workflow data.
|
|
292
|
-
*
|
|
293
|
-
* @private
|
|
294
|
-
* @throws {Error} If context not initialized or reset fails
|
|
295
|
-
*/
|
|
296
|
-
resetDataProxies(timezone) {
|
|
297
|
-
if (!this.resetDataProxiesRef) {
|
|
298
|
-
throw new Error('Context not initialized');
|
|
299
|
-
}
|
|
300
|
-
try {
|
|
301
|
-
this.resetDataProxiesRef.applySync(null, [timezone ?? null], {
|
|
302
|
-
arguments: { copy: true },
|
|
303
|
-
});
|
|
304
|
-
this.logger.debug('[IsolatedVmBridge] Data proxies reset successfully');
|
|
305
|
-
}
|
|
306
|
-
catch (error) {
|
|
307
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
308
|
-
throw new Error(`Failed to reset data proxies: ${errorMessage}`);
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
/**
|
|
312
|
-
* Register callback functions for cross-isolate communication.
|
|
313
|
-
*
|
|
314
|
-
* Creates three ivm.Reference callbacks that the runtime bundle uses
|
|
315
|
-
* to fetch data from the host process:
|
|
277
|
+
* Create an ivm.Reference callback for getting value/metadata at a path.
|
|
316
278
|
*
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
* - __callFunctionAtPath: Executes functions in host context
|
|
320
|
-
*
|
|
321
|
-
* These callbacks are called synchronously from isolate proxy traps.
|
|
279
|
+
* Used by createDeepLazyProxy when accessing properties. Returns metadata
|
|
280
|
+
* markers for functions, arrays, and objects, or the primitive value directly.
|
|
322
281
|
*
|
|
323
282
|
* @param data - Current workflow data to use for callback responses
|
|
324
283
|
* @private
|
|
325
284
|
*/
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
throw new Error('Context not initialized');
|
|
329
|
-
}
|
|
330
|
-
// Callback 1: Get value/metadata at path
|
|
331
|
-
// Used by createDeepLazyProxy when accessing properties
|
|
332
|
-
const getValueAtPath = new (getIvm().Reference)((path) => {
|
|
285
|
+
createGetValueAtPathRef(data) {
|
|
286
|
+
return new (getIvm().Reference)((path) => {
|
|
333
287
|
try {
|
|
334
288
|
// Navigate to value
|
|
335
289
|
// Special-case: paths starting with ['$item', index] call data.$item(index)
|
|
@@ -388,9 +342,17 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
388
342
|
return serializeError(err);
|
|
389
343
|
}
|
|
390
344
|
});
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Create an ivm.Reference callback for getting array elements at an index.
|
|
348
|
+
*
|
|
349
|
+
* Used by array proxy when accessing numeric indices.
|
|
350
|
+
*
|
|
351
|
+
* @param data - Current workflow data to use for callback responses
|
|
352
|
+
* @private
|
|
353
|
+
*/
|
|
354
|
+
createGetArrayElementRef(data) {
|
|
355
|
+
return new (getIvm().Reference)((path, index) => {
|
|
394
356
|
try {
|
|
395
357
|
// Navigate to array
|
|
396
358
|
// Special-case: paths starting with ['$item', index] call data.$item(index)
|
|
@@ -442,9 +404,17 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
442
404
|
return serializeError(err);
|
|
443
405
|
}
|
|
444
406
|
});
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Create an ivm.Reference callback for calling functions at a path.
|
|
410
|
+
*
|
|
411
|
+
* Used when expressions invoke functions from workflow data.
|
|
412
|
+
*
|
|
413
|
+
* @param data - Current workflow data to use for callback responses
|
|
414
|
+
* @private
|
|
415
|
+
*/
|
|
416
|
+
createCallFunctionAtPathRef(data) {
|
|
417
|
+
return new (getIvm().Reference)((path, ...args) => {
|
|
448
418
|
try {
|
|
449
419
|
// Navigate to function, tracking parent to preserve `this` context
|
|
450
420
|
let fn = data;
|
|
@@ -473,29 +443,19 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
473
443
|
return serializeError(err);
|
|
474
444
|
}
|
|
475
445
|
});
|
|
476
|
-
// Release previous references before replacing to avoid accumulation
|
|
477
|
-
this.valueAtPathRef?.release();
|
|
478
|
-
this.arrayElementRef?.release();
|
|
479
|
-
this.callFunctionRef?.release();
|
|
480
|
-
// Store references so they can be released on the next call or on dispose()
|
|
481
|
-
this.valueAtPathRef = getValueAtPath;
|
|
482
|
-
this.arrayElementRef = getArrayElement;
|
|
483
|
-
this.callFunctionRef = callFunctionAtPath;
|
|
484
|
-
// Register all callbacks in isolate global context
|
|
485
|
-
this.context.global.setSync('__getValueAtPath', getValueAtPath);
|
|
486
|
-
this.context.global.setSync('__getArrayElement', getArrayElement);
|
|
487
|
-
this.context.global.setSync('__callFunctionAtPath', callFunctionAtPath);
|
|
488
|
-
this.logger.debug('[IsolatedVmBridge] Callbacks registered successfully');
|
|
489
446
|
}
|
|
490
447
|
/**
|
|
491
448
|
* Execute JavaScript code in the isolated context.
|
|
492
449
|
*
|
|
493
450
|
* Flow:
|
|
494
|
-
* 1.
|
|
495
|
-
* 2.
|
|
496
|
-
*
|
|
497
|
-
*
|
|
498
|
-
*
|
|
451
|
+
* 1. Create three ivm.Reference callbacks scoped to the current data
|
|
452
|
+
* 2. Use evalClosureSync to run the code in a closure where $0/$1/$2
|
|
453
|
+
* are the callback references — no global mutable state
|
|
454
|
+
* 3. buildContext() inside the isolate creates a fresh evaluation context
|
|
455
|
+
* from the closure-scoped references
|
|
456
|
+
*
|
|
457
|
+
* Each call gets its own closure, so nested and concurrent evaluations
|
|
458
|
+
* cannot interfere with each other.
|
|
499
459
|
*
|
|
500
460
|
* @param code - JavaScript expression to evaluate
|
|
501
461
|
* @param data - Workflow data (e.g., { $json: {...}, $runIndex: 0 })
|
|
@@ -506,59 +466,42 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
506
466
|
if (!this.initialized || !this.context) {
|
|
507
467
|
throw new Error('Bridge not initialized. Call initialize() first.');
|
|
508
468
|
}
|
|
469
|
+
const getValueAtPath = this.createGetValueAtPathRef(data);
|
|
470
|
+
const getArrayElement = this.createGetArrayElementRef(data);
|
|
471
|
+
const callFunctionAtPath = this.createCallFunctionAtPathRef(data);
|
|
509
472
|
try {
|
|
510
|
-
|
|
511
|
-
this.
|
|
512
|
-
// Step 2: Reset proxies for this evaluation
|
|
513
|
-
// This initializes $json, $binary, etc. as lazy proxies
|
|
514
|
-
this.resetDataProxies(options?.timezone);
|
|
515
|
-
// Step 3: Wrap transformed code so 'this' === __data in the isolate.
|
|
473
|
+
const timezone = options?.timezone ? JSON.stringify(options.timezone) : 'undefined';
|
|
474
|
+
// Wrap transformed code so 'this' === the closure-scoped context.
|
|
516
475
|
// Tournament generates: this.$json.email, this.$items(), etc.
|
|
517
|
-
//
|
|
476
|
+
// buildContext() creates a fresh context with lazy proxies from the
|
|
477
|
+
// closure-scoped callback references ($0, $1, $2) — no globals touched.
|
|
518
478
|
// The outer try-catch serializes errors into a sentinel object and returns
|
|
519
479
|
// it as the result. Errors from host callbacks arrive as sentinels already
|
|
520
480
|
// (via serializeError), so we pass them through. This avoids a round-trip
|
|
521
481
|
// callback and keeps Error reconstruction on the host side only.
|
|
522
482
|
const wrappedCode = `
|
|
523
|
-
(
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
}
|
|
536
|
-
return {
|
|
537
|
-
__isError: true,
|
|
538
|
-
name: e.name || "Error",
|
|
539
|
-
message: e.message || "",
|
|
540
|
-
stack: e.stack || "",
|
|
541
|
-
extra: extra
|
|
542
|
-
};
|
|
483
|
+
var __ctx = buildContext($0, $1, $2, ${timezone});
|
|
484
|
+
try {
|
|
485
|
+
var __result = (function() {
|
|
486
|
+
${code}
|
|
487
|
+
}).call(__ctx);
|
|
488
|
+
return __prepareForTransfer(__result);
|
|
489
|
+
} catch(e) {
|
|
490
|
+
if (e && e.__isError) return e;
|
|
491
|
+
if (e == null) return { __isError: true, name: "Error", message: String(e), stack: "", extra: {} };
|
|
492
|
+
var extra = {};
|
|
493
|
+
for (var k in e) {
|
|
494
|
+
if (Object.prototype.hasOwnProperty.call(e, k) && k !== "name" && k !== "message" && k !== "stack") extra[k] = e[k];
|
|
543
495
|
}
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
this.scriptCache.set(code, script);
|
|
554
|
-
this.logger.debug('[IsolatedVmBridge] Script compiled and cached');
|
|
555
|
-
}
|
|
556
|
-
// Step 5: Execute with timeout and copy result back
|
|
557
|
-
const result = script.runSync(this.context, {
|
|
558
|
-
timeout: this.config.timeout,
|
|
559
|
-
copy: true,
|
|
560
|
-
});
|
|
561
|
-
// Step 6: If the result is an error sentinel, reconstruct and throw
|
|
496
|
+
return {
|
|
497
|
+
__isError: true,
|
|
498
|
+
name: e.name || "Error",
|
|
499
|
+
message: e.message || "",
|
|
500
|
+
stack: e.stack || "",
|
|
501
|
+
extra: extra
|
|
502
|
+
};
|
|
503
|
+
}`;
|
|
504
|
+
const result = this.context.evalClosureSync(wrappedCode, [getValueAtPath, getArrayElement, callFunctionAtPath], { result: { copy: true }, timeout: this.config.timeout });
|
|
562
505
|
if (isErrorSentinel(result)) {
|
|
563
506
|
throw this.reconstructError(result);
|
|
564
507
|
}
|
|
@@ -584,6 +527,11 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
584
527
|
}
|
|
585
528
|
throw new Error(`Expression evaluation failed: ${errorMessage}`);
|
|
586
529
|
}
|
|
530
|
+
finally {
|
|
531
|
+
getValueAtPath.release();
|
|
532
|
+
getArrayElement.release();
|
|
533
|
+
callFunctionAtPath.release();
|
|
534
|
+
}
|
|
587
535
|
}
|
|
588
536
|
/**
|
|
589
537
|
* Reconstruct an error from serialized isolate data.
|
|
@@ -616,13 +564,8 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
616
564
|
if (!this.isolate.isDisposed) {
|
|
617
565
|
this.isolate.dispose();
|
|
618
566
|
}
|
|
619
|
-
// Release callback references
|
|
620
|
-
this.valueAtPathRef?.release();
|
|
621
|
-
this.arrayElementRef?.release();
|
|
622
|
-
this.callFunctionRef?.release();
|
|
623
567
|
this.disposed = true;
|
|
624
568
|
this.initialized = false;
|
|
625
|
-
this.scriptCache.clear();
|
|
626
569
|
this.logger.info('[IsolatedVmBridge] Disposed');
|
|
627
570
|
}
|
|
628
571
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
|