@scenario-labs/sdk 2.5.0 → 2.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/CHANGELOG.md CHANGED
@@ -6,6 +6,58 @@
6
6
 
7
7
  * **workflow_converter:** export `randomSample` transform for `sliceAssets` nodes in randomize mode
8
8
 
9
+ ## 2.7.0 (2026-07-23)
10
+
11
+ Full Changelog: [v2.6.0...v2.7.0](https://github.com/scenario-labs/scenario-sdk-typescript/compare/v2.6.0...v2.7.0)
12
+
13
+ ### Features
14
+
15
+ * **api:** api update ([1327a83](https://github.com/scenario-labs/scenario-sdk-typescript/commit/1327a8370cf3cb85ffdcaf94d00d6338b54427cb))
16
+ * **stlc:** configurable CI runner and private-production-repo support in workflow templates ([0b2d1bb](https://github.com/scenario-labs/scenario-sdk-typescript/commit/0b2d1bb3e7acb0ca65ffea1a182bf4e689fa4a40))
17
+ * **workflow_converter:** enhance concat list handling with new descriptor function ([2360cbe](https://github.com/scenario-labs/scenario-sdk-typescript/commit/2360cbeb7af9c43f235bcd8a0fe002ceba4c1efb))
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **ci:** bump @arethetypeswrong/cli to ^0.18.0 and run CI workflows on Node 24 ([ae2f776](https://github.com/scenario-labs/scenario-sdk-typescript/commit/ae2f776c8b9d52cf7f141c0ae905f6d2064493f0))
23
+ * **workflow_converter:** put an unlocked randomize node in the for-each loop body ([3b0fb9d](https://github.com/scenario-labs/scenario-sdk-typescript/commit/3b0fb9dadd5a1f499e0cbcdc2432934962ff4504))
24
+ * **workflow_converter:** put an unlocked randomize node in the for-each loop body ([0f98299](https://github.com/scenario-labs/scenario-sdk-typescript/commit/0f982995c05ba9b2d0c52d098501cbaf30b15af1))
25
+
26
+
27
+ ### Chores
28
+
29
+ * **ci:** sync-enhanced-docs prompt — recursive src/lib scope + tools ([#24](https://github.com/scenario-labs/scenario-sdk-typescript/issues/24)) ([b9d7e33](https://github.com/scenario-labs/scenario-sdk-typescript/commit/b9d7e336258c76338fdda5a7ece4609a60381778))
30
+ * **dependencies:** update pnpm-lock.yaml with new package resolutions for @braidai/lang and @loaderkit/resolve ([a6e7380](https://github.com/scenario-labs/scenario-sdk-typescript/commit/a6e7380a60d8941aaae9142cdc44999b25e3e5dd))
31
+
32
+
33
+ ### Styles
34
+
35
+ * **workflow_converter:** apply prettier formatting ([2180b3c](https://github.com/scenario-labs/scenario-sdk-typescript/commit/2180b3cfab6b76166f7f6e069038214c5a7482fc))
36
+
37
+
38
+ ### Refactors
39
+
40
+ * **workflow_converter:** streamline array handling and improve formatting in tests ([8d0f54f](https://github.com/scenario-labs/scenario-sdk-typescript/commit/8d0f54f82b1f42d5ee32c01a898a3e85ea1ecc99))
41
+
42
+ ## 2.6.0 (2026-07-09)
43
+
44
+ Full Changelog: [v2.5.0...v2.6.0](https://github.com/scenario-labs/scenario-sdk-typescript/compare/v2.5.0...v2.6.0)
45
+
46
+ ### Features
47
+
48
+ * **api:** api update ([b576a5c](https://github.com/scenario-labs/scenario-sdk-typescript/commit/b576a5c96c641f2b1ea37c043d7ce69cc3789aec))
49
+ * **workflow_converter:** add isSeedLocked property to sliceAssets and update randomSample logic ([747a9ec](https://github.com/scenario-labs/scenario-sdk-typescript/commit/747a9ec415258bffcb4bf57d6b1fdeeb77fdaa15))
50
+
51
+
52
+ ### Bug Fixes
53
+
54
+ * **workflow_converter:** trigger Stainless release ([0e94987](https://github.com/scenario-labs/scenario-sdk-typescript/commit/0e9498728efbd302d4902a86bbf66201891f1723))
55
+
56
+
57
+ ### Refactors
58
+
59
+ * **workflow_converter:** improve formatting of randomSample logic for better readability ([330d132](https://github.com/scenario-labs/scenario-sdk-typescript/commit/330d13245c363b37e8a8381cea3ccdac3bfef4c3))
60
+
9
61
  ## 2.5.0 (2026-07-08)
10
62
 
11
63
  Full Changelog: [v2.4.0...v2.5.0](https://github.com/scenario-labs/scenario-sdk-typescript/compare/v2.4.0...v2.5.0)
@@ -82,6 +82,7 @@ export type WorkflowEditorNode = {
82
82
  count?: number | string;
83
83
  isRandomize?: boolean;
84
84
  randomSeed?: string;
85
+ isSeedLocked?: boolean;
85
86
  value?: string;
86
87
  };
87
88
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"workflow_converter.d.mts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,yBAAyB,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAC3C,aAAa,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAC1B;IACE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,cAAc,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC5F,GACD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,GACxG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvE;IACE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,cAAc,GAAG;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH,GACD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAChF;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACrF;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACjG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC7E;IACE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,cAAc,GAAG;QACrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,GACD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GACrD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACpF;IACE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,cAAc,GAAG;QAAE,eAAe,CAAC,EAAE,4BAA4B,EAAE,CAAA;KAAE,CAAC;CAC7E,GACD;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,cAAc,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC7E;IACE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,cAAc,GAAG;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,CAAC;AAEN,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,uBAAuB,EAAE,CAAC;IACtC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE;QACT,mBAAmB,CAAC,EAAE;YACpB,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,OAAO,CAAC,EAAE,8BAA8B,EAAE,CAAC;SAC5C,CAAC;KACH,CAAC;CACH,CAAC;AAUF,eAAO,MAAM,oBAAoB,4FAYvB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAC7C,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAAC;IACzD,KAAK,CAAC,EAAE,uBAAuB,EAAE,EAAE,GAAG,SAAS,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,MAAM,CAAC,EAAE,uBAAuB,EAAE,GAAG,SAAS,CAAC;IAC/C,KAAK,CAAC,EACF;QACE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC/B,KAAK,CAAC,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,GAAG,SAAS,CAAC;QAC3D,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC9B,GACD,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACvC,2BAA2B,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AA+FF,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAWxF;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,mBAAmB,GAAG,SAAS,GACrC,0BAA0B,CAY5B;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,EAAE,cAAc,EAAE,eAAe,EAAE,EAAE,IAAI,CAAC,0BAA0B,EAAE,gBAAgB,GAAG,iBAAiB,CAAC,GAC1G,iBAAiB,GAAG,SAAS,CAqB/B;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAchD;AAwqBD;;;;;;;;;GASG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC9C,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,GAAG,SAAS,CAAC;CAC7E,CAAC;AAEF,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,iCAAiC,GACxC,sBAAsB,EAAE,CAmuB1B"}
1
+ {"version":3,"file":"workflow_converter.d.mts","sourceRoot":"","sources":["../src/lib/workflow_converter.ts"],"names":[],"mappings":"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"}
@@ -82,6 +82,7 @@ export type WorkflowEditorNode = {
82
82
  count?: number | string;
83
83
  isRandomize?: boolean;
84
84
  randomSeed?: string;
85
+ isSeedLocked?: boolean;
85
86
  value?: string;
86
87
  };
87
88
  } | {
@@ -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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"}
@@ -269,7 +269,8 @@ function getSourceRef(edge, ctx) {
269
269
  }
270
270
  }
271
271
  if (targetNode.type === 'ifElse') {
272
- const handles = targetNode.data.outputHandles ?? [];
272
+ // Approval handles are UI-only and must not shift case/else indices.
273
+ const handles = (targetNode.data.outputHandles ?? []).filter((h) => h.type !== 'approval');
273
274
  const handleIndex = handles.findIndex((h) => h.id === edge.targetHandle);
274
275
  if (handleIndex !== -1) {
275
276
  const targetFlowId = nodeIdToFlowIdMap.get(targetNodeId);
@@ -324,6 +325,28 @@ function getOutputHandleVarName(targetNodeId, handleName) {
324
325
  function getIsSliceAssetsItemsSourceHandle(nodeId, sourceHandle) {
325
326
  return sourceHandle === `${nodeId}-source-items` || sourceHandle === `${nodeId}-source-assets`;
326
327
  }
328
+ function getConcatListSourceDescriptor(targetNode, outHandle, outHandleName) {
329
+ const isArray = (targetNode.type === 'asset' && !!targetNode.data.isMultiple) ||
330
+ targetNode.type === 'groupItems' ||
331
+ targetNode.type === 'sliceAssets' ||
332
+ targetNode.type === 'splitText' ||
333
+ (targetNode.type === 'llm' && outHandleName === 'outputs') ||
334
+ !!outHandle?.isArray ||
335
+ outHandleName === 'allOutputs';
336
+ if (!isArray) {
337
+ return {
338
+ isArray: false,
339
+ inputType: outHandle?.type === 'text' ? 'string' : 'file',
340
+ };
341
+ }
342
+ const isTextList = targetNode.type === 'splitText' ||
343
+ (targetNode.type === 'llm' && outHandleName === 'outputs') ||
344
+ outHandle?.type === 'text';
345
+ return {
346
+ isArray: true,
347
+ inputType: isTextList ? 'string_array' : 'file_array',
348
+ };
349
+ }
327
350
  /**
328
351
  * Builds the concat variables and flow inputs for a list-concatenating node
329
352
  * (groupItems, sliceAssets in randomize mode) from its incoming edges.
@@ -344,16 +367,13 @@ function collectConcatVarsAndInputs(edges, ctx, getVarName) {
344
367
  const outHandle = targetNode.data.outputHandles?.find((h) => h.id === edge.targetHandle);
345
368
  const outHandleName = outHandle?.name ?? 'output';
346
369
  const varName = getVarName(targetNode.id, outHandleName);
347
- const isArr = (targetNode.type === 'asset' && !!targetNode.data.isMultiple) ||
348
- targetNode.type === 'groupItems' ||
349
- targetNode.type === 'sliceAssets' ||
350
- outHandleName === 'allOutputs';
370
+ const { isArray, inputType } = getConcatListSourceDescriptor(targetNode, outHandle, outHandleName);
351
371
  const isRequired = inputNodeIds.includes(targetNode.id) ?
352
372
  (targetNode.type === 'asset' && !!targetNode.data.isRequired) ||
353
373
  ['firstFrame', 'lastFrame'].includes(outHandleName)
354
374
  : true;
355
- variables.push({ name: varName, isArray: isArr, isRequired });
356
- flowInputs.push({ name: varName, type: isArr ? 'file_array' : 'file', ref });
375
+ variables.push({ name: varName, isArray, isRequired });
376
+ flowInputs.push({ name: varName, type: inputType, ref });
357
377
  }
358
378
  return { variables, flowInputs };
359
379
  }
@@ -520,7 +540,7 @@ function applyAspectRatioInputs(args) {
520
540
  });
521
541
  }
522
542
  }
523
- function getForEachBodyEditorNodeIds(forEachId, forEachEndId, edges) {
543
+ function getForEachBodyEditorNodeIds(forEachId, forEachEndId, edges, nodes) {
524
544
  const bodyNodeIds = new Set();
525
545
  const queue = [];
526
546
  const escaped = forEachId.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
@@ -540,8 +560,71 @@ function getForEachBodyEditorNodeIds(forEachId, forEachEndId, edges) {
540
560
  }
541
561
  }
542
562
  }
563
+ addRandomizeClosureToBody(bodyNodeIds, forEachEndId, edges, nodes);
543
564
  return bodyNodeIds;
544
565
  }
566
+ /**
567
+ * The body traversal above only walks *downstream* from the loop's per-item
568
+ * outputs, so an unlocked randomize node sitting on a side branch that merely
569
+ * *feeds* the body (e.g. `randomSample(...) -> promptBuilder -> generator`) is
570
+ * left out — computed once and shared, so every iteration reuses the same draw
571
+ * (scenario-labs/phoenix#8498).
572
+ *
573
+ * A locked seed means the user wants reproducibility, so those stay shared. But
574
+ * for an UNLOCKED randomize node we mutate `bodyNodeIds` in place to also include
575
+ * that node plus the deterministic chain down to the body, so the runtime clones
576
+ * it per iteration and each iteration re-draws. We only pull it in when *every*
577
+ * path out of it lands in the body — if it also feeds a node outside the loop,
578
+ * cloning it would break that external consumer, so we leave it shared.
579
+ */
580
+ function addRandomizeClosureToBody(bodyNodeIds, forEachEndId, edges, nodes) {
581
+ const nodeById = new Map(nodes.map((n) => [n.id, n]));
582
+ const isUnlockedRandomize = (id) => {
583
+ const data = nodeById.get(id)?.data;
584
+ return data?.isRandomize === true && data.isSeedLocked !== true;
585
+ };
586
+ // edge convention: `{ source: consumer, target: provider }` — an input handle
587
+ // on `source` reads an output handle on `target`.
588
+ const providersOf = (id) => edges.filter((e) => e.source === id).map((e) => e.target);
589
+ const consumersOf = (id) => edges.filter((e) => e.target === id).map((e) => e.source);
590
+ // Every node strictly upstream of the body (its transitive input providers).
591
+ const upstream = new Set();
592
+ const upstreamQueue = [...bodyNodeIds];
593
+ while (upstreamQueue.length > 0) {
594
+ for (const provider of providersOf(upstreamQueue.pop())) {
595
+ if (provider !== forEachEndId && !bodyNodeIds.has(provider) && !upstream.has(provider)) {
596
+ upstream.add(provider);
597
+ upstreamQueue.push(provider);
598
+ }
599
+ }
600
+ }
601
+ for (const randomId of upstream) {
602
+ if (!isUnlockedRandomize(randomId))
603
+ continue;
604
+ // Walk downstream from the randomize node, stopping at the body frontier.
605
+ const chain = new Set();
606
+ const chainQueue = [randomId];
607
+ let escapesLoop = false;
608
+ while (chainQueue.length > 0) {
609
+ const id = chainQueue.pop();
610
+ if (bodyNodeIds.has(id))
611
+ continue; // reached the loop body — a valid sink
612
+ chain.add(id);
613
+ const consumers = consumersOf(id);
614
+ if (consumers.length === 0) {
615
+ escapesLoop = true; // dead-end outside the loop → do not internalize
616
+ break;
617
+ }
618
+ for (const consumer of consumers) {
619
+ if (!bodyNodeIds.has(consumer))
620
+ chainQueue.push(consumer);
621
+ }
622
+ }
623
+ if (!escapesLoop)
624
+ for (const id of chain)
625
+ bodyNodeIds.add(id);
626
+ }
627
+ }
545
628
  function sortNodesByInputKeys(nodes, inputKeys) {
546
629
  return [...nodes].sort((a, b) => {
547
630
  const ai = inputKeys.indexOf(a.id);
@@ -753,7 +836,7 @@ function convertWorkflowEditorToFlow(params) {
753
836
  const endNode = nodes.find((n) => n.type === 'forEachEnd' && n.data.parentNodeId === node.id);
754
837
  if (!endNode)
755
838
  continue;
756
- forEachBodyEditorNodeIds.set(node.id, getForEachBodyEditorNodeIds(node.id, endNode.id, edges));
839
+ forEachBodyEditorNodeIds.set(node.id, getForEachBodyEditorNodeIds(node.id, endNode.id, edges, nodes));
757
840
  forEachLoopFlowIds.set(node.id, []);
758
841
  }
759
842
  // Pre-populate video firstFrame/lastFrame transform IDs for input nodes
@@ -930,18 +1013,12 @@ function convertWorkflowEditorToFlow(params) {
930
1013
  }
931
1014
  else {
932
1015
  targetNodeKey = getOutputHandleVarName(edge.target, targetOutputHandleName);
933
- targetInputType =
934
- ((targetNode?.type === 'asset' &&
935
- !!targetNode.data.isMultiple) ||
936
- targetNode?.type === 'groupItems' ||
937
- targetNode?.type === 'sliceAssets' ||
938
- targetOutputHandleName === 'allOutputs') ?
939
- 'file_array'
940
- : targetNode?.type === 'llm' && targetOutputHandleName === 'outputs' ? 'string_array'
941
- : targetNode?.type === 'asset' || targetNode?.type === 'model' ? 'file'
942
- : 'string';
1016
+ if (!targetNode)
1017
+ continue;
1018
+ const descriptor = getConcatListSourceDescriptor(targetNode, targetOutputHandle, targetOutputHandleName);
1019
+ targetInputType = descriptor.inputType;
943
1020
  }
944
- const isArr = targetInputType === 'file_array';
1021
+ const isArr = targetInputType === 'file_array' || targetInputType === 'string_array';
945
1022
  const isRequired = (targetNode?.type === 'asset' &&
946
1023
  !!targetNode.data.isRequired) ||
947
1024
  getIsModelCompose(model);
@@ -1181,8 +1258,10 @@ function convertWorkflowEditorToFlow(params) {
1181
1258
  const { variables, flowInputs } = collectConcatVarsAndInputs(itemsEdges, ctx, getOutputHandleVarName);
1182
1259
  flowInputs.push(...collectConditionalConnectionInputs(incomingEdges, node.id, ctx));
1183
1260
  const count = Math.max(1, parseInt(String(sliceData.count ?? ''), 10) || 1);
1184
- const seed = parseInt(String(sliceData.randomSeed ?? ''), 10) || 0;
1185
- const transform = `randomSample(${buildConcatArrayTransform(variables)}, ${count}, ${seed})`;
1261
+ const listExpr = buildConcatArrayTransform(variables);
1262
+ const transform = sliceData.isSeedLocked === true ?
1263
+ `randomSample(${listExpr}, ${count}, ${parseInt(String(sliceData.randomSeed ?? ''), 10) || 0})`
1264
+ : `randomSample(${listExpr}, ${count})`;
1186
1265
  flow.push({
1187
1266
  id: flowId,
1188
1267
  type: 'transform',
@@ -1200,14 +1279,16 @@ function convertWorkflowEditorToFlow(params) {
1200
1279
  const ref = targetNode ? getSourceRef(assetsEdge, ctx) : undefined;
1201
1280
  if (targetNode && ref) {
1202
1281
  const outHandle = targetNode.data.outputHandles?.find((h) => h.id === assetsEdge.targetHandle);
1203
- const varName = getOutputHandleVarName(targetNode.id, outHandle?.name ?? 'output');
1282
+ const outHandleName = outHandle?.name ?? 'output';
1283
+ const varName = getOutputHandleVarName(targetNode.id, outHandleName);
1284
+ const { inputType } = getConcatListSourceDescriptor(targetNode, outHandle, outHandleName);
1204
1285
  const from = parseInt(String(sliceData.from ?? ''), 10) || 0;
1205
1286
  const count = parseInt(String(sliceData.count ?? ''), 10) || 0;
1206
1287
  const transform = from < 0 ?
1207
1288
  `slice(${varName}, (${varName}).size() + ${from}, (${varName}).size() + ${from + count})`
1208
1289
  : `slice(${varName}, ${from}, ${from + count})`;
1209
1290
  const flowInputs = [
1210
- { name: varName, type: 'file_array', ref },
1291
+ { name: varName, type: inputType, ref },
1211
1292
  ...collectConditionalConnectionInputs(incomingEdges, node.id, ctx),
1212
1293
  ];
1213
1294
  flow.push({