@n8n/expression-runtime 0.5.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle/runtime.esm.js +16 -16
- package/dist/bundle/runtime.esm.js.map +3 -3
- package/dist/bundle/runtime.iife.js +16 -16
- package/dist/bundle/runtime.iife.js.map +3 -3
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/cjs/bridge/isolated-vm-bridge.js +25 -4
- 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 +10 -2
- package/dist/cjs/evaluator/expression-evaluator.js.map +1 -1
- package/dist/cjs/evaluator/lru-cache.d.ts +11 -0
- package/dist/cjs/evaluator/lru-cache.d.ts.map +1 -0
- package/dist/cjs/evaluator/lru-cache.js +50 -0
- package/dist/cjs/evaluator/lru-cache.js.map +1 -0
- package/dist/cjs/extensions/extend.d.ts.map +1 -1
- package/dist/cjs/extensions/extend.js +29 -0
- package/dist/cjs/extensions/extend.js.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.js +9 -0
- package/dist/cjs/runtime/lazy-proxy.js.map +1 -1
- package/dist/cjs/runtime/reset.d.ts.map +1 -1
- package/dist/cjs/runtime/reset.js +136 -2
- package/dist/cjs/runtime/reset.js.map +1 -1
- package/dist/cjs/runtime/safe-globals.d.ts +6 -4
- package/dist/cjs/runtime/safe-globals.d.ts.map +1 -1
- package/dist/cjs/runtime/safe-globals.js +47 -12
- package/dist/cjs/runtime/safe-globals.js.map +1 -1
- package/dist/cjs/types/evaluator.d.ts +4 -0
- package/dist/cjs/types/evaluator.d.ts.map +1 -1
- package/dist/cjs/types/evaluator.js.map +1 -1
- package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/esm/bridge/isolated-vm-bridge.js +25 -4
- 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 +9 -1
- package/dist/esm/evaluator/expression-evaluator.js.map +1 -1
- package/dist/esm/evaluator/lru-cache.d.ts +11 -0
- package/dist/esm/evaluator/lru-cache.d.ts.map +1 -0
- package/dist/esm/evaluator/lru-cache.js +36 -0
- package/dist/esm/evaluator/lru-cache.js.map +1 -0
- package/dist/esm/extensions/extend.d.ts.map +1 -1
- package/dist/esm/extensions/extend.js +29 -0
- package/dist/esm/extensions/extend.js.map +1 -1
- package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/esm/runtime/lazy-proxy.js +9 -0
- package/dist/esm/runtime/lazy-proxy.js.map +1 -1
- package/dist/esm/runtime/reset.d.ts.map +1 -1
- package/dist/esm/runtime/reset.js +137 -3
- package/dist/esm/runtime/reset.js.map +1 -1
- package/dist/esm/runtime/safe-globals.d.ts +6 -4
- package/dist/esm/runtime/safe-globals.d.ts.map +1 -1
- package/dist/esm/runtime/safe-globals.js +46 -12
- package/dist/esm/runtime/safe-globals.js.map +1 -1
- package/dist/esm/types/evaluator.d.ts +4 -0
- package/dist/esm/types/evaluator.d.ts.map +1 -1
- package/dist/esm/types/evaluator.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,13 +4,14 @@
|
|
|
4
4
|
if (v !== undefined) module.exports = v;
|
|
5
5
|
}
|
|
6
6
|
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define(["require", "exports", "@n8n/tournament"], factory);
|
|
7
|
+
define(["require", "exports", "@n8n/tournament", "./lru-cache"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.ExpressionEvaluator = void 0;
|
|
13
13
|
const tournament_1 = require("@n8n/tournament");
|
|
14
|
+
const lru_cache_1 = require("./lru-cache");
|
|
14
15
|
class ExpressionEvaluator {
|
|
15
16
|
config;
|
|
16
17
|
disposed = false;
|
|
@@ -18,9 +19,12 @@
|
|
|
18
19
|
tournament;
|
|
19
20
|
// Cache: template expression → tournament-transformed JavaScript code
|
|
20
21
|
// Cache hit rate in production: ~99.9% (same expressions repeat within a workflow)
|
|
21
|
-
codeCache
|
|
22
|
+
codeCache;
|
|
22
23
|
constructor(config) {
|
|
23
24
|
this.config = config;
|
|
25
|
+
this.codeCache = new lru_cache_1.LruCache(config.maxCodeCacheSize, () => {
|
|
26
|
+
this.config.observability?.metrics.counter('expression.code_cache.eviction', 1);
|
|
27
|
+
});
|
|
24
28
|
}
|
|
25
29
|
async initialize() {
|
|
26
30
|
await this.config.bridge.initialize();
|
|
@@ -58,8 +62,10 @@
|
|
|
58
62
|
getTransformedCode(expression) {
|
|
59
63
|
const cached = this.codeCache.get(expression);
|
|
60
64
|
if (cached !== undefined) {
|
|
65
|
+
this.config.observability?.metrics.counter('expression.code_cache.hit', 1);
|
|
61
66
|
return cached;
|
|
62
67
|
}
|
|
68
|
+
this.config.observability?.metrics.counter('expression.code_cache.miss', 1);
|
|
63
69
|
if (!this.tournament) {
|
|
64
70
|
// Tournament requires an errorHandler but we only use getExpressionCode()
|
|
65
71
|
// for AST transformation — we never call tournament.execute(), so this
|
|
@@ -73,11 +79,13 @@
|
|
|
73
79
|
}
|
|
74
80
|
const [transformedCode] = this.tournament.getExpressionCode(expression);
|
|
75
81
|
this.codeCache.set(expression, transformedCode);
|
|
82
|
+
this.config.observability?.metrics.gauge('expression.code_cache.size', this.codeCache.size);
|
|
76
83
|
return transformedCode;
|
|
77
84
|
}
|
|
78
85
|
async dispose() {
|
|
79
86
|
this.disposed = true;
|
|
80
87
|
this.codeCache.clear();
|
|
88
|
+
this.config.observability?.metrics.gauge('expression.code_cache.size', 0);
|
|
81
89
|
await this.config.bridge.dispose();
|
|
82
90
|
}
|
|
83
91
|
isDisposed() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-evaluator.js","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,gDAA6C;
|
|
1
|
+
{"version":3,"file":"expression-evaluator.js","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare class LruCache<K, V> {
|
|
2
|
+
private readonly capacity;
|
|
3
|
+
private readonly onEvict?;
|
|
4
|
+
private map;
|
|
5
|
+
constructor(capacity: number, onEvict?: ((key: K, value: V) => void) | undefined);
|
|
6
|
+
get(key: K): V | undefined;
|
|
7
|
+
set(key: K, value: V): void;
|
|
8
|
+
get size(): number;
|
|
9
|
+
clear(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=lru-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lru-cache.d.ts","sourceRoot":"","sources":["../../../src/evaluator/lru-cache.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAQ,CAAC,CAAC,EAAE,CAAC;IAIxB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAJ1B,OAAO,CAAC,GAAG,CAAmB;gBAGZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,GAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,aAAA;IAOtD,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAQ1B,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAU3B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,KAAK,IAAI,IAAI;CAGb"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.LruCache = void 0;
|
|
13
|
+
class LruCache {
|
|
14
|
+
capacity;
|
|
15
|
+
onEvict;
|
|
16
|
+
map = new Map();
|
|
17
|
+
constructor(capacity, onEvict) {
|
|
18
|
+
this.capacity = capacity;
|
|
19
|
+
this.onEvict = onEvict;
|
|
20
|
+
if (capacity < 1) {
|
|
21
|
+
throw new Error('LruCache capacity must be at least 1');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
get(key) {
|
|
25
|
+
const value = this.map.get(key);
|
|
26
|
+
if (value === undefined)
|
|
27
|
+
return undefined;
|
|
28
|
+
this.map.delete(key);
|
|
29
|
+
this.map.set(key, value);
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
set(key, value) {
|
|
33
|
+
this.map.delete(key);
|
|
34
|
+
this.map.set(key, value);
|
|
35
|
+
if (this.map.size > this.capacity) {
|
|
36
|
+
const [oldestKey, oldestValue] = this.map.entries().next().value;
|
|
37
|
+
this.map.delete(oldestKey);
|
|
38
|
+
this.onEvict?.(oldestKey, oldestValue);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
get size() {
|
|
42
|
+
return this.map.size;
|
|
43
|
+
}
|
|
44
|
+
clear() {
|
|
45
|
+
this.map.clear();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.LruCache = LruCache;
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=lru-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lru-cache.js","sourceRoot":"","sources":["../../../src/evaluator/lru-cache.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,MAAa,QAAQ;QAIF;QACA;QAJV,GAAG,GAAG,IAAI,GAAG,EAAQ,CAAC;QAE9B,YACkB,QAAgB,EAChB,OAAoC;YADpC,aAAQ,GAAR,QAAQ,CAAQ;YAChB,YAAO,GAAP,OAAO,CAA6B;YAErD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;QAED,GAAG,CAAC,GAAM;YACT,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,GAAG,CAAC,GAAM,EAAE,KAAQ;YACnB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACzB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC;gBAClE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC3B,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACxC,CAAC;QACF,CAAC;QAED,IAAI,IAAI;YACP,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QACtB,CAAC;QAED,KAAK;YACJ,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;KACD;IArCD,4BAqCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend.d.ts","sourceRoot":"","sources":["../../../src/extensions/extend.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAO3C,CAAC;
|
|
1
|
+
{"version":3,"file":"extend.d.ts","sourceRoot":"","sources":["../../../src/extensions/extend.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAejD,eAAO,MAAM,iBAAiB,EAAE,YAAY,EAO3C,CAAC;AAuGF;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAkC3E;AAED,wBAAgB,cAAc,CAC7B,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,GAElB,QAAQ,GAAG,SAAS,CAgBtB"}
|
|
@@ -50,7 +50,36 @@
|
|
|
50
50
|
const d = new Date(input);
|
|
51
51
|
return d instanceof Date && !isNaN(d.valueOf()) && d.toISOString() === input;
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Property names that must never be accessed via expression extensions.
|
|
55
|
+
* Matches the host-side blocklist in packages/workflow/src/utils.ts.
|
|
56
|
+
*/
|
|
57
|
+
const UNSAFE_PROPERTY_NAMES = new Set([
|
|
58
|
+
'__proto__',
|
|
59
|
+
'prototype',
|
|
60
|
+
'constructor',
|
|
61
|
+
'getPrototypeOf',
|
|
62
|
+
'mainModule',
|
|
63
|
+
'binding',
|
|
64
|
+
'_linkedBinding',
|
|
65
|
+
'_load',
|
|
66
|
+
'prepareStackTrace',
|
|
67
|
+
'__lookupGetter__',
|
|
68
|
+
'__lookupSetter__',
|
|
69
|
+
'__defineGetter__',
|
|
70
|
+
'__defineSetter__',
|
|
71
|
+
'caller',
|
|
72
|
+
'arguments',
|
|
73
|
+
'getBuiltinModule',
|
|
74
|
+
'dlopen',
|
|
75
|
+
'execve',
|
|
76
|
+
'loadEnvFile',
|
|
77
|
+
]);
|
|
53
78
|
function findExtendedFunction(input, functionName) {
|
|
79
|
+
const name = typeof functionName === 'string' ? functionName : String(functionName);
|
|
80
|
+
if (UNSAFE_PROPERTY_NAMES.has(name)) {
|
|
81
|
+
throw new expression_extension_error_1.ExpressionExtensionError(`Cannot access "${name}" via expression extension due to security concerns`);
|
|
82
|
+
}
|
|
54
83
|
// eslint-disable-next-line @typescript-eslint/no-restricted-types
|
|
55
84
|
let foundFunction;
|
|
56
85
|
if (Array.isArray(input)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../../src/extensions/extend.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../../src/extensions/extend.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy-proxy.d.ts","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"AAYA,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAEjD;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAE9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"lazy-proxy.d.ts","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"AAYA,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAEjD;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAE9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,GAAG,CAwJhE"}
|
|
@@ -98,6 +98,15 @@
|
|
|
98
98
|
// Handle arrays - metadata: { __isArray: true, __length: number }
|
|
99
99
|
if (value && typeof value === 'object' && value.__isArray) {
|
|
100
100
|
const arrayProxy = new Proxy([], {
|
|
101
|
+
has(arrTarget, arrProp) {
|
|
102
|
+
if (typeof arrProp === 'symbol')
|
|
103
|
+
return arrProp in arrTarget;
|
|
104
|
+
const index = Number(arrProp);
|
|
105
|
+
if (!isNaN(index) && index >= 0 && index < value.__length) {
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
return arrProp in arrTarget;
|
|
109
|
+
},
|
|
101
110
|
get(arrTarget, arrProp) {
|
|
102
111
|
// Symbols can't be transferred via isolated-vm; return undefined
|
|
103
112
|
if (typeof arrProp === 'symbol') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy-proxy.js","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAC/E,yCAAyC;AACzC,yFAAyF;;;;;;;;;;;;IASzF,kCAEC;IAGD,oCAEC;IAkBD,
|
|
1
|
+
{"version":3,"file":"lazy-proxy.js","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CA0JxD"}
|
|
@@ -15,6 +15,13 @@
|
|
|
15
15
|
const function_extensions_1 = require("../extensions/function-extensions");
|
|
16
16
|
const safe_globals_1 = require("./safe-globals");
|
|
17
17
|
const lazy_proxy_1 = require("./lazy-proxy");
|
|
18
|
+
// Pre-create safe error subclass wrappers (reused across evaluations)
|
|
19
|
+
const SafeTypeError = (0, safe_globals_1.createSafeErrorSubclass)(TypeError);
|
|
20
|
+
const SafeSyntaxError = (0, safe_globals_1.createSafeErrorSubclass)(SyntaxError);
|
|
21
|
+
const SafeEvalError = (0, safe_globals_1.createSafeErrorSubclass)(EvalError);
|
|
22
|
+
const SafeRangeError = (0, safe_globals_1.createSafeErrorSubclass)(RangeError);
|
|
23
|
+
const SafeReferenceError = (0, safe_globals_1.createSafeErrorSubclass)(ReferenceError);
|
|
24
|
+
const SafeURIError = (0, safe_globals_1.createSafeErrorSubclass)(URIError);
|
|
18
25
|
// ============================================================================
|
|
19
26
|
// Reset Function for Data Proxies
|
|
20
27
|
// ============================================================================
|
|
@@ -41,7 +48,15 @@
|
|
|
41
48
|
globalThis.__data = {};
|
|
42
49
|
// __sanitize must be on __data because PrototypeSanitizer generates:
|
|
43
50
|
// obj[this.__sanitize(expr)] where 'this' is __data (via .call(__data) wrapping)
|
|
44
|
-
|
|
51
|
+
// Use a non-writable property descriptor so override attempts throw instead of silently succeeding.
|
|
52
|
+
Object.defineProperty(globalThis.__data, '__sanitize', {
|
|
53
|
+
get: () => safe_globals_1.__sanitize,
|
|
54
|
+
set: () => {
|
|
55
|
+
throw new safe_globals_1.ExpressionError('Cannot override "__sanitize" due to security concerns');
|
|
56
|
+
},
|
|
57
|
+
enumerable: false,
|
|
58
|
+
configurable: false,
|
|
59
|
+
});
|
|
45
60
|
// Verify callbacks are available
|
|
46
61
|
// Note: ivm.Reference may not be typeof 'function', check for existence
|
|
47
62
|
if (!globalThis.__getValueAtPath) {
|
|
@@ -151,7 +166,126 @@
|
|
|
151
166
|
// pattern resolves them correctly when the VM checks __data first
|
|
152
167
|
globalThis.__data.extend = extend_1.extend;
|
|
153
168
|
globalThis.__data.extendOptional = extend_1.extendOptional;
|
|
154
|
-
//
|
|
169
|
+
// Wire builtins so tournament's VariablePolyfill resolves them from __data
|
|
170
|
+
initializeBuiltins(globalThis.__data);
|
|
171
|
+
// $item(itemIndex) returns a sub-proxy for the specified item (legacy syntax)
|
|
172
|
+
globalThis.__data.$item = function (itemIndex) {
|
|
173
|
+
const indexStr = String(itemIndex);
|
|
174
|
+
return {
|
|
175
|
+
$json: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$json']),
|
|
176
|
+
$binary: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$binary']),
|
|
177
|
+
};
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
// Matches initializeGlobalContext() lines 262-318 in packages/workflow/src/expression.ts
|
|
181
|
+
const DENYLISTED_GLOBALS = [
|
|
182
|
+
'document',
|
|
183
|
+
'global',
|
|
184
|
+
'window',
|
|
185
|
+
'Window',
|
|
186
|
+
'globalThis',
|
|
187
|
+
'self',
|
|
188
|
+
'alert',
|
|
189
|
+
'prompt',
|
|
190
|
+
'confirm',
|
|
191
|
+
'eval',
|
|
192
|
+
'uneval',
|
|
193
|
+
'setTimeout',
|
|
194
|
+
'setInterval',
|
|
195
|
+
'setImmediate',
|
|
196
|
+
'clearImmediate',
|
|
197
|
+
'queueMicrotask',
|
|
198
|
+
'Function',
|
|
199
|
+
'require',
|
|
200
|
+
'module',
|
|
201
|
+
'Buffer',
|
|
202
|
+
'__dirname',
|
|
203
|
+
'__filename',
|
|
204
|
+
'fetch',
|
|
205
|
+
'XMLHttpRequest',
|
|
206
|
+
'Promise',
|
|
207
|
+
'Generator',
|
|
208
|
+
'GeneratorFunction',
|
|
209
|
+
'AsyncFunction',
|
|
210
|
+
'AsyncGenerator',
|
|
211
|
+
'AsyncGeneratorFunction',
|
|
212
|
+
'WebAssembly',
|
|
213
|
+
'Reflect',
|
|
214
|
+
'Proxy',
|
|
215
|
+
'escape',
|
|
216
|
+
'unescape',
|
|
217
|
+
];
|
|
218
|
+
/**
|
|
219
|
+
* Wire builtins onto __data so tournament's VariablePolyfill resolves them.
|
|
220
|
+
*
|
|
221
|
+
* Tournament transforms `Object` → `("Object" in this ? this : window).Object`.
|
|
222
|
+
* `this` = __data. Without these entries on __data, builtins fall through to
|
|
223
|
+
* `window` which doesn't exist in the isolate, causing a ReferenceError.
|
|
224
|
+
*
|
|
225
|
+
* Mirrors Expression.initializeGlobalContext() in packages/workflow/src/expression.ts.
|
|
226
|
+
*/
|
|
227
|
+
function initializeBuiltins(data) {
|
|
228
|
+
// ── Denylist: dangerous globals → empty objects ──
|
|
229
|
+
for (const key of DENYLISTED_GLOBALS) {
|
|
230
|
+
data[key] = {};
|
|
231
|
+
}
|
|
232
|
+
data.__lookupGetter__ = undefined;
|
|
233
|
+
data.__lookupSetter__ = undefined;
|
|
234
|
+
data.__defineGetter__ = undefined;
|
|
235
|
+
data.__defineSetter__ = undefined;
|
|
236
|
+
// ── Allowlist: safe versions of builtins ──
|
|
237
|
+
// Object — use SafeObject wrapper from the runtime bundle
|
|
238
|
+
data.Object = globalThis.SafeObject;
|
|
239
|
+
// Error types — use SafeError and safe subclass wrappers
|
|
240
|
+
data.Error = globalThis.SafeError;
|
|
241
|
+
data.TypeError = SafeTypeError;
|
|
242
|
+
data.SyntaxError = SafeSyntaxError;
|
|
243
|
+
data.EvalError = SafeEvalError;
|
|
244
|
+
data.RangeError = SafeRangeError;
|
|
245
|
+
data.ReferenceError = SafeReferenceError;
|
|
246
|
+
data.URIError = SafeURIError;
|
|
247
|
+
// Arrays
|
|
248
|
+
data.Array = Array;
|
|
249
|
+
data.Int8Array = Int8Array;
|
|
250
|
+
data.Uint8Array = Uint8Array;
|
|
251
|
+
data.Uint8ClampedArray = Uint8ClampedArray;
|
|
252
|
+
data.Int16Array = Int16Array;
|
|
253
|
+
data.Uint16Array = Uint16Array;
|
|
254
|
+
data.Int32Array = Int32Array;
|
|
255
|
+
data.Uint32Array = Uint32Array;
|
|
256
|
+
data.Float32Array = Float32Array;
|
|
257
|
+
data.Float64Array = Float64Array;
|
|
258
|
+
data.BigInt64Array = typeof BigInt64Array !== 'undefined' ? BigInt64Array : {};
|
|
259
|
+
data.BigUint64Array = typeof BigUint64Array !== 'undefined' ? BigUint64Array : {};
|
|
260
|
+
// Collections
|
|
261
|
+
data.Map = Map;
|
|
262
|
+
data.WeakMap = WeakMap;
|
|
263
|
+
data.Set = Set;
|
|
264
|
+
data.WeakSet = WeakSet;
|
|
265
|
+
// Internationalization
|
|
266
|
+
data.Intl = typeof Intl !== 'undefined' ? Intl : {};
|
|
267
|
+
// Text
|
|
268
|
+
data.String = String;
|
|
269
|
+
// Numbers
|
|
270
|
+
data.Number = Number;
|
|
271
|
+
data.BigInt = typeof BigInt !== 'undefined' ? BigInt : {};
|
|
272
|
+
data.Infinity = Infinity;
|
|
273
|
+
data.parseFloat = parseFloat;
|
|
274
|
+
data.parseInt = parseInt;
|
|
275
|
+
// Structured data
|
|
276
|
+
data.JSON = JSON;
|
|
277
|
+
data.ArrayBuffer = typeof ArrayBuffer !== 'undefined' ? ArrayBuffer : {};
|
|
278
|
+
data.SharedArrayBuffer = typeof SharedArrayBuffer !== 'undefined' ? SharedArrayBuffer : {};
|
|
279
|
+
data.Atomics = typeof Atomics !== 'undefined' ? Atomics : {};
|
|
280
|
+
data.DataView = typeof DataView !== 'undefined' ? DataView : {};
|
|
281
|
+
// Encoding
|
|
282
|
+
data.encodeURI = encodeURI;
|
|
283
|
+
data.encodeURIComponent = encodeURIComponent;
|
|
284
|
+
data.decodeURI = decodeURI;
|
|
285
|
+
data.decodeURIComponent = decodeURIComponent;
|
|
286
|
+
// Other
|
|
287
|
+
data.Boolean = Boolean;
|
|
288
|
+
data.Symbol = Symbol;
|
|
155
289
|
}
|
|
156
290
|
});
|
|
157
291
|
//# sourceMappingURL=reset.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,14 @@
|
|
|
8
8
|
*/
|
|
9
9
|
export declare const SafeObject: ObjectConstructor;
|
|
10
10
|
/**
|
|
11
|
-
* SafeError - Blocks stack manipulation methods
|
|
12
|
-
*
|
|
13
|
-
* Blocked properties:
|
|
14
|
-
* - stackTraceLimit, captureStackTrace, prepareStackTrace: Prevent stack manipulation attacks
|
|
11
|
+
* SafeError - Blocks stack manipulation methods on Error constructor.
|
|
15
12
|
*/
|
|
16
13
|
export declare const SafeError: ErrorConstructor;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a safe wrapper for Error subclasses (TypeError, SyntaxError, etc.)
|
|
16
|
+
* Blocks the same dangerous properties as SafeError for defense in depth.
|
|
17
|
+
*/
|
|
18
|
+
export declare function createSafeErrorSubclass<T extends ErrorConstructor>(ErrorClass: T): T;
|
|
17
19
|
export declare class ExpressionError extends Error {
|
|
18
20
|
constructor(message: string);
|
|
19
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-globals.d.ts","sourceRoot":"","sources":["../../../src/runtime/safe-globals.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"safe-globals.d.ts","sourceRoot":"","sources":["../../../src/runtime/safe-globals.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,mBAqCrB,CAAC;AAgBH;;GAEG;AACH,eAAO,MAAM,SAAS,kBAsBpB,CAAC;AAEH;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,gBAAgB,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAmBpF;AAMD,qBAAa,eAAgB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAI3B;AAwBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKlD"}
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"use strict";
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.ExpressionError = exports.SafeError = exports.SafeObject = void 0;
|
|
16
|
+
exports.createSafeErrorSubclass = createSafeErrorSubclass;
|
|
16
17
|
exports.__sanitize = __sanitize;
|
|
17
18
|
/**
|
|
18
19
|
* SafeObject - Blocks dangerous Object methods that could lead to RCE
|
|
@@ -43,6 +44,10 @@
|
|
|
43
44
|
if (prop === 'getPrototypeOf') {
|
|
44
45
|
throw new Error('Object.getPrototypeOf is not allowed');
|
|
45
46
|
}
|
|
47
|
+
// Wrap Object.create to accept only one argument (blocks property descriptor injection)
|
|
48
|
+
if (prop === 'create') {
|
|
49
|
+
return (proto) => Object.create(proto);
|
|
50
|
+
}
|
|
46
51
|
// Allow other Object methods
|
|
47
52
|
const value = target[prop];
|
|
48
53
|
if (typeof value === 'function') {
|
|
@@ -53,21 +58,24 @@
|
|
|
53
58
|
},
|
|
54
59
|
});
|
|
55
60
|
/**
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
|
|
59
|
-
|
|
61
|
+
* Properties blocked on Error and all Error subclasses.
|
|
62
|
+
* These can be exploited for sandbox escape via V8's stack trace API.
|
|
63
|
+
*/
|
|
64
|
+
const blockedErrorProperties = new Set([
|
|
65
|
+
'captureStackTrace',
|
|
66
|
+
'prepareStackTrace',
|
|
67
|
+
'stackTraceLimit',
|
|
68
|
+
'__defineGetter__',
|
|
69
|
+
'__defineSetter__',
|
|
70
|
+
'__lookupGetter__',
|
|
71
|
+
'__lookupSetter__',
|
|
72
|
+
]);
|
|
73
|
+
/**
|
|
74
|
+
* SafeError - Blocks stack manipulation methods on Error constructor.
|
|
60
75
|
*/
|
|
61
76
|
exports.SafeError = new Proxy(Error, {
|
|
62
77
|
get(target, prop) {
|
|
63
|
-
|
|
64
|
-
const blockedProps = ['stackTraceLimit', 'captureStackTrace', 'prepareStackTrace'];
|
|
65
|
-
if (blockedProps.includes(prop)) {
|
|
66
|
-
return undefined;
|
|
67
|
-
}
|
|
68
|
-
// Block dangerous methods
|
|
69
|
-
const blockedMethods = ['__defineGetter__', '__defineSetter__'];
|
|
70
|
-
if (blockedMethods.includes(prop)) {
|
|
78
|
+
if (blockedErrorProperties.has(prop)) {
|
|
71
79
|
return undefined;
|
|
72
80
|
}
|
|
73
81
|
const value = target[prop];
|
|
@@ -84,7 +92,34 @@
|
|
|
84
92
|
target[prop] = value;
|
|
85
93
|
return true;
|
|
86
94
|
},
|
|
95
|
+
defineProperty() {
|
|
96
|
+
return false;
|
|
97
|
+
},
|
|
87
98
|
});
|
|
99
|
+
/**
|
|
100
|
+
* Creates a safe wrapper for Error subclasses (TypeError, SyntaxError, etc.)
|
|
101
|
+
* Blocks the same dangerous properties as SafeError for defense in depth.
|
|
102
|
+
*/
|
|
103
|
+
function createSafeErrorSubclass(ErrorClass) {
|
|
104
|
+
return new Proxy(ErrorClass, {
|
|
105
|
+
get(target, prop) {
|
|
106
|
+
if (blockedErrorProperties.has(prop)) {
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
const value = target[prop];
|
|
110
|
+
if (typeof value === 'function') {
|
|
111
|
+
return (...args) => value.apply(target, args);
|
|
112
|
+
}
|
|
113
|
+
return value;
|
|
114
|
+
},
|
|
115
|
+
set() {
|
|
116
|
+
return false;
|
|
117
|
+
},
|
|
118
|
+
defineProperty() {
|
|
119
|
+
return false;
|
|
120
|
+
},
|
|
121
|
+
});
|
|
122
|
+
}
|
|
88
123
|
// ============================================================================
|
|
89
124
|
// ExpressionError - used by tournament-generated error handlers
|
|
90
125
|
// ============================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-globals.js","sourceRoot":"","sources":["../../../src/runtime/safe-globals.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,+CAA+C;AAC/C,+EAA+E;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"safe-globals.js","sourceRoot":"","sources":["../../../src/runtime/safe-globals.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,10 @@ export interface EvaluatorConfig {
|
|
|
21
21
|
* If omitted, expressions are transformed with no security hooks (dev/testing use).
|
|
22
22
|
*/
|
|
23
23
|
hooks?: TournamentHooks;
|
|
24
|
+
/**
|
|
25
|
+
* Maximum number of tournament-transformed expressions to cache (LRU).
|
|
26
|
+
*/
|
|
27
|
+
maxCodeCacheSize: number;
|
|
24
28
|
}
|
|
25
29
|
/**
|
|
26
30
|
* Expression evaluator - main public API.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../../src/types/evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAO9C;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IAEtC;;;;OAIG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../../src/types/evaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../src/types/evaluator.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../src/types/evaluator.ts"],"names":[],"mappings":";;;;;;;;;;;;IAsNA,+EAA+E;IAC/E,uDAAuD;IACvD,EAAE;IACF,0DAA0D;IAC1D,wDAAwD;IACxD,+EAA+E;IAE/E;;OAEG;IACH,MAAa,eAAgB,SAAQ,KAAK;QAGjC;QAFR,YACC,OAAe,EACR,OAKN;YAED,KAAK,CAAC,OAAO,CAAC,CAAC;YAPR,YAAO,GAAP,OAAO,CAKb;YAGD,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC/B,CAAC;KACD;IAbD,0CAaC;IAED;;OAEG;IACH,MAAa,gBAAiB,SAAQ,eAAe;KAAG;IAAxD,4CAAwD;IACxD,MAAa,YAAa,SAAQ,eAAe;KAAG;IAApD,oCAAoD;IACpD,MAAa,sBAAuB,SAAQ,eAAe;KAAG;IAA9D,wDAA8D;IAC9D,MAAa,WAAY,SAAQ,eAAe;KAAG;IAAnD,kCAAmD"}
|
|
@@ -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;AAwC5E;;;;;;;;;;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;IAIvC,OAAO,CAAC,WAAW,CAAiC;IAIpD,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,OAAO,CAAC,eAAe,CAAC,CAAgB;IAKxC,OAAO,CAAC,mBAAmB,CAAC,CAAgB;gBAEhC,MAAM,GAAE,YAAiB;IAWrC;;;;;;;;;;OAUG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCjC;;;;;;;;;;;OAWG;YACW,mBAAmB;IAoCjC;;;;;;;;OAQG;YACW,iBAAiB;IA+B/B;;;;;;;;;;;OAWG;YACW,kBAAkB;IA0BhC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,iBAAiB;
|
|
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;AAwC5E;;;;;;;;;;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;IAIvC,OAAO,CAAC,WAAW,CAAiC;IAIpD,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,OAAO,CAAC,eAAe,CAAC,CAAgB;IAKxC,OAAO,CAAC,mBAAmB,CAAC,CAAgB;gBAEhC,MAAM,GAAE,YAAiB;IAWrC;;;;;;;;;;OAUG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCjC;;;;;;;;;;;OAWG;YACW,mBAAmB;IAoCjC;;;;;;;;OAQG;YACW,iBAAiB;IA+B/B;;;;;;;;;;;OAWG;YACW,kBAAkB;IA0BhC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,iBAAiB;IAsJzB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO;IAsDvF;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB9B;;;;OAIG;IACH,UAAU,IAAI,OAAO;CAGrB"}
|