@scenario-labs/sdk 2.3.0 → 2.4.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 (97) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +26 -0
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts.map +1 -1
  5. package/client.js +9 -1
  6. package/client.js.map +1 -1
  7. package/client.mjs +9 -1
  8. package/client.mjs.map +1 -1
  9. package/lib/cel/environment.d.mts +38 -0
  10. package/lib/cel/environment.d.mts.map +1 -0
  11. package/lib/cel/environment.d.ts +38 -0
  12. package/lib/cel/environment.d.ts.map +1 -0
  13. package/lib/cel/environment.js +52 -0
  14. package/lib/cel/environment.js.map +1 -0
  15. package/lib/cel/environment.mjs +48 -0
  16. package/lib/cel/environment.mjs.map +1 -0
  17. package/lib/cel/functions.d.mts +4 -0
  18. package/lib/cel/functions.d.mts.map +1 -0
  19. package/lib/cel/functions.d.ts +4 -0
  20. package/lib/cel/functions.d.ts.map +1 -0
  21. package/lib/cel/functions.js +67 -0
  22. package/lib/cel/functions.js.map +1 -0
  23. package/lib/cel/functions.mjs +64 -0
  24. package/lib/cel/functions.mjs.map +1 -0
  25. package/lib/cel/index.d.mts +3 -0
  26. package/lib/cel/index.d.mts.map +1 -0
  27. package/lib/cel/index.d.ts +3 -0
  28. package/lib/cel/index.d.ts.map +1 -0
  29. package/lib/cel/index.js +9 -0
  30. package/lib/cel/index.js.map +1 -0
  31. package/lib/cel/index.mjs +3 -0
  32. package/lib/cel/index.mjs.map +1 -0
  33. package/lib/cel/prng.d.mts +28 -0
  34. package/lib/cel/prng.d.mts.map +1 -0
  35. package/lib/cel/prng.d.ts +28 -0
  36. package/lib/cel/prng.d.ts.map +1 -0
  37. package/lib/cel/prng.js +64 -0
  38. package/lib/cel/prng.js.map +1 -0
  39. package/lib/cel/prng.mjs +58 -0
  40. package/lib/cel/prng.mjs.map +1 -0
  41. package/lib/workflow_converter.d.mts +9 -0
  42. package/lib/workflow_converter.d.mts.map +1 -1
  43. package/lib/workflow_converter.d.ts +9 -0
  44. package/lib/workflow_converter.d.ts.map +1 -1
  45. package/lib/workflow_converter.js +64 -18
  46. package/lib/workflow_converter.js.map +1 -1
  47. package/lib/workflow_converter.mjs +64 -18
  48. package/lib/workflow_converter.mjs.map +1 -1
  49. package/lib/workflow_import_validator.d.mts +1 -1
  50. package/lib/workflow_import_validator.d.mts.map +1 -1
  51. package/lib/workflow_import_validator.d.ts +1 -1
  52. package/lib/workflow_import_validator.d.ts.map +1 -1
  53. package/lib/workflow_import_validator.js +1 -0
  54. package/lib/workflow_import_validator.js.map +1 -1
  55. package/lib/workflow_import_validator.mjs +1 -0
  56. package/lib/workflow_import_validator.mjs.map +1 -1
  57. package/package.json +25 -4
  58. package/resources/generate.d.mts +586 -2
  59. package/resources/generate.d.mts.map +1 -1
  60. package/resources/generate.d.ts +586 -2
  61. package/resources/generate.d.ts.map +1 -1
  62. package/resources/generate.js +2 -2
  63. package/resources/generate.js.map +1 -1
  64. package/resources/generate.mjs +2 -2
  65. package/resources/generate.mjs.map +1 -1
  66. package/resources/models/train.d.mts +69 -0
  67. package/resources/models/train.d.mts.map +1 -1
  68. package/resources/models/train.d.ts +69 -0
  69. package/resources/models/train.d.ts.map +1 -1
  70. package/resources/usages.d.mts +22 -2
  71. package/resources/usages.d.mts.map +1 -1
  72. package/resources/usages.d.ts +22 -2
  73. package/resources/usages.d.ts.map +1 -1
  74. package/src/client.ts +9 -1
  75. package/src/lib/cel/environment.ts +81 -0
  76. package/src/lib/cel/functions.ts +109 -0
  77. package/src/lib/cel/index.ts +8 -0
  78. package/src/lib/cel/prng.ts +62 -0
  79. package/src/lib/workflow_converter.ts +104 -17
  80. package/src/lib/workflow_import_validator.ts +3 -1
  81. package/src/resources/generate.ts +705 -4
  82. package/src/resources/models/train.ts +83 -0
  83. package/src/resources/usages.ts +26 -0
  84. package/src/tools/cel.ts +4 -0
  85. package/src/version.ts +1 -1
  86. package/tools/cel.d.mts +2 -0
  87. package/tools/cel.d.mts.map +1 -0
  88. package/tools/cel.d.ts +2 -0
  89. package/tools/cel.d.ts.map +1 -0
  90. package/tools/cel.js +8 -0
  91. package/tools/cel.js.map +1 -0
  92. package/tools/cel.mjs +5 -0
  93. package/tools/cel.mjs.map +1 -0
  94. package/version.d.mts +1 -1
  95. package/version.d.ts +1 -1
  96. package/version.js +1 -1
  97. package/version.mjs +1 -1
@@ -0,0 +1,48 @@
1
+ import { Environment } from '@marcbachmann/cel-js';
2
+ import { registerBaseFunctions } from "./functions.mjs";
3
+ // cel-js locks an Environment's registry the first time it is cloned: after
4
+ // that, registerFunction on the base env throws "Cannot modify frozen
5
+ // registry". The base env is built and populated exactly once (??= guard);
6
+ // every createCelEnvironment() call clones the locked base, so base
7
+ // registrations can never change after the first clone.
8
+ let baseEnvironment;
9
+ function getBaseEnvironment() {
10
+ baseEnvironment ??= registerBaseFunctions(new Environment({ unlistedVariablesAreDyn: true }));
11
+ return baseEnvironment;
12
+ }
13
+ /**
14
+ * A fresh, extensible clone of the shared base CEL environment (trim, slice,
15
+ * random, randomSample). Consumers may register additional functions on it.
16
+ * Note: `exists()` is only available through `evaluateCel`, because it must
17
+ * be bound to the evaluation's variables.
18
+ */
19
+ export function createCelEnvironment() {
20
+ return getBaseEnvironment().clone();
21
+ }
22
+ /**
23
+ * Canonical CEL evaluation entry point shared by the backend, frontend,
24
+ * and MCP server. Registers `exists(name)` bound to `variables`, plus any
25
+ * per-call extra functions, then evaluates.
26
+ *
27
+ * If a registered handler is async, cel-js returns a Promise — use
28
+ * `await evaluateCel<Promise<T>>(...)` in that case.
29
+ *
30
+ * `options.functions` must not redeclare a base function (trim, slice,
31
+ * random, randomSample) or `exists` — cel-js throws on overlapping
32
+ * signatures rather than overriding.
33
+ */
34
+ export function evaluateCel(expression, variables = {}, options = {}) {
35
+ const env = createCelEnvironment();
36
+ env.registerFunction('exists(string): bool', (name) => name in variables && variables[name] != null, {
37
+ description: 'True when the named variable was provided and is not null.',
38
+ params: [{ name: 'name', description: 'Variable name to check' }],
39
+ });
40
+ for (const fn of options.functions ?? []) {
41
+ env.registerFunction(fn.signature, fn.handler, {
42
+ ...(fn.description !== undefined ? { description: fn.description } : {}),
43
+ ...(fn.params !== undefined ? { params: fn.params } : {}),
44
+ });
45
+ }
46
+ return env.evaluate(expression, variables);
47
+ }
48
+ //# sourceMappingURL=environment.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"environment.mjs","sourceRoot":"","sources":["../../src/lib/cel/environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,qBAAqB,EAAE,wBAAoB;AAuBpD,4EAA4E;AAC5E,sEAAsE;AACtE,2EAA2E;AAC3E,oEAAoE;AACpE,wDAAwD;AACxD,IAAI,eAAwC,CAAC;AAE7C,SAAS,kBAAkB;IACzB,eAAe,KAAK,qBAAqB,CAAC,IAAI,WAAW,CAAC,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9F,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW,CACzB,UAAkB,EAClB,YAAqC,EAAE,EACvC,UAA8B,EAAE;IAEhC,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAC;IACnC,GAAG,CAAC,gBAAgB,CAClB,sBAAsB,EACtB,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,EAC9D;QACE,WAAW,EAAE,4DAA4D;QACzE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;KAClE,CACF,CAAC;IACF,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QACzC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAA0C,EAAE;YAChF,GAAG,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAM,CAAC;AAClD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Environment } from '@marcbachmann/cel-js';
2
+ /** Register the shared base functions. Order and semantics are stable API. */
3
+ export declare function registerBaseFunctions(env: Environment): Environment;
4
+ //# sourceMappingURL=functions.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.d.mts","sourceRoot":"","sources":["../../src/lib/cel/functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AA4CxD,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,CA+DnE"}
@@ -0,0 +1,4 @@
1
+ import type { Environment } from '@marcbachmann/cel-js';
2
+ /** Register the shared base functions. Order and semantics are stable API. */
3
+ export declare function registerBaseFunctions(env: Environment): Environment;
4
+ //# sourceMappingURL=functions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/lib/cel/functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AA4CxD,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,CA+DnE"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerBaseFunctions = registerBaseFunctions;
4
+ const prng_1 = require("./prng.js");
5
+ /**
6
+ * Random integer with exactly `digits` digits, e.g. random(5) -> 48574.
7
+ * Ported verbatim from the backend's cel_evaluator for back-compat with
8
+ * deployed workflows. Float precision degrades above 15 digits.
9
+ */
10
+ function randomDigits(digits) {
11
+ const d = Number(digits);
12
+ if (d <= 0)
13
+ return 0n;
14
+ const min = 10 ** (d - 1);
15
+ const max = 10 ** d;
16
+ return BigInt(Math.floor(Math.random() * (max - min)) + min);
17
+ }
18
+ function randomSampleImpl(list, count, seed, withReplacement) {
19
+ if (!Array.isArray(list))
20
+ return [];
21
+ const rand = seed === undefined ? Math.random : (0, prng_1.mulberry32)((0, prng_1.normalizeSeed)(seed));
22
+ const k = Number(count);
23
+ return withReplacement ? (0, prng_1.sampleWithReplacement)(list, k, rand) : (0, prng_1.sampleWithoutReplacement)(list, k, rand);
24
+ }
25
+ const RANDOM_SAMPLE_DESCRIPTION = 'Sample items from a list. An int seed makes the result reproducible (same seed, same sample); ' +
26
+ 'withReplacement allows duplicates. Without replacement, count is clamped to the list size.';
27
+ const PARAM_LIST = { name: 'list', description: 'List to sample from' };
28
+ const PARAM_COUNT = { name: 'count', description: 'Number of items to sample' };
29
+ const PARAM_SEED = { name: 'seed', description: 'Seed for reproducible sampling' };
30
+ const PARAM_WITH_REPLACEMENT = { name: 'withReplacement', description: 'Allow duplicate picks' };
31
+ /** Register the shared base functions. Order and semantics are stable API. */
32
+ function registerBaseFunctions(env) {
33
+ // Registered as dyn so cel-js doesn't reject null before reaching the handler.
34
+ env.registerFunction('trim(dyn): string', (s) => (s == null ? '' : String(s).trim()), {
35
+ description: 'Trim leading and trailing whitespace. Null-safe: null becomes "".',
36
+ params: [{ name: 'value', description: 'Value to trim; null yields ""' }],
37
+ });
38
+ // Registered as dyn first arg so cel-js doesn't reject non-list inputs before the handler.
39
+ env.registerFunction('slice(dyn, int, int): list', (arr, start, end) => {
40
+ if (!Array.isArray(arr))
41
+ return [];
42
+ return arr.slice(Number(start), Number(end));
43
+ }, {
44
+ description: 'Return list[start:end] with JS Array.prototype.slice semantics.',
45
+ params: [
46
+ { name: 'list', description: 'List to slice' },
47
+ { name: 'start', description: 'Start index (inclusive)' },
48
+ { name: 'end', description: 'End index (exclusive)' },
49
+ ],
50
+ });
51
+ env.registerFunction('random(int): int', (digits) => randomDigits(digits), {
52
+ description: 'Random integer with exactly N digits, e.g. random(5) -> 48574. Unseeded.',
53
+ params: [{ name: 'digits', description: 'Number of digits in the result' }],
54
+ });
55
+ env.registerFunction('randomSample(list, int): list', (list, count) => randomSampleImpl(list, count, undefined, false), { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT] });
56
+ env.registerFunction('randomSample(list, int, int): list', (list, count, seed) => randomSampleImpl(list, count, seed, false), { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED] });
57
+ env.registerFunction('randomSample(list, int, bool): list', (list, count, withReplacement) => randomSampleImpl(list, count, undefined, withReplacement), {
58
+ description: RANDOM_SAMPLE_DESCRIPTION,
59
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_WITH_REPLACEMENT],
60
+ });
61
+ env.registerFunction('randomSample(list, int, int, bool): list', (list, count, seed, withReplacement) => randomSampleImpl(list, count, seed, withReplacement), {
62
+ description: RANDOM_SAMPLE_DESCRIPTION,
63
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED, PARAM_WITH_REPLACEMENT],
64
+ });
65
+ return env;
66
+ }
67
+ //# sourceMappingURL=functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/lib/cel/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ import { mulberry32, normalizeSeed, sampleWithoutReplacement, sampleWithReplacement, } from "./prng.mjs";
2
+ /**
3
+ * Random integer with exactly `digits` digits, e.g. random(5) -> 48574.
4
+ * Ported verbatim from the backend's cel_evaluator for back-compat with
5
+ * deployed workflows. Float precision degrades above 15 digits.
6
+ */
7
+ function randomDigits(digits) {
8
+ const d = Number(digits);
9
+ if (d <= 0)
10
+ return 0n;
11
+ const min = 10 ** (d - 1);
12
+ const max = 10 ** d;
13
+ return BigInt(Math.floor(Math.random() * (max - min)) + min);
14
+ }
15
+ function randomSampleImpl(list, count, seed, withReplacement) {
16
+ if (!Array.isArray(list))
17
+ return [];
18
+ const rand = seed === undefined ? Math.random : mulberry32(normalizeSeed(seed));
19
+ const k = Number(count);
20
+ return withReplacement ? sampleWithReplacement(list, k, rand) : sampleWithoutReplacement(list, k, rand);
21
+ }
22
+ const RANDOM_SAMPLE_DESCRIPTION = 'Sample items from a list. An int seed makes the result reproducible (same seed, same sample); ' +
23
+ 'withReplacement allows duplicates. Without replacement, count is clamped to the list size.';
24
+ const PARAM_LIST = { name: 'list', description: 'List to sample from' };
25
+ const PARAM_COUNT = { name: 'count', description: 'Number of items to sample' };
26
+ const PARAM_SEED = { name: 'seed', description: 'Seed for reproducible sampling' };
27
+ const PARAM_WITH_REPLACEMENT = { name: 'withReplacement', description: 'Allow duplicate picks' };
28
+ /** Register the shared base functions. Order and semantics are stable API. */
29
+ export function registerBaseFunctions(env) {
30
+ // Registered as dyn so cel-js doesn't reject null before reaching the handler.
31
+ env.registerFunction('trim(dyn): string', (s) => (s == null ? '' : String(s).trim()), {
32
+ description: 'Trim leading and trailing whitespace. Null-safe: null becomes "".',
33
+ params: [{ name: 'value', description: 'Value to trim; null yields ""' }],
34
+ });
35
+ // Registered as dyn first arg so cel-js doesn't reject non-list inputs before the handler.
36
+ env.registerFunction('slice(dyn, int, int): list', (arr, start, end) => {
37
+ if (!Array.isArray(arr))
38
+ return [];
39
+ return arr.slice(Number(start), Number(end));
40
+ }, {
41
+ description: 'Return list[start:end] with JS Array.prototype.slice semantics.',
42
+ params: [
43
+ { name: 'list', description: 'List to slice' },
44
+ { name: 'start', description: 'Start index (inclusive)' },
45
+ { name: 'end', description: 'End index (exclusive)' },
46
+ ],
47
+ });
48
+ env.registerFunction('random(int): int', (digits) => randomDigits(digits), {
49
+ description: 'Random integer with exactly N digits, e.g. random(5) -> 48574. Unseeded.',
50
+ params: [{ name: 'digits', description: 'Number of digits in the result' }],
51
+ });
52
+ env.registerFunction('randomSample(list, int): list', (list, count) => randomSampleImpl(list, count, undefined, false), { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT] });
53
+ env.registerFunction('randomSample(list, int, int): list', (list, count, seed) => randomSampleImpl(list, count, seed, false), { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED] });
54
+ env.registerFunction('randomSample(list, int, bool): list', (list, count, withReplacement) => randomSampleImpl(list, count, undefined, withReplacement), {
55
+ description: RANDOM_SAMPLE_DESCRIPTION,
56
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_WITH_REPLACEMENT],
57
+ });
58
+ env.registerFunction('randomSample(list, int, int, bool): list', (list, count, seed, withReplacement) => randomSampleImpl(list, count, seed, withReplacement), {
59
+ description: RANDOM_SAMPLE_DESCRIPTION,
60
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED, PARAM_WITH_REPLACEMENT],
61
+ });
62
+ return env;
63
+ }
64
+ //# sourceMappingURL=functions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.mjs","sourceRoot":"","sources":["../../src/lib/cel/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { createCelEnvironment, evaluateCel, type CelFunctionParam, type CelFunctionRegistration, type EvaluateCelOptions, } from "./environment.mjs";
2
+ export { Environment } from '@marcbachmann/cel-js';
3
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/lib/cel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,GACxB,0BAAsB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { createCelEnvironment, evaluateCel, type CelFunctionParam, type CelFunctionRegistration, type EvaluateCelOptions, } from "./environment.js";
2
+ export { Environment } from '@marcbachmann/cel-js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/cel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,GACxB,yBAAsB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Environment = exports.evaluateCel = exports.createCelEnvironment = void 0;
4
+ var environment_1 = require("./environment.js");
5
+ Object.defineProperty(exports, "createCelEnvironment", { enumerable: true, get: function () { return environment_1.createCelEnvironment; } });
6
+ Object.defineProperty(exports, "evaluateCel", { enumerable: true, get: function () { return environment_1.evaluateCel; } });
7
+ var cel_js_1 = require("@marcbachmann/cel-js");
8
+ Object.defineProperty(exports, "Environment", { enumerable: true, get: function () { return cel_js_1.Environment; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/cel/index.ts"],"names":[],"mappings":";;;AAAA,gDAMuB;AALrB,mHAAA,oBAAoB,OAAA;AACpB,0GAAA,WAAW,OAAA;AAKb,+CAAmD;AAA1C,qGAAA,WAAW,OAAA"}
@@ -0,0 +1,3 @@
1
+ export { createCelEnvironment, evaluateCel, } from "./environment.mjs";
2
+ export { Environment } from '@marcbachmann/cel-js';
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/lib/cel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,WAAW,GAIZ,0BAAsB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Deterministic PRNG + sampling primitives backing the CEL `randomSample`
3
+ * function.
4
+ *
5
+ * STABILITY CONTRACT — DO NOT CHANGE THESE ALGORITHMS.
6
+ * The same seed must produce the same sample on every runtime and every SDK
7
+ * version: the backend (server) and frontend (client) rely on agreeing outputs,
8
+ * and customers rely on seeds for reproducible workflow runs. Golden-value
9
+ * tests in tests/lib/cel/prng.test.ts pin the exact outputs.
10
+ */
11
+ /** A source of random floats in [0, 1). */
12
+ export type RandomSource = () => number;
13
+ /**
14
+ * mulberry32: fast 32-bit PRNG with exact, platform-independent output.
15
+ * `seed` is coerced to uint32 (via `>>> 0`); use {@link normalizeSeed} to
16
+ * convert arbitrary CEL ints before calling this.
17
+ */
18
+ export declare function mulberry32(seed: number): RandomSource;
19
+ /** Normalize a CEL int (bigint or number) to a uint32 PRNG seed. */
20
+ export declare function normalizeSeed(seed: bigint | number): number;
21
+ /**
22
+ * Sample `count` distinct elements via partial Fisher–Yates.
23
+ * `count` is clamped to [0, list.length]; the input list is not mutated.
24
+ */
25
+ export declare function sampleWithoutReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[];
26
+ /** `count` independent draws; duplicates allowed. Returns [] if the list is empty or count <= 0. */
27
+ export declare function sampleWithReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[];
28
+ //# sourceMappingURL=prng.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prng.d.mts","sourceRoot":"","sources":["../../src/lib/cel/prng.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,2CAA2C;AAC3C,MAAM,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAQrD;AAED,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAE3D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,CAYtG;AAED,oGAAoG;AACpG,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,CAQnG"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Deterministic PRNG + sampling primitives backing the CEL `randomSample`
3
+ * function.
4
+ *
5
+ * STABILITY CONTRACT — DO NOT CHANGE THESE ALGORITHMS.
6
+ * The same seed must produce the same sample on every runtime and every SDK
7
+ * version: the backend (server) and frontend (client) rely on agreeing outputs,
8
+ * and customers rely on seeds for reproducible workflow runs. Golden-value
9
+ * tests in tests/lib/cel/prng.test.ts pin the exact outputs.
10
+ */
11
+ /** A source of random floats in [0, 1). */
12
+ export type RandomSource = () => number;
13
+ /**
14
+ * mulberry32: fast 32-bit PRNG with exact, platform-independent output.
15
+ * `seed` is coerced to uint32 (via `>>> 0`); use {@link normalizeSeed} to
16
+ * convert arbitrary CEL ints before calling this.
17
+ */
18
+ export declare function mulberry32(seed: number): RandomSource;
19
+ /** Normalize a CEL int (bigint or number) to a uint32 PRNG seed. */
20
+ export declare function normalizeSeed(seed: bigint | number): number;
21
+ /**
22
+ * Sample `count` distinct elements via partial Fisher–Yates.
23
+ * `count` is clamped to [0, list.length]; the input list is not mutated.
24
+ */
25
+ export declare function sampleWithoutReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[];
26
+ /** `count` independent draws; duplicates allowed. Returns [] if the list is empty or count <= 0. */
27
+ export declare function sampleWithReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[];
28
+ //# sourceMappingURL=prng.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prng.d.ts","sourceRoot":"","sources":["../../src/lib/cel/prng.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,2CAA2C;AAC3C,MAAM,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAQrD;AAED,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAE3D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,CAYtG;AAED,oGAAoG;AACpG,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,CAQnG"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * Deterministic PRNG + sampling primitives backing the CEL `randomSample`
4
+ * function.
5
+ *
6
+ * STABILITY CONTRACT — DO NOT CHANGE THESE ALGORITHMS.
7
+ * The same seed must produce the same sample on every runtime and every SDK
8
+ * version: the backend (server) and frontend (client) rely on agreeing outputs,
9
+ * and customers rely on seeds for reproducible workflow runs. Golden-value
10
+ * tests in tests/lib/cel/prng.test.ts pin the exact outputs.
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.mulberry32 = mulberry32;
14
+ exports.normalizeSeed = normalizeSeed;
15
+ exports.sampleWithoutReplacement = sampleWithoutReplacement;
16
+ exports.sampleWithReplacement = sampleWithReplacement;
17
+ /**
18
+ * mulberry32: fast 32-bit PRNG with exact, platform-independent output.
19
+ * `seed` is coerced to uint32 (via `>>> 0`); use {@link normalizeSeed} to
20
+ * convert arbitrary CEL ints before calling this.
21
+ */
22
+ function mulberry32(seed) {
23
+ let a = seed >>> 0;
24
+ return () => {
25
+ a = (a + 0x6d2b79f5) | 0;
26
+ let t = Math.imul(a ^ (a >>> 15), 1 | a);
27
+ t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;
28
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
29
+ };
30
+ }
31
+ /** Normalize a CEL int (bigint or number) to a uint32 PRNG seed. */
32
+ function normalizeSeed(seed) {
33
+ return Number(BigInt.asUintN(32, BigInt(seed)));
34
+ }
35
+ /**
36
+ * Sample `count` distinct elements via partial Fisher–Yates.
37
+ * `count` is clamped to [0, list.length]; the input list is not mutated.
38
+ */
39
+ function sampleWithoutReplacement(list, count, rand) {
40
+ const n = list.length;
41
+ const k = Math.min(Math.max(count, 0), n);
42
+ if (k === 0)
43
+ return [];
44
+ const pool = list.slice();
45
+ for (let i = 0; i < k; i++) {
46
+ const j = i + Math.floor(rand() * (n - i));
47
+ const tmp = pool[i];
48
+ pool[i] = pool[j];
49
+ pool[j] = tmp;
50
+ }
51
+ return pool.slice(0, k);
52
+ }
53
+ /** `count` independent draws; duplicates allowed. Returns [] if the list is empty or count <= 0. */
54
+ function sampleWithReplacement(list, count, rand) {
55
+ const n = list.length;
56
+ if (n === 0 || count <= 0)
57
+ return [];
58
+ const out = [];
59
+ for (let i = 0; i < count; i++) {
60
+ out.push(list[Math.floor(rand() * n)]);
61
+ }
62
+ return out;
63
+ }
64
+ //# sourceMappingURL=prng.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prng.js","sourceRoot":"","sources":["../../src/lib/cel/prng.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;AAUH,gCAQC;AAGD,sCAEC;AAMD,4DAYC;AAGD,sDAQC;AA/CD;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;IACnB,OAAO,GAAG,EAAE;QACV,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACzC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,SAAgB,aAAa,CAAC,IAAqB;IACjD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,SAAgB,wBAAwB,CAAI,IAAkB,EAAE,KAAa,EAAE,IAAkB;IAC/F,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED,oGAAoG;AACpG,SAAgB,qBAAqB,CAAI,IAAkB,EAAE,KAAa,EAAE,IAAkB;IAC5F,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Deterministic PRNG + sampling primitives backing the CEL `randomSample`
3
+ * function.
4
+ *
5
+ * STABILITY CONTRACT — DO NOT CHANGE THESE ALGORITHMS.
6
+ * The same seed must produce the same sample on every runtime and every SDK
7
+ * version: the backend (server) and frontend (client) rely on agreeing outputs,
8
+ * and customers rely on seeds for reproducible workflow runs. Golden-value
9
+ * tests in tests/lib/cel/prng.test.ts pin the exact outputs.
10
+ */
11
+ /**
12
+ * mulberry32: fast 32-bit PRNG with exact, platform-independent output.
13
+ * `seed` is coerced to uint32 (via `>>> 0`); use {@link normalizeSeed} to
14
+ * convert arbitrary CEL ints before calling this.
15
+ */
16
+ export function mulberry32(seed) {
17
+ let a = seed >>> 0;
18
+ return () => {
19
+ a = (a + 0x6d2b79f5) | 0;
20
+ let t = Math.imul(a ^ (a >>> 15), 1 | a);
21
+ t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;
22
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
23
+ };
24
+ }
25
+ /** Normalize a CEL int (bigint or number) to a uint32 PRNG seed. */
26
+ export function normalizeSeed(seed) {
27
+ return Number(BigInt.asUintN(32, BigInt(seed)));
28
+ }
29
+ /**
30
+ * Sample `count` distinct elements via partial Fisher–Yates.
31
+ * `count` is clamped to [0, list.length]; the input list is not mutated.
32
+ */
33
+ export function sampleWithoutReplacement(list, count, rand) {
34
+ const n = list.length;
35
+ const k = Math.min(Math.max(count, 0), n);
36
+ if (k === 0)
37
+ return [];
38
+ const pool = list.slice();
39
+ for (let i = 0; i < k; i++) {
40
+ const j = i + Math.floor(rand() * (n - i));
41
+ const tmp = pool[i];
42
+ pool[i] = pool[j];
43
+ pool[j] = tmp;
44
+ }
45
+ return pool.slice(0, k);
46
+ }
47
+ /** `count` independent draws; duplicates allowed. Returns [] if the list is empty or count <= 0. */
48
+ export function sampleWithReplacement(list, count, rand) {
49
+ const n = list.length;
50
+ if (n === 0 || count <= 0)
51
+ return [];
52
+ const out = [];
53
+ for (let i = 0; i < count; i++) {
54
+ out.push(list[Math.floor(rand() * n)]);
55
+ }
56
+ return out;
57
+ }
58
+ //# sourceMappingURL=prng.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prng.mjs","sourceRoot":"","sources":["../../src/lib/cel/prng.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC;IACnB,OAAO,GAAG,EAAE;QACV,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACzC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,aAAa,CAAC,IAAqB;IACjD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAI,IAAkB,EAAE,KAAa,EAAE,IAAkB;IAC/F,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,qBAAqB,CAAI,IAAkB,EAAE,KAAa,EAAE,IAAkB;IAC5F,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -103,6 +103,15 @@ export type WorkflowEditorNode = {
103
103
  data: NodeCommonData & {
104
104
  message?: string;
105
105
  };
106
+ } | {
107
+ id: string;
108
+ type: 'modelInput';
109
+ data: NodeCommonData & {
110
+ inputName: string;
111
+ form?: Record<string, unknown>;
112
+ parentModelNodeId?: string;
113
+ modelId?: string;
114
+ };
106
115
  };
107
116
  export type WorkflowEditorEdge = {
108
117
  source: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow_converter.d.mts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow_converter.d.mts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,15 @@ export type WorkflowEditorNode = {
103
103
  data: NodeCommonData & {
104
104
  message?: string;
105
105
  };
106
+ } | {
107
+ id: string;
108
+ type: 'modelInput';
109
+ data: NodeCommonData & {
110
+ inputName: string;
111
+ form?: Record<string, unknown>;
112
+ parentModelNodeId?: string;
113
+ modelId?: string;
114
+ };
106
115
  };
107
116
  export type WorkflowEditorEdge = {
108
117
  source: string;
@@ -1 +1 @@
1
- {"version":3,"file":"workflow_converter.d.ts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow_converter.d.ts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"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"}