@vertesia/workflow 1.3.0 → 1.4.0-dev.20260615.051508Z

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 (703) hide show
  1. package/README.md +1 -2
  2. package/lib/{types/activities → activities}/advanced/createDocumentTypeFromInteractionRun.d.ts +2 -2
  3. package/lib/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +1 -0
  4. package/lib/{esm/activities → activities}/advanced/createDocumentTypeFromInteractionRun.js +9 -9
  5. package/lib/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -0
  6. package/lib/{types/activities → activities}/advanced/createOrUpdateDocumentFromInteractionRun.d.ts +2 -2
  7. package/lib/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +1 -0
  8. package/lib/{esm/activities → activities}/advanced/createOrUpdateDocumentFromInteractionRun.js +29 -22
  9. package/lib/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -0
  10. package/lib/{types/activities → activities}/advanced/updateDocumentFromInteractionRun.d.ts +1 -1
  11. package/lib/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +1 -0
  12. package/lib/activities/advanced/updateDocumentFromInteractionRun.js +16 -0
  13. package/lib/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -0
  14. package/lib/{types/activities → activities}/chunkDocument.d.ts +3 -3
  15. package/lib/activities/chunkDocument.d.ts.map +1 -0
  16. package/lib/{esm/activities → activities}/chunkDocument.js +38 -33
  17. package/lib/activities/chunkDocument.js.map +1 -0
  18. package/lib/{types/activities → activities}/createDocumentFromOther.d.ts +1 -1
  19. package/lib/activities/createDocumentFromOther.d.ts.map +1 -0
  20. package/lib/{esm/activities → activities}/createDocumentFromOther.js +15 -13
  21. package/lib/activities/createDocumentFromOther.js.map +1 -0
  22. package/lib/{types/activities → activities}/executeInteraction.d.ts +19 -10
  23. package/lib/activities/executeInteraction.d.ts.map +1 -0
  24. package/lib/{esm/activities → activities}/executeInteraction.js +97 -78
  25. package/lib/activities/executeInteraction.js.map +1 -0
  26. package/lib/{types/activities → activities}/executeRemoteActivity.d.ts +4 -4
  27. package/lib/activities/executeRemoteActivity.d.ts.map +1 -0
  28. package/lib/{esm/activities → activities}/executeRemoteActivity.js +48 -23
  29. package/lib/activities/executeRemoteActivity.js.map +1 -0
  30. package/lib/{types/activities → activities}/extractDocumentText.d.ts +3 -3
  31. package/lib/activities/extractDocumentText.d.ts.map +1 -0
  32. package/lib/{esm/activities → activities}/extractDocumentText.js +65 -52
  33. package/lib/activities/extractDocumentText.js.map +1 -0
  34. package/lib/{types/activities → activities}/generateDocumentProperties.d.ts +4 -4
  35. package/lib/activities/generateDocumentProperties.d.ts.map +1 -0
  36. package/lib/{esm/activities → activities}/generateDocumentProperties.js +37 -33
  37. package/lib/activities/generateDocumentProperties.js.map +1 -0
  38. package/lib/{types/activities → activities}/generateEmbeddings.d.ts +3 -3
  39. package/lib/activities/generateEmbeddings.d.ts.map +1 -0
  40. package/lib/{esm/activities → activities}/generateEmbeddings.js +80 -80
  41. package/lib/activities/generateEmbeddings.js.map +1 -0
  42. package/lib/{types/activities → activities}/generateOrAssignContentType.d.ts +4 -4
  43. package/lib/activities/generateOrAssignContentType.d.ts.map +1 -0
  44. package/lib/{esm/activities → activities}/generateOrAssignContentType.js +51 -49
  45. package/lib/activities/generateOrAssignContentType.js.map +1 -0
  46. package/lib/{types/activities → activities}/getObjectFromStore.d.ts +1 -1
  47. package/lib/activities/getObjectFromStore.d.ts.map +1 -0
  48. package/lib/{esm/activities → activities}/getObjectFromStore.js +4 -3
  49. package/lib/activities/getObjectFromStore.js.map +1 -0
  50. package/lib/{types/activities → activities}/handleError.d.ts +1 -1
  51. package/lib/activities/handleError.d.ts.map +1 -0
  52. package/lib/activities/handleError.js +37 -0
  53. package/lib/activities/handleError.js.map +1 -0
  54. package/lib/activities/index-dsl.d.ts +31 -0
  55. package/lib/activities/index-dsl.d.ts.map +1 -0
  56. package/lib/activities/index-dsl.js +29 -0
  57. package/lib/activities/index-dsl.js.map +1 -0
  58. package/lib/{types/activities → activities}/index.d.ts +1 -1
  59. package/lib/activities/index.d.ts.map +1 -0
  60. package/lib/{esm/activities → activities}/index.js +1 -1
  61. package/lib/activities/index.js.map +1 -0
  62. package/lib/{types/activities → activities}/loadChildWorkflowSpec.d.ts +1 -1
  63. package/lib/activities/loadChildWorkflowSpec.d.ts.map +1 -0
  64. package/lib/{esm/activities → activities}/loadChildWorkflowSpec.js +4 -2
  65. package/lib/activities/loadChildWorkflowSpec.js.map +1 -0
  66. package/lib/{types/activities → activities}/media/prepareAudio.d.ts +1 -1
  67. package/lib/activities/media/prepareAudio.d.ts.map +1 -0
  68. package/lib/{esm/activities → activities}/media/prepareAudio.js +27 -23
  69. package/lib/activities/media/prepareAudio.js.map +1 -0
  70. package/lib/{types/activities → activities}/media/prepareVideo.d.ts +2 -2
  71. package/lib/activities/media/prepareVideo.d.ts.map +1 -0
  72. package/lib/{esm/activities → activities}/media/prepareVideo.js +72 -54
  73. package/lib/activities/media/prepareVideo.js.map +1 -0
  74. package/lib/{types/activities → activities}/media/probeMediaStreams.d.ts +2 -3
  75. package/lib/activities/media/probeMediaStreams.d.ts.map +1 -0
  76. package/lib/{esm/activities → activities}/media/probeMediaStreams.js +7 -5
  77. package/lib/activities/media/probeMediaStreams.js.map +1 -0
  78. package/lib/{types/activities → activities}/media/processPdfWithTextract.d.ts +3 -3
  79. package/lib/activities/media/processPdfWithTextract.d.ts.map +1 -0
  80. package/lib/{esm/activities → activities}/media/processPdfWithTextract.js +43 -26
  81. package/lib/activities/media/processPdfWithTextract.js.map +1 -0
  82. package/lib/{types/activities → activities}/media/saveGladiaTranscription.d.ts +2 -2
  83. package/lib/activities/media/saveGladiaTranscription.d.ts.map +1 -0
  84. package/lib/{esm/activities → activities}/media/saveGladiaTranscription.js +35 -25
  85. package/lib/activities/media/saveGladiaTranscription.js.map +1 -0
  86. package/lib/{types/activities → activities}/media/transcribeMediaWithGladia.d.ts +2 -2
  87. package/lib/activities/media/transcribeMediaWithGladia.d.ts.map +1 -0
  88. package/lib/{esm/activities → activities}/media/transcribeMediaWithGladia.js +26 -21
  89. package/lib/activities/media/transcribeMediaWithGladia.js.map +1 -0
  90. package/lib/{types/activities → activities}/mergeChildArtifacts.d.ts +1 -1
  91. package/lib/activities/mergeChildArtifacts.d.ts.map +1 -0
  92. package/lib/{esm/activities → activities}/mergeChildArtifacts.js +27 -26
  93. package/lib/activities/mergeChildArtifacts.js.map +1 -0
  94. package/lib/{types/activities → activities}/notifyWebhook.d.ts +6 -5
  95. package/lib/activities/notifyWebhook.d.ts.map +1 -0
  96. package/lib/{esm/activities → activities}/notifyWebhook.js +20 -17
  97. package/lib/activities/notifyWebhook.js.map +1 -0
  98. package/lib/{types/activities → activities}/rateLimiter.d.ts +1 -1
  99. package/lib/activities/rateLimiter.d.ts.map +1 -0
  100. package/lib/{esm/activities → activities}/rateLimiter.js +4 -3
  101. package/lib/activities/rateLimiter.js.map +1 -0
  102. package/lib/{types/activities → activities}/renditions/generateImageRendition.d.ts +3 -3
  103. package/lib/activities/renditions/generateImageRendition.d.ts.map +1 -0
  104. package/lib/activities/renditions/generateImageRendition.js +75 -0
  105. package/lib/activities/renditions/generateImageRendition.js.map +1 -0
  106. package/lib/{types/activities → activities}/renditions/generateVideoRendition.d.ts +3 -3
  107. package/lib/activities/renditions/generateVideoRendition.d.ts.map +1 -0
  108. package/lib/{esm/activities → activities}/renditions/generateVideoRendition.js +51 -54
  109. package/lib/activities/renditions/generateVideoRendition.js.map +1 -0
  110. package/lib/{types/activities → activities}/resolveRemoteActivities.d.ts +3 -4
  111. package/lib/activities/resolveRemoteActivities.d.ts.map +1 -0
  112. package/lib/{esm/activities → activities}/resolveRemoteActivities.js +16 -15
  113. package/lib/activities/resolveRemoteActivities.js.map +1 -0
  114. package/lib/{types/activities → activities}/setDocumentStatus.d.ts +1 -1
  115. package/lib/activities/setDocumentStatus.d.ts.map +1 -0
  116. package/lib/{esm/activities → activities}/setDocumentStatus.js +5 -3
  117. package/lib/activities/setDocumentStatus.js.map +1 -0
  118. package/lib/{types/bulk-import.d.ts → bulk-import.d.ts} +10 -1
  119. package/lib/bulk-import.d.ts.map +1 -0
  120. package/lib/bulk-import.js.map +1 -0
  121. package/lib/{types/conversion → conversion}/TextractProcessor.d.ts +7 -4
  122. package/lib/conversion/TextractProcessor.d.ts.map +1 -0
  123. package/lib/{esm/conversion → conversion}/TextractProcessor.js +38 -38
  124. package/lib/conversion/TextractProcessor.js.map +1 -0
  125. package/lib/conversion/image.d.ts.map +1 -0
  126. package/lib/{esm/conversion → conversion}/image.js +35 -35
  127. package/lib/conversion/image.js.map +1 -0
  128. package/lib/conversion/markitdown.d.ts.map +1 -0
  129. package/lib/{esm/conversion → conversion}/markitdown.js +11 -11
  130. package/lib/conversion/markitdown.js.map +1 -0
  131. package/lib/conversion/mutool.d.ts.map +1 -0
  132. package/lib/{esm/conversion → conversion}/mutool.js +19 -24
  133. package/lib/conversion/mutool.js.map +1 -0
  134. package/lib/conversion/pandoc.d.ts.map +1 -0
  135. package/lib/{esm/conversion → conversion}/pandoc.js +11 -11
  136. package/lib/conversion/pandoc.js.map +1 -0
  137. package/lib/dsl/conditions.d.ts +2 -0
  138. package/lib/dsl/conditions.d.ts.map +1 -0
  139. package/lib/dsl/conditions.js +90 -0
  140. package/lib/dsl/conditions.js.map +1 -0
  141. package/lib/{types/dsl → dsl}/dsl-workflow.d.ts +2 -2
  142. package/lib/dsl/dsl-workflow.d.ts.map +1 -0
  143. package/lib/{esm/dsl → dsl}/dsl-workflow.js +93 -65
  144. package/lib/dsl/dsl-workflow.js.map +1 -0
  145. package/lib/dsl/dslProxyActivities.d.ts +7 -0
  146. package/lib/dsl/dslProxyActivities.d.ts.map +1 -0
  147. package/lib/{esm/dsl → dsl}/dslProxyActivities.js +10 -1
  148. package/lib/dsl/dslProxyActivities.js.map +1 -0
  149. package/lib/dsl/projections.d.ts +4 -0
  150. package/lib/dsl/projections.d.ts.map +1 -0
  151. package/lib/{esm/dsl → dsl}/projections.js +22 -8
  152. package/lib/dsl/projections.js.map +1 -0
  153. package/lib/{types/dsl → dsl}/setup/ActivityContext.d.ts +4 -4
  154. package/lib/dsl/setup/ActivityContext.d.ts.map +1 -0
  155. package/lib/{esm/dsl → dsl}/setup/ActivityContext.js +22 -25
  156. package/lib/dsl/setup/ActivityContext.js.map +1 -0
  157. package/lib/{types/dsl → dsl}/setup/fetch/DataProvider.d.ts +3 -3
  158. package/lib/dsl/setup/fetch/DataProvider.d.ts.map +1 -0
  159. package/lib/{esm/dsl → dsl}/setup/fetch/DataProvider.js +2 -1
  160. package/lib/dsl/setup/fetch/DataProvider.js.map +1 -0
  161. package/lib/dsl/setup/fetch/index.d.ts +6 -0
  162. package/lib/dsl/setup/fetch/index.d.ts.map +1 -0
  163. package/lib/{esm/dsl → dsl}/setup/fetch/index.js +1 -1
  164. package/lib/dsl/setup/fetch/index.js.map +1 -0
  165. package/lib/{types/dsl → dsl}/setup/fetch/providers.d.ts +6 -6
  166. package/lib/dsl/setup/fetch/providers.d.ts.map +1 -0
  167. package/lib/{esm/dsl → dsl}/setup/fetch/providers.js +30 -16
  168. package/lib/dsl/setup/fetch/providers.js.map +1 -0
  169. package/lib/dsl/test/test-child-workflow.d.ts +4 -0
  170. package/lib/dsl/test/test-child-workflow.d.ts.map +1 -0
  171. package/lib/{esm/dsl → dsl}/test/test-child-workflow.js +1 -1
  172. package/lib/dsl/test/test-child-workflow.js.map +1 -0
  173. package/lib/{types/dsl → dsl}/validation.d.ts +1 -1
  174. package/lib/dsl/validation.d.ts.map +1 -0
  175. package/lib/{esm/dsl → dsl}/validation.js +8 -8
  176. package/lib/dsl/validation.js.map +1 -0
  177. package/lib/{types/dsl → dsl}/vars.d.ts +16 -16
  178. package/lib/dsl/vars.d.ts.map +1 -0
  179. package/lib/{esm/dsl → dsl}/vars.js +20 -15
  180. package/lib/dsl/vars.js.map +1 -0
  181. package/lib/dsl/walk.d.ts +18 -0
  182. package/lib/dsl/walk.d.ts.map +1 -0
  183. package/lib/{esm/dsl → dsl}/walk.js +37 -16
  184. package/lib/dsl/walk.js.map +1 -0
  185. package/lib/dsl.d.ts +4 -0
  186. package/lib/dsl.d.ts.map +1 -0
  187. package/lib/dsl.js +4 -0
  188. package/lib/dsl.js.map +1 -0
  189. package/lib/{types/errors.d.ts → errors.d.ts} +2 -2
  190. package/lib/errors.d.ts.map +1 -0
  191. package/lib/{esm/errors.js → errors.js} +22 -17
  192. package/lib/errors.js.map +1 -0
  193. package/lib/index.d.ts +36 -0
  194. package/lib/index.d.ts.map +1 -0
  195. package/lib/index.js +37 -0
  196. package/lib/index.js.map +1 -0
  197. package/lib/result-types.d.ts.map +1 -0
  198. package/lib/result-types.js.map +1 -0
  199. package/lib/security/ssrf.d.ts.map +1 -0
  200. package/lib/security/ssrf.js.map +1 -0
  201. package/lib/system/notifyWebhookWorkflow.d.ts +8 -0
  202. package/lib/system/notifyWebhookWorkflow.d.ts.map +1 -0
  203. package/lib/{esm/system → system}/notifyWebhookWorkflow.js +13 -12
  204. package/lib/system/notifyWebhookWorkflow.js.map +1 -0
  205. package/lib/{types/system → system}/recalculateEmbeddingsWorkflow.d.ts +1 -1
  206. package/lib/system/recalculateEmbeddingsWorkflow.d.ts.map +1 -0
  207. package/lib/{esm/system → system}/recalculateEmbeddingsWorkflow.js +7 -7
  208. package/lib/system/recalculateEmbeddingsWorkflow.js.map +1 -0
  209. package/lib/utils/activity-info.d.ts +12 -0
  210. package/lib/utils/activity-info.d.ts.map +1 -0
  211. package/lib/utils/activity-info.js +15 -0
  212. package/lib/utils/activity-info.js.map +1 -0
  213. package/lib/{types/utils → utils}/auth.d.ts +1 -1
  214. package/lib/utils/auth.d.ts.map +1 -0
  215. package/lib/utils/auth.js.map +1 -0
  216. package/lib/{types/utils → utils}/blobs.d.ts +1 -1
  217. package/lib/utils/blobs.d.ts.map +1 -0
  218. package/lib/{esm/utils → utils}/blobs.js +17 -16
  219. package/lib/utils/blobs.js.map +1 -0
  220. package/lib/utils/chunks.d.ts.map +1 -0
  221. package/lib/{esm/utils → utils}/chunks.js +1 -1
  222. package/lib/utils/chunks.js.map +1 -0
  223. package/lib/utils/client.d.ts +8 -0
  224. package/lib/utils/client.d.ts.map +1 -0
  225. package/lib/utils/client.js +64 -0
  226. package/lib/utils/client.js.map +1 -0
  227. package/lib/{types/utils → utils}/expand-vars.d.ts +1 -1
  228. package/lib/utils/expand-vars.d.ts.map +1 -0
  229. package/lib/{esm/utils → utils}/expand-vars.js +4 -1
  230. package/lib/utils/expand-vars.js.map +1 -0
  231. package/lib/{types/utils → utils}/renditions.d.ts +2 -2
  232. package/lib/utils/renditions.d.ts.map +1 -0
  233. package/lib/{esm/utils → utils}/renditions.js +29 -18
  234. package/lib/utils/renditions.js.map +1 -0
  235. package/lib/{types/utils → utils}/storage.d.ts +2 -2
  236. package/lib/utils/storage.d.ts.map +1 -0
  237. package/lib/{esm/utils → utils}/storage.js +13 -12
  238. package/lib/utils/storage.js.map +1 -0
  239. package/lib/{types/utils → utils}/text-preview-utils.d.ts +2 -2
  240. package/lib/utils/text-preview-utils.d.ts.map +1 -0
  241. package/lib/{esm/utils → utils}/text-preview-utils.js +4 -4
  242. package/lib/utils/text-preview-utils.js.map +1 -0
  243. package/lib/{types/utils → utils}/tokens.d.ts +1 -1
  244. package/lib/utils/tokens.d.ts.map +1 -0
  245. package/lib/{esm/utils → utils}/tokens.js +3 -3
  246. package/lib/utils/tokens.js.map +1 -0
  247. package/lib/vars.d.ts +3 -0
  248. package/lib/vars.d.ts.map +1 -0
  249. package/lib/vars.js +4 -0
  250. package/lib/vars.js.map +1 -0
  251. package/lib/workflows-bundle.js +5561 -2815
  252. package/lib/workflows.d.ts +7 -0
  253. package/lib/workflows.d.ts.map +1 -0
  254. package/lib/workflows.js +7 -0
  255. package/lib/workflows.js.map +1 -0
  256. package/package.json +47 -88
  257. package/src/activities/advanced/createDocumentTypeFromInteractionRun.ts +30 -17
  258. package/src/activities/advanced/createOrUpdateDocumentFromInteractionRun.ts +51 -37
  259. package/src/activities/advanced/updateDocumentFromInteractionRun.ts +12 -11
  260. package/src/activities/chunkDocument.ts +87 -77
  261. package/src/activities/createDocumentFromOther.ts +19 -25
  262. package/src/activities/executeInteraction.test.ts +81 -8
  263. package/src/activities/executeInteraction.ts +147 -102
  264. package/src/activities/executeRemoteActivity.test.ts +61 -67
  265. package/src/activities/executeRemoteActivity.ts +56 -29
  266. package/src/activities/extractDocumentText.ts +75 -64
  267. package/src/activities/generateDocumentProperties.ts +69 -50
  268. package/src/activities/generateEmbeddings.test.ts +114 -0
  269. package/src/activities/generateEmbeddings.ts +113 -141
  270. package/src/activities/generateOrAssignContentType.ts +219 -231
  271. package/src/activities/getObjectFromStore.ts +11 -10
  272. package/src/activities/handleError.ts +23 -11
  273. package/src/activities/index-dsl.ts +30 -30
  274. package/src/activities/index.ts +1 -1
  275. package/src/activities/loadChildWorkflowSpec.ts +8 -3
  276. package/src/activities/media/prepareAudio.ts +47 -56
  277. package/src/activities/media/prepareVideo.ts +107 -122
  278. package/src/activities/media/probeMediaStreams.test.ts +11 -13
  279. package/src/activities/media/probeMediaStreams.ts +13 -15
  280. package/src/activities/media/processPdfWithTextract.ts +65 -46
  281. package/src/activities/media/saveGladiaTranscription.test.ts +122 -121
  282. package/src/activities/media/saveGladiaTranscription.ts +52 -26
  283. package/src/activities/media/transcribeMediaWithGladia.test.ts +173 -165
  284. package/src/activities/media/transcribeMediaWithGladia.ts +44 -28
  285. package/src/activities/mergeChildArtifacts.ts +36 -38
  286. package/src/activities/notifyWebhook.test.ts +223 -217
  287. package/src/activities/notifyWebhook.ts +67 -40
  288. package/src/activities/rateLimiter.ts +31 -30
  289. package/src/activities/renditions/generateImageRendition.ts +54 -64
  290. package/src/activities/renditions/generateVideoRendition.ts +87 -141
  291. package/src/activities/resolveRemoteActivities.test.ts +96 -88
  292. package/src/activities/resolveRemoteActivities.ts +32 -23
  293. package/src/activities/setDocumentStatus.ts +11 -7
  294. package/src/bulk-import.ts +11 -5
  295. package/src/conversion/TextractProcessor.ts +69 -71
  296. package/src/conversion/image.test.ts +31 -31
  297. package/src/conversion/image.ts +41 -38
  298. package/src/conversion/markitdown.ts +11 -11
  299. package/src/conversion/mutool.test.ts +77 -62
  300. package/src/conversion/mutool.ts +27 -49
  301. package/src/conversion/pandoc.test.ts +5 -6
  302. package/src/conversion/pandoc.ts +11 -11
  303. package/src/dsl/conditions.ts +35 -17
  304. package/src/dsl/dsl-workflow.test.ts +49 -39
  305. package/src/dsl/dsl-workflow.ts +200 -112
  306. package/src/dsl/dslProxyActivities.test.ts +23 -0
  307. package/src/dsl/dslProxyActivities.ts +46 -26
  308. package/src/dsl/ms.d.ts +34 -3
  309. package/src/dsl/projections.test.ts +108 -100
  310. package/src/dsl/projections.ts +46 -26
  311. package/src/dsl/setup/ActivityContext.test.ts +22 -23
  312. package/src/dsl/setup/ActivityContext.ts +39 -82
  313. package/src/dsl/setup/fetch/DataProvider.ts +11 -8
  314. package/src/dsl/setup/fetch/index.ts +6 -8
  315. package/src/dsl/setup/fetch/providers.ts +38 -24
  316. package/src/dsl/test/test-child-workflow.ts +3 -2
  317. package/src/dsl/validation.test.ts +232 -213
  318. package/src/dsl/validation.ts +17 -12
  319. package/src/dsl/vars.test.ts +143 -140
  320. package/src/dsl/vars.ts +61 -54
  321. package/src/dsl/walk.test.ts +61 -56
  322. package/src/dsl/walk.ts +61 -35
  323. package/src/dsl/workflow-exec-child.test.ts +77 -61
  324. package/src/dsl/workflow-fetch.test.ts +40 -38
  325. package/src/dsl/workflow-import.test.ts +27 -27
  326. package/src/dsl/workflow.test.ts +34 -33
  327. package/src/dsl.ts +3 -4
  328. package/src/errors.ts +31 -23
  329. package/src/index.ts +28 -33
  330. package/src/result-types.ts +6 -9
  331. package/src/system/notifyWebhookWorkflow.ts +23 -23
  332. package/src/system/recalculateEmbeddingsWorkflow.ts +14 -17
  333. package/src/utils/activity-info.ts +15 -0
  334. package/src/utils/auth.ts +1 -1
  335. package/src/utils/blobs.ts +19 -18
  336. package/src/utils/chunks.ts +7 -8
  337. package/src/utils/client.ts +57 -17
  338. package/src/utils/expand-vars.ts +9 -6
  339. package/src/utils/renditions.ts +68 -72
  340. package/src/utils/storage.ts +18 -22
  341. package/src/utils/text-preview-utils.ts +9 -19
  342. package/src/utils/tokens.ts +9 -11
  343. package/src/vars.ts +2 -2
  344. package/src/workflows.ts +3 -4
  345. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js +0 -33
  346. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  347. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +0 -73
  348. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  349. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js +0 -19
  350. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  351. package/lib/cjs/activities/chunkDocument.js +0 -111
  352. package/lib/cjs/activities/chunkDocument.js.map +0 -1
  353. package/lib/cjs/activities/createDocumentFromOther.js +0 -64
  354. package/lib/cjs/activities/createDocumentFromOther.js.map +0 -1
  355. package/lib/cjs/activities/executeInteraction.js +0 -241
  356. package/lib/cjs/activities/executeInteraction.js.map +0 -1
  357. package/lib/cjs/activities/executeRemoteActivity.js +0 -126
  358. package/lib/cjs/activities/executeRemoteActivity.js.map +0 -1
  359. package/lib/cjs/activities/extractDocumentText.js +0 -196
  360. package/lib/cjs/activities/extractDocumentText.js.map +0 -1
  361. package/lib/cjs/activities/generateDocumentProperties.js +0 -109
  362. package/lib/cjs/activities/generateDocumentProperties.js.map +0 -1
  363. package/lib/cjs/activities/generateEmbeddings.js +0 -269
  364. package/lib/cjs/activities/generateEmbeddings.js.map +0 -1
  365. package/lib/cjs/activities/generateOrAssignContentType.js +0 -173
  366. package/lib/cjs/activities/generateOrAssignContentType.js.map +0 -1
  367. package/lib/cjs/activities/getObjectFromStore.js +0 -31
  368. package/lib/cjs/activities/getObjectFromStore.js.map +0 -1
  369. package/lib/cjs/activities/handleError.js +0 -29
  370. package/lib/cjs/activities/handleError.js.map +0 -1
  371. package/lib/cjs/activities/index-dsl.js +0 -59
  372. package/lib/cjs/activities/index-dsl.js.map +0 -1
  373. package/lib/cjs/activities/index.js +0 -21
  374. package/lib/cjs/activities/index.js.map +0 -1
  375. package/lib/cjs/activities/loadChildWorkflowSpec.js +0 -15
  376. package/lib/cjs/activities/loadChildWorkflowSpec.js.map +0 -1
  377. package/lib/cjs/activities/media/prepareAudio.js +0 -240
  378. package/lib/cjs/activities/media/prepareAudio.js.map +0 -1
  379. package/lib/cjs/activities/media/prepareVideo.js +0 -432
  380. package/lib/cjs/activities/media/prepareVideo.js.map +0 -1
  381. package/lib/cjs/activities/media/probeMediaStreams.js +0 -49
  382. package/lib/cjs/activities/media/probeMediaStreams.js.map +0 -1
  383. package/lib/cjs/activities/media/processPdfWithTextract.js +0 -103
  384. package/lib/cjs/activities/media/processPdfWithTextract.js.map +0 -1
  385. package/lib/cjs/activities/media/saveGladiaTranscription.js +0 -103
  386. package/lib/cjs/activities/media/saveGladiaTranscription.js.map +0 -1
  387. package/lib/cjs/activities/media/transcribeMediaWithGladia.js +0 -107
  388. package/lib/cjs/activities/media/transcribeMediaWithGladia.js.map +0 -1
  389. package/lib/cjs/activities/mergeChildArtifacts.js +0 -150
  390. package/lib/cjs/activities/mergeChildArtifacts.js.map +0 -1
  391. package/lib/cjs/activities/notifyWebhook.js +0 -167
  392. package/lib/cjs/activities/notifyWebhook.js.map +0 -1
  393. package/lib/cjs/activities/rateLimiter.js +0 -30
  394. package/lib/cjs/activities/rateLimiter.js.map +0 -1
  395. package/lib/cjs/activities/renditions/generateImageRendition.js +0 -66
  396. package/lib/cjs/activities/renditions/generateImageRendition.js.map +0 -1
  397. package/lib/cjs/activities/renditions/generateVideoRendition.js +0 -200
  398. package/lib/cjs/activities/renditions/generateVideoRendition.js.map +0 -1
  399. package/lib/cjs/activities/resolveRemoteActivities.js +0 -133
  400. package/lib/cjs/activities/resolveRemoteActivities.js.map +0 -1
  401. package/lib/cjs/activities/setDocumentStatus.js +0 -26
  402. package/lib/cjs/activities/setDocumentStatus.js.map +0 -1
  403. package/lib/cjs/bulk-import.js +0 -12
  404. package/lib/cjs/bulk-import.js.map +0 -1
  405. package/lib/cjs/conversion/TextractProcessor.js +0 -417
  406. package/lib/cjs/conversion/TextractProcessor.js.map +0 -1
  407. package/lib/cjs/conversion/image.js +0 -149
  408. package/lib/cjs/conversion/image.js.map +0 -1
  409. package/lib/cjs/conversion/markitdown.js +0 -42
  410. package/lib/cjs/conversion/markitdown.js.map +0 -1
  411. package/lib/cjs/conversion/mutool.js +0 -147
  412. package/lib/cjs/conversion/mutool.js.map +0 -1
  413. package/lib/cjs/conversion/pandoc.js +0 -39
  414. package/lib/cjs/conversion/pandoc.js.map +0 -1
  415. package/lib/cjs/dsl/conditions.js +0 -81
  416. package/lib/cjs/dsl/conditions.js.map +0 -1
  417. package/lib/cjs/dsl/dsl-workflow.js +0 -458
  418. package/lib/cjs/dsl/dsl-workflow.js.map +0 -1
  419. package/lib/cjs/dsl/dslProxyActivities.js +0 -23
  420. package/lib/cjs/dsl/dslProxyActivities.js.map +0 -1
  421. package/lib/cjs/dsl/projections.js +0 -59
  422. package/lib/cjs/dsl/projections.js.map +0 -1
  423. package/lib/cjs/dsl/setup/ActivityContext.js +0 -188
  424. package/lib/cjs/dsl/setup/ActivityContext.js.map +0 -1
  425. package/lib/cjs/dsl/setup/fetch/DataProvider.js +0 -51
  426. package/lib/cjs/dsl/setup/fetch/DataProvider.js.map +0 -1
  427. package/lib/cjs/dsl/setup/fetch/index.js +0 -16
  428. package/lib/cjs/dsl/setup/fetch/index.js.map +0 -1
  429. package/lib/cjs/dsl/setup/fetch/providers.js +0 -67
  430. package/lib/cjs/dsl/setup/fetch/providers.js.map +0 -1
  431. package/lib/cjs/dsl/test/test-child-workflow.js +0 -10
  432. package/lib/cjs/dsl/test/test-child-workflow.js.map +0 -1
  433. package/lib/cjs/dsl/validation.js +0 -122
  434. package/lib/cjs/dsl/validation.js.map +0 -1
  435. package/lib/cjs/dsl/vars.js +0 -341
  436. package/lib/cjs/dsl/vars.js.map +0 -1
  437. package/lib/cjs/dsl/walk.js +0 -100
  438. package/lib/cjs/dsl/walk.js.map +0 -1
  439. package/lib/cjs/dsl.js +0 -20
  440. package/lib/cjs/dsl.js.map +0 -1
  441. package/lib/cjs/errors.js +0 -89
  442. package/lib/cjs/errors.js.map +0 -1
  443. package/lib/cjs/index.js +0 -57
  444. package/lib/cjs/index.js.map +0 -1
  445. package/lib/cjs/iterative-generation/activities/extractToc.js +0 -47
  446. package/lib/cjs/iterative-generation/activities/extractToc.js.map +0 -1
  447. package/lib/cjs/iterative-generation/activities/finalizeOutput.js +0 -72
  448. package/lib/cjs/iterative-generation/activities/finalizeOutput.js.map +0 -1
  449. package/lib/cjs/iterative-generation/activities/generatePart.js +0 -78
  450. package/lib/cjs/iterative-generation/activities/generatePart.js.map +0 -1
  451. package/lib/cjs/iterative-generation/activities/generateToc.js +0 -86
  452. package/lib/cjs/iterative-generation/activities/generateToc.js.map +0 -1
  453. package/lib/cjs/iterative-generation/activities/index.js +0 -12
  454. package/lib/cjs/iterative-generation/activities/index.js.map +0 -1
  455. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js +0 -56
  456. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  457. package/lib/cjs/iterative-generation/types.js +0 -5
  458. package/lib/cjs/iterative-generation/types.js.map +0 -1
  459. package/lib/cjs/iterative-generation/utils.js +0 -121
  460. package/lib/cjs/iterative-generation/utils.js.map +0 -1
  461. package/lib/cjs/package.json +0 -3
  462. package/lib/cjs/result-types.js +0 -10
  463. package/lib/cjs/result-types.js.map +0 -1
  464. package/lib/cjs/security/ssrf.js +0 -34
  465. package/lib/cjs/security/ssrf.js.map +0 -1
  466. package/lib/cjs/system/notifyWebhookWorkflow.js +0 -53
  467. package/lib/cjs/system/notifyWebhookWorkflow.js.map +0 -1
  468. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js +0 -33
  469. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  470. package/lib/cjs/utils/auth.js +0 -15
  471. package/lib/cjs/utils/auth.js.map +0 -1
  472. package/lib/cjs/utils/blobs.js +0 -64
  473. package/lib/cjs/utils/blobs.js.map +0 -1
  474. package/lib/cjs/utils/chunks.js +0 -14
  475. package/lib/cjs/utils/chunks.js.map +0 -1
  476. package/lib/cjs/utils/client.js +0 -31
  477. package/lib/cjs/utils/client.js.map +0 -1
  478. package/lib/cjs/utils/expand-vars.js +0 -33
  479. package/lib/cjs/utils/expand-vars.js.map +0 -1
  480. package/lib/cjs/utils/memory.js +0 -65
  481. package/lib/cjs/utils/memory.js.map +0 -1
  482. package/lib/cjs/utils/renditions.js +0 -92
  483. package/lib/cjs/utils/renditions.js.map +0 -1
  484. package/lib/cjs/utils/storage.js +0 -54
  485. package/lib/cjs/utils/storage.js.map +0 -1
  486. package/lib/cjs/utils/text-preview-utils.js +0 -43
  487. package/lib/cjs/utils/text-preview-utils.js.map +0 -1
  488. package/lib/cjs/utils/tokens.js +0 -38
  489. package/lib/cjs/utils/tokens.js.map +0 -1
  490. package/lib/cjs/vars.js +0 -20
  491. package/lib/cjs/vars.js.map +0 -1
  492. package/lib/cjs/workflows.js +0 -15
  493. package/lib/cjs/workflows.js.map +0 -1
  494. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js.map +0 -1
  495. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +0 -1
  496. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js +0 -16
  497. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js.map +0 -1
  498. package/lib/esm/activities/chunkDocument.js.map +0 -1
  499. package/lib/esm/activities/createDocumentFromOther.js.map +0 -1
  500. package/lib/esm/activities/executeInteraction.js.map +0 -1
  501. package/lib/esm/activities/executeRemoteActivity.js.map +0 -1
  502. package/lib/esm/activities/extractDocumentText.js.map +0 -1
  503. package/lib/esm/activities/generateDocumentProperties.js.map +0 -1
  504. package/lib/esm/activities/generateEmbeddings.js.map +0 -1
  505. package/lib/esm/activities/generateOrAssignContentType.js.map +0 -1
  506. package/lib/esm/activities/getObjectFromStore.js.map +0 -1
  507. package/lib/esm/activities/handleError.js +0 -26
  508. package/lib/esm/activities/handleError.js.map +0 -1
  509. package/lib/esm/activities/index-dsl.js +0 -29
  510. package/lib/esm/activities/index-dsl.js.map +0 -1
  511. package/lib/esm/activities/index.js.map +0 -1
  512. package/lib/esm/activities/loadChildWorkflowSpec.js.map +0 -1
  513. package/lib/esm/activities/media/prepareAudio.js.map +0 -1
  514. package/lib/esm/activities/media/prepareVideo.js.map +0 -1
  515. package/lib/esm/activities/media/probeMediaStreams.js.map +0 -1
  516. package/lib/esm/activities/media/processPdfWithTextract.js.map +0 -1
  517. package/lib/esm/activities/media/saveGladiaTranscription.js.map +0 -1
  518. package/lib/esm/activities/media/transcribeMediaWithGladia.js.map +0 -1
  519. package/lib/esm/activities/mergeChildArtifacts.js.map +0 -1
  520. package/lib/esm/activities/notifyWebhook.js.map +0 -1
  521. package/lib/esm/activities/rateLimiter.js.map +0 -1
  522. package/lib/esm/activities/renditions/generateImageRendition.js +0 -63
  523. package/lib/esm/activities/renditions/generateImageRendition.js.map +0 -1
  524. package/lib/esm/activities/renditions/generateVideoRendition.js.map +0 -1
  525. package/lib/esm/activities/resolveRemoteActivities.js.map +0 -1
  526. package/lib/esm/activities/setDocumentStatus.js.map +0 -1
  527. package/lib/esm/bulk-import.js.map +0 -1
  528. package/lib/esm/conversion/TextractProcessor.js.map +0 -1
  529. package/lib/esm/conversion/image.js.map +0 -1
  530. package/lib/esm/conversion/markitdown.js.map +0 -1
  531. package/lib/esm/conversion/mutool.js.map +0 -1
  532. package/lib/esm/conversion/pandoc.js.map +0 -1
  533. package/lib/esm/dsl/conditions.js +0 -75
  534. package/lib/esm/dsl/conditions.js.map +0 -1
  535. package/lib/esm/dsl/dsl-workflow.js.map +0 -1
  536. package/lib/esm/dsl/dslProxyActivities.js.map +0 -1
  537. package/lib/esm/dsl/projections.js.map +0 -1
  538. package/lib/esm/dsl/setup/ActivityContext.js.map +0 -1
  539. package/lib/esm/dsl/setup/fetch/DataProvider.js.map +0 -1
  540. package/lib/esm/dsl/setup/fetch/index.js.map +0 -1
  541. package/lib/esm/dsl/setup/fetch/providers.js.map +0 -1
  542. package/lib/esm/dsl/test/test-child-workflow.js.map +0 -1
  543. package/lib/esm/dsl/validation.js.map +0 -1
  544. package/lib/esm/dsl/vars.js.map +0 -1
  545. package/lib/esm/dsl/walk.js.map +0 -1
  546. package/lib/esm/dsl.js +0 -4
  547. package/lib/esm/dsl.js.map +0 -1
  548. package/lib/esm/errors.js.map +0 -1
  549. package/lib/esm/index.js +0 -39
  550. package/lib/esm/index.js.map +0 -1
  551. package/lib/esm/iterative-generation/activities/extractToc.js +0 -44
  552. package/lib/esm/iterative-generation/activities/extractToc.js.map +0 -1
  553. package/lib/esm/iterative-generation/activities/finalizeOutput.js +0 -69
  554. package/lib/esm/iterative-generation/activities/finalizeOutput.js.map +0 -1
  555. package/lib/esm/iterative-generation/activities/generatePart.js +0 -75
  556. package/lib/esm/iterative-generation/activities/generatePart.js.map +0 -1
  557. package/lib/esm/iterative-generation/activities/generateToc.js +0 -83
  558. package/lib/esm/iterative-generation/activities/generateToc.js.map +0 -1
  559. package/lib/esm/iterative-generation/activities/index.js +0 -5
  560. package/lib/esm/iterative-generation/activities/index.js.map +0 -1
  561. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js +0 -53
  562. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js.map +0 -1
  563. package/lib/esm/iterative-generation/types.js +0 -2
  564. package/lib/esm/iterative-generation/types.js.map +0 -1
  565. package/lib/esm/iterative-generation/utils.js +0 -112
  566. package/lib/esm/iterative-generation/utils.js.map +0 -1
  567. package/lib/esm/result-types.js.map +0 -1
  568. package/lib/esm/security/ssrf.js.map +0 -1
  569. package/lib/esm/system/notifyWebhookWorkflow.js.map +0 -1
  570. package/lib/esm/system/recalculateEmbeddingsWorkflow.js.map +0 -1
  571. package/lib/esm/utils/auth.js.map +0 -1
  572. package/lib/esm/utils/blobs.js.map +0 -1
  573. package/lib/esm/utils/chunks.js.map +0 -1
  574. package/lib/esm/utils/client.js +0 -27
  575. package/lib/esm/utils/client.js.map +0 -1
  576. package/lib/esm/utils/expand-vars.js.map +0 -1
  577. package/lib/esm/utils/memory.js +0 -55
  578. package/lib/esm/utils/memory.js.map +0 -1
  579. package/lib/esm/utils/renditions.js.map +0 -1
  580. package/lib/esm/utils/storage.js.map +0 -1
  581. package/lib/esm/utils/text-preview-utils.js.map +0 -1
  582. package/lib/esm/utils/tokens.js.map +0 -1
  583. package/lib/esm/vars.js +0 -4
  584. package/lib/esm/vars.js.map +0 -1
  585. package/lib/esm/workflows.js +0 -8
  586. package/lib/esm/workflows.js.map +0 -1
  587. package/lib/tsconfig.tsbuildinfo +0 -1
  588. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +0 -1
  589. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +0 -1
  590. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +0 -1
  591. package/lib/types/activities/chunkDocument.d.ts.map +0 -1
  592. package/lib/types/activities/createDocumentFromOther.d.ts.map +0 -1
  593. package/lib/types/activities/executeInteraction.d.ts.map +0 -1
  594. package/lib/types/activities/executeRemoteActivity.d.ts.map +0 -1
  595. package/lib/types/activities/extractDocumentText.d.ts.map +0 -1
  596. package/lib/types/activities/generateDocumentProperties.d.ts.map +0 -1
  597. package/lib/types/activities/generateEmbeddings.d.ts.map +0 -1
  598. package/lib/types/activities/generateOrAssignContentType.d.ts.map +0 -1
  599. package/lib/types/activities/getObjectFromStore.d.ts.map +0 -1
  600. package/lib/types/activities/handleError.d.ts.map +0 -1
  601. package/lib/types/activities/index-dsl.d.ts +0 -31
  602. package/lib/types/activities/index-dsl.d.ts.map +0 -1
  603. package/lib/types/activities/index.d.ts.map +0 -1
  604. package/lib/types/activities/loadChildWorkflowSpec.d.ts.map +0 -1
  605. package/lib/types/activities/media/prepareAudio.d.ts.map +0 -1
  606. package/lib/types/activities/media/prepareVideo.d.ts.map +0 -1
  607. package/lib/types/activities/media/probeMediaStreams.d.ts.map +0 -1
  608. package/lib/types/activities/media/processPdfWithTextract.d.ts.map +0 -1
  609. package/lib/types/activities/media/saveGladiaTranscription.d.ts.map +0 -1
  610. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts.map +0 -1
  611. package/lib/types/activities/mergeChildArtifacts.d.ts.map +0 -1
  612. package/lib/types/activities/notifyWebhook.d.ts.map +0 -1
  613. package/lib/types/activities/rateLimiter.d.ts.map +0 -1
  614. package/lib/types/activities/renditions/generateImageRendition.d.ts.map +0 -1
  615. package/lib/types/activities/renditions/generateVideoRendition.d.ts.map +0 -1
  616. package/lib/types/activities/resolveRemoteActivities.d.ts.map +0 -1
  617. package/lib/types/activities/setDocumentStatus.d.ts.map +0 -1
  618. package/lib/types/bulk-import.d.ts.map +0 -1
  619. package/lib/types/conversion/TextractProcessor.d.ts.map +0 -1
  620. package/lib/types/conversion/image.d.ts.map +0 -1
  621. package/lib/types/conversion/markitdown.d.ts.map +0 -1
  622. package/lib/types/conversion/mutool.d.ts.map +0 -1
  623. package/lib/types/conversion/pandoc.d.ts.map +0 -1
  624. package/lib/types/dsl/conditions.d.ts +0 -2
  625. package/lib/types/dsl/conditions.d.ts.map +0 -1
  626. package/lib/types/dsl/dsl-workflow.d.ts.map +0 -1
  627. package/lib/types/dsl/dslProxyActivities.d.ts +0 -10
  628. package/lib/types/dsl/dslProxyActivities.d.ts.map +0 -1
  629. package/lib/types/dsl/projections.d.ts +0 -4
  630. package/lib/types/dsl/projections.d.ts.map +0 -1
  631. package/lib/types/dsl/setup/ActivityContext.d.ts.map +0 -1
  632. package/lib/types/dsl/setup/fetch/DataProvider.d.ts.map +0 -1
  633. package/lib/types/dsl/setup/fetch/index.d.ts +0 -6
  634. package/lib/types/dsl/setup/fetch/index.d.ts.map +0 -1
  635. package/lib/types/dsl/setup/fetch/providers.d.ts.map +0 -1
  636. package/lib/types/dsl/test/test-child-workflow.d.ts +0 -4
  637. package/lib/types/dsl/test/test-child-workflow.d.ts.map +0 -1
  638. package/lib/types/dsl/validation.d.ts.map +0 -1
  639. package/lib/types/dsl/vars.d.ts.map +0 -1
  640. package/lib/types/dsl/walk.d.ts +0 -18
  641. package/lib/types/dsl/walk.d.ts.map +0 -1
  642. package/lib/types/dsl.d.ts +0 -4
  643. package/lib/types/dsl.d.ts.map +0 -1
  644. package/lib/types/errors.d.ts.map +0 -1
  645. package/lib/types/index.d.ts +0 -38
  646. package/lib/types/index.d.ts.map +0 -1
  647. package/lib/types/iterative-generation/activities/extractToc.d.ts +0 -10
  648. package/lib/types/iterative-generation/activities/extractToc.d.ts.map +0 -1
  649. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts +0 -3
  650. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts.map +0 -1
  651. package/lib/types/iterative-generation/activities/generatePart.d.ts +0 -3
  652. package/lib/types/iterative-generation/activities/generatePart.d.ts.map +0 -1
  653. package/lib/types/iterative-generation/activities/generateToc.d.ts +0 -4
  654. package/lib/types/iterative-generation/activities/generateToc.d.ts.map +0 -1
  655. package/lib/types/iterative-generation/activities/index.d.ts +0 -5
  656. package/lib/types/iterative-generation/activities/index.d.ts.map +0 -1
  657. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts +0 -3
  658. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts.map +0 -1
  659. package/lib/types/iterative-generation/types.d.ts +0 -79
  660. package/lib/types/iterative-generation/types.d.ts.map +0 -1
  661. package/lib/types/iterative-generation/utils.d.ts +0 -26
  662. package/lib/types/iterative-generation/utils.d.ts.map +0 -1
  663. package/lib/types/result-types.d.ts.map +0 -1
  664. package/lib/types/security/ssrf.d.ts.map +0 -1
  665. package/lib/types/system/notifyWebhookWorkflow.d.ts +0 -8
  666. package/lib/types/system/notifyWebhookWorkflow.d.ts.map +0 -1
  667. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts.map +0 -1
  668. package/lib/types/utils/auth.d.ts.map +0 -1
  669. package/lib/types/utils/blobs.d.ts.map +0 -1
  670. package/lib/types/utils/chunks.d.ts.map +0 -1
  671. package/lib/types/utils/client.d.ts +0 -8
  672. package/lib/types/utils/client.d.ts.map +0 -1
  673. package/lib/types/utils/expand-vars.d.ts.map +0 -1
  674. package/lib/types/utils/memory.d.ts +0 -8
  675. package/lib/types/utils/memory.d.ts.map +0 -1
  676. package/lib/types/utils/renditions.d.ts.map +0 -1
  677. package/lib/types/utils/storage.d.ts.map +0 -1
  678. package/lib/types/utils/text-preview-utils.d.ts.map +0 -1
  679. package/lib/types/utils/tokens.d.ts.map +0 -1
  680. package/lib/types/vars.d.ts +0 -3
  681. package/lib/types/vars.d.ts.map +0 -1
  682. package/lib/types/workflows.d.ts +0 -8
  683. package/lib/types/workflows.d.ts.map +0 -1
  684. package/src/iterative-generation/activities/extractToc.ts +0 -63
  685. package/src/iterative-generation/activities/finalizeOutput.ts +0 -100
  686. package/src/iterative-generation/activities/generatePart.ts +0 -123
  687. package/src/iterative-generation/activities/generateToc.ts +0 -116
  688. package/src/iterative-generation/activities/index.ts +0 -4
  689. package/src/iterative-generation/iterativeGenerationWorkflow.ts +0 -68
  690. package/src/iterative-generation/types.ts +0 -99
  691. package/src/iterative-generation/utils.ts +0 -126
  692. package/src/utils/memory.ts +0 -61
  693. /package/lib/{esm/bulk-import.js → bulk-import.js} +0 -0
  694. /package/lib/{types/conversion → conversion}/image.d.ts +0 -0
  695. /package/lib/{types/conversion → conversion}/markitdown.d.ts +0 -0
  696. /package/lib/{types/conversion → conversion}/mutool.d.ts +0 -0
  697. /package/lib/{types/conversion → conversion}/pandoc.d.ts +0 -0
  698. /package/lib/{types/result-types.d.ts → result-types.d.ts} +0 -0
  699. /package/lib/{esm/result-types.js → result-types.js} +0 -0
  700. /package/lib/{types/security → security}/ssrf.d.ts +0 -0
  701. /package/lib/{esm/security → security}/ssrf.js +0 -0
  702. /package/lib/{esm/utils → utils}/auth.js +0 -0
  703. /package/lib/{types/utils → utils}/chunks.d.ts +0 -0
@@ -1,69 +1,82 @@
1
- import { CompletionResult, ModelOptions, LlumiverseError } from "@llumiverse/common";
2
- import { activityInfo, ApplicationFailure, log } from "@temporalio/activity";
3
- import { VertesiaClient } from "@vertesia/client";
4
- import { NodeStreamSource } from "@vertesia/client/node";
1
+ import { Readable } from 'node:stream';
5
2
  import {
6
- DSLActivityExecutionPayload,
7
- DSLActivitySpec,
8
- ExecutionRun,
3
+ type CompletionResult,
4
+ type HttpTimeoutOptions,
5
+ type JSONSchema,
6
+ LlumiverseError,
7
+ type ModelOptions,
8
+ } from '@llumiverse/common';
9
+ import { ApplicationFailure, activityInfo, log } from '@temporalio/activity';
10
+ import type { VertesiaClient } from '@vertesia/client';
11
+ import { NodeStreamSource } from '@vertesia/client/node';
12
+ import {
13
+ type DSLActivityExecutionPayload,
14
+ type DSLActivitySpec,
15
+ type ExecutionRun,
9
16
  ExecutionRunStatus,
10
- ExecutionRunWorkflow,
11
- InteractionExecutionConfiguration,
12
- RunSearchPayload,
13
- } from "@vertesia/common";
14
- import { projectResult } from "../dsl/projections.js";
15
- import { setupActivity } from "../dsl/setup/ActivityContext.js";
16
- import { ActivityParamInvalidError, ActivityParamNotFoundError, ResourceExhaustedError } from "../errors.js";
17
- import { TruncateSpec, truncByMaxTokens } from "../utils/tokens.js";
18
- import { Readable } from "stream";
17
+ type ExecutionRunWorkflow,
18
+ type InteractionExecutionConfiguration,
19
+ type RunSearchPayload,
20
+ } from '@vertesia/common';
21
+ import { projectResult } from '../dsl/projections.js';
22
+ import { setupActivity } from '../dsl/setup/ActivityContext.js';
23
+ import { ActivityParamInvalidError, ActivityParamNotFoundError, ResourceExhaustedError } from '../errors.js';
24
+ import { activityWorkflowExecution } from '../utils/activity-info.js';
25
+ import { type TruncateSpec, truncByMaxTokens } from '../utils/tokens.js';
19
26
 
20
27
  //Example:
21
- //@ts-ignore
22
- const JSON: DSLActivitySpec = {
23
- name: "executeInteraction",
24
- import: ["defaultModel", "guidlineId", "docTypeId"],
28
+ //@ts-expect-error
29
+ const _JSON: DSLActivitySpec = {
30
+ name: 'executeInteraction',
31
+ import: ['defaultModel', 'guidlineId', 'docTypeId'],
25
32
  params: {
26
- defaultModel: "${model}",
27
- interactionName: "GenerateSummary",
33
+ defaultModel: '${model}',
34
+ interactionName: 'GenerateSummary',
28
35
  model: "${defaultModel ?? 'gpt4'}",
29
- environment: "13456",
36
+ environment: '13456',
30
37
  max_tokens: 100,
31
38
  temperature: 0.5,
32
- tags: ["test"],
33
- result_schema: "${docType.object_schema}",
39
+ tags: ['test'],
40
+ result_schema: '${docType.object_schema}',
34
41
  prompt_data: {
35
- documents: "${documents}",
36
- guidline: "${guidline.text}",
42
+ documents: '${documents}',
43
+ guidline: '${guidline.text}',
37
44
  },
38
45
  },
39
46
  fetch: {
40
47
  documents: {
41
- type: "document",
48
+ type: 'document',
42
49
  query: {
43
- id: { $in: "${objectIds}" },
50
+ id: { $in: '${objectIds}' },
44
51
  },
45
- select: "+text",
52
+ select: '+text',
46
53
  },
47
54
  guidline: {
48
- type: "document",
55
+ type: 'document',
49
56
  limit: 1,
50
57
  query: {
51
- id: "${guidlineId}",
58
+ id: '${guidlineId}',
52
59
  },
53
- select: "+text",
54
- on_not_found: "throw",
60
+ select: '+text',
61
+ on_not_found: 'throw',
55
62
  },
56
63
  docType: {
57
- type: "document_type",
64
+ type: 'document_type',
58
65
  limit: 1,
59
66
  query: {
60
- id: "${docTypeId}",
67
+ id: '${docTypeId}',
61
68
  },
62
- select: "+object_schema",
69
+ select: '+object_schema',
63
70
  },
64
71
  },
65
72
  };
66
73
  export interface InteractionExecutionParams {
74
+ /**
75
+ * Execution configuration shared across workflow-driven interaction calls.
76
+ * Activity-level fields below override this object for backward compatibility.
77
+ */
78
+ config?: InteractionExecutionConfiguration;
79
+
67
80
  /**
68
81
  * The environment to use. If not specified the project default environment will be used.
69
82
  * If the latter is not specified an exception will be thrown.
@@ -79,7 +92,7 @@ export interface InteractionExecutionParams {
79
92
  /**
80
93
  * Request a JSON schema for the result
81
94
  */
82
- result_schema?: any;
95
+ result_schema?: JSONSchema | null;
83
96
 
84
97
  /** Wether to validate the result against the schema */
85
98
  validate_result?: boolean;
@@ -99,6 +112,11 @@ export interface InteractionExecutionParams {
99
112
  */
100
113
  model_options?: ModelOptions;
101
114
 
115
+ /**
116
+ * Per-run HTTP timeouts for upstream LLM-provider calls.
117
+ */
118
+ http_timeout?: HttpTimeoutOptions;
119
+
102
120
  /**
103
121
  * activity won't be retried if it fails due to resource exhaustion (429)
104
122
  */
@@ -113,18 +131,18 @@ export interface InteractionExecutionParams {
113
131
  export interface ExecuteInteractionParams extends InteractionExecutionParams {
114
132
  //TODO rename to interaction as in InteractionAsyncExecutionPayload
115
133
  interactionName: string;
116
- prompt_data: Record<string, any>;
134
+ prompt_data: Record<string, unknown>;
117
135
  /**
118
136
  * Additional prompt data passed by the workflow configuration. This will be merged with prompt_data if any.
119
137
  * You should use `import: ["static_prompt_data"]` to import the workflow prompt data as static_prompt_data param.
120
138
  * Otherwise the workflow prompt data will be ignored.
121
139
  */
122
- static_prompt_data?: Record<string, any>;
140
+ static_prompt_data?: Record<string, unknown>;
123
141
  truncate?: Record<string, TruncateSpec>;
124
142
  }
125
143
 
126
144
  export interface ExecuteInteraction extends DSLActivitySpec<ExecuteInteractionParams> {
127
- name: "executeInteraction";
145
+ name: 'executeInteraction';
128
146
  }
129
147
 
130
148
  export async function executeInteraction(payload: DSLActivityExecutionPayload<ExecuteInteractionParams>) {
@@ -136,14 +154,17 @@ export async function executeInteraction(payload: DSLActivityExecutionPayload<Ex
136
154
  }
137
155
 
138
156
  if (!interactionName) {
139
- log.error("Missing interactionName", { params });
140
- throw new ActivityParamNotFoundError("interactionName", payload.activity);
157
+ log.error('Missing interactionName', { params });
158
+ throw new ActivityParamNotFoundError('interactionName', payload.activity);
141
159
  }
142
160
 
143
161
  if (params.truncate) {
144
162
  const truncate = params.truncate;
145
163
  for (const [key, value] of Object.entries(truncate)) {
146
- prompt_data[key] = truncByMaxTokens(prompt_data[key], value);
164
+ const promptValue = prompt_data[key];
165
+ if (typeof promptValue === 'string') {
166
+ prompt_data[key] = truncByMaxTokens(promptValue, value);
167
+ }
147
168
  }
148
169
  }
149
170
 
@@ -159,35 +180,31 @@ export async function executeInteraction(payload: DSLActivityExecutionPayload<Ex
159
180
  let completionResult: CompletionResult[] = res.result;
160
181
 
161
182
  // Handle image uploads if the result contains base64 images
162
- const imageResults = completionResult.filter(r => r.type === "image");
183
+ const imageResults = completionResult.filter((r) => r.type === 'image');
163
184
  if (imageResults.length > 0) {
164
185
  const uploadedImages = await Promise.all(
165
186
  completionResult.map(async (item, index) => {
166
- if (item.type === "image") {
187
+ if (item.type === 'image') {
167
188
  const image = item.value;
168
189
  // Extract base64 data and create buffer
169
- const base64Data = image.replace(/^data:image\/[a-z]+;base64,/, "");
190
+ const base64Data = image.replace(/^data:image\/[a-z]+;base64,/, '');
170
191
  const buffer = Buffer.from(base64Data, 'base64');
171
192
 
172
193
  // Generate filename
173
- const { runId } = activityInfo().workflowExecution;
194
+ const { runId } = activityWorkflowExecution();
174
195
  const { activityId } = activityInfo();
175
196
  const filename = `generated-image-${runId}-${activityId}-${index}.png`;
176
197
 
177
198
  // Create a readable stream from the buffer
178
199
  const stream = Readable.from(buffer);
179
200
 
180
- const source = new NodeStreamSource(
181
- stream,
182
- filename,
183
- "image/png",
184
- );
201
+ const source = new NodeStreamSource(stream, filename, 'image/png');
185
202
 
186
203
  const file = await client.files.uploadFile(source);
187
- return { type: "image", value: file } as CompletionResult;
204
+ return { type: 'image', value: file } as CompletionResult;
188
205
  }
189
206
  return item;
190
- })
207
+ }),
191
208
  );
192
209
  completionResult = uploadedImages;
193
210
  }
@@ -197,52 +214,60 @@ export async function executeInteraction(payload: DSLActivityExecutionPayload<Ex
197
214
  status: res.status,
198
215
  result: completionResult,
199
216
  });
200
-
201
- } catch (error: any) {
202
- log.error(`Failed to execute interaction ${interactionName}`, { error });
203
- if (error.statusCode === 429 && params.exit_on_resource_exhaustion) {
204
- throw new ResourceExhaustedError(error.statusCode, "Resource exhausted - rate limit exceeded");
205
- } else if (is4xxNonRetryable(error.status) || is4xxNonRetryable(error.statusCode) || is4xxNonRetryable(error.code) || error.retryable === false) {
206
- // 4xx HTTP errors (except retryable statuses) are permanent client errors
207
- // (e.g. model not found, invalid request).
208
- // Errors explicitly marked as non-retryable (e.g. LlumiverseError) also fall here.
209
- // They will not be resolved by retrying.
210
- throw ApplicationFailure.create({
211
- message: `Interaction Execution failed ${interactionName}: ${error.message}`,
212
- nonRetryable: true,
213
- });
214
- } else if (error.message.includes("Failed to validate merged prompt schema")) {
217
+ } catch (error: unknown) {
218
+ const executionError = toExecutionError(error);
219
+ log.error(`Failed to execute interaction ${interactionName}`, { error: executionError });
220
+ if (executionError.statusCode === 429 && params.exit_on_resource_exhaustion) {
221
+ throw new ResourceExhaustedError(executionError.statusCode, 'Resource exhausted - rate limit exceeded');
222
+ } else if (executionError.message.includes('Failed to validate merged prompt schema')) {
215
223
  //issue with the input data, don't retry
216
- throw new ActivityParamInvalidError("prompt_data", payload.activity, error.message);
217
- } else if (error.message.includes("modelId: Path `modelId` is required")) {
224
+ throw new ActivityParamInvalidError('prompt_data', payload.activity, executionError.message);
225
+ } else if (executionError.message.includes('modelId: Path `modelId` is required')) {
218
226
  //issue with the input data, don't retry
219
- throw new ActivityParamInvalidError("model", payload.activity, error.message);
227
+ throw new ActivityParamInvalidError('model', payload.activity, executionError.message);
220
228
  }
221
-
229
+
222
230
  // Check retryability from error object (set by executeInteractionFromActivity)
223
231
  // or from LlumiverseError instance (direct driver errors in some paths)
224
- const isRetryable = error.retryable !== undefined
225
- ? error.retryable !== false // Treat undefined as retryable
226
- : (error instanceof LlumiverseError ? error.retryable !== false : undefined);
227
-
232
+ const isRetryable =
233
+ executionError.retryable !== undefined
234
+ ? executionError.retryable
235
+ : error instanceof LlumiverseError
236
+ ? error.retryable !== false
237
+ : undefined;
238
+
228
239
  if (isRetryable !== undefined) {
229
240
  if (isRetryable) {
230
- log.debug('Marking error as retryable', { interactionName, errorCode: error.errorCode });
241
+ log.debug('Marking error as retryable', { interactionName, errorCode: executionError.errorCode });
231
242
  throw ApplicationFailure.create({
232
- message: `Interaction Execution failed ${interactionName}: ${error.message}`,
243
+ message: `Interaction Execution failed ${interactionName}: ${executionError.message}`,
233
244
  nonRetryable: false,
234
245
  });
235
246
  } else {
236
- log.debug('Marking error as non-retryable', { interactionName, errorCode: error.errorCode });
247
+ log.debug('Marking error as non-retryable', { interactionName, errorCode: executionError.errorCode });
237
248
  throw ApplicationFailure.create({
238
- message: `Non-retryable Interaction Execution failed ${interactionName}: ${error.message}`,
249
+ message: `Non-retryable Interaction Execution failed ${interactionName}: ${executionError.message}`,
239
250
  nonRetryable: true,
240
251
  });
241
252
  }
242
253
  }
243
-
254
+
255
+ if (
256
+ is4xxNonRetryable(executionError.status) ||
257
+ is4xxNonRetryable(executionError.statusCode) ||
258
+ is4xxNonRetryable(executionError.code)
259
+ ) {
260
+ // 4xx HTTP errors (except retryable statuses) are permanent client errors
261
+ // (e.g. model not found, invalid request). The explicit retryability
262
+ // flag above wins when a provider marks a 4xx as transient.
263
+ throw ApplicationFailure.create({
264
+ message: `Interaction Execution failed ${interactionName}: ${executionError.message}`,
265
+ nonRetryable: true,
266
+ });
267
+ }
268
+
244
269
  // Unknown retryability - rethrow as generic error (Temporal will use default retry policy)
245
- throw new Error(`Interaction Execution failed ${interactionName}: ${error.message}`);
270
+ throw new Error(`Interaction Execution failed ${interactionName}: ${executionError.message}`);
246
271
  }
247
272
  }
248
273
 
@@ -250,38 +275,39 @@ export async function executeInteractionFromActivity(
250
275
  client: VertesiaClient,
251
276
  interactionName: string,
252
277
  params: InteractionExecutionParams,
253
- prompt_data: any,
278
+ prompt_data: Record<string, unknown>,
254
279
  debug?: boolean,
255
280
  ) {
256
281
  const userTags = params.tags;
257
282
  const info = activityInfo();
258
- const runId = info.workflowExecution.runId;
259
- let tags = ["workflow"];
283
+ const execution = activityWorkflowExecution(info);
284
+ const runId = execution.runId;
285
+ let tags = ['workflow'];
260
286
  if (userTags) {
261
287
  tags = tags.concat(userTags);
262
288
  }
263
289
  const workflow: ExecutionRunWorkflow = {
264
- run_id: info.workflowExecution.runId,
265
- workflow_id: info.workflowExecution.workflowId,
290
+ run_id: execution.runId,
291
+ workflow_id: execution.workflowId,
266
292
  activity_type: info.activityType,
267
293
  };
268
294
 
269
- let previousStudioExecutionRun: ExecutionRun | undefined = undefined;
295
+ let previousStudioExecutionRun: ExecutionRun | undefined;
270
296
  if (params.include_previous_error) {
271
297
  //retrieve last failed run if any
272
298
  if (info.attempt > 1) {
273
- log.info("Retrying, searching for previous run", { prev_run_id: runId });
299
+ log.info('Retrying, searching for previous run', { prev_run_id: runId });
274
300
  const payload: RunSearchPayload = {
275
301
  query: { workflow_run_ids: [runId] },
276
302
  limit: 1,
277
303
  };
278
304
  const previousRun = await client.runs.search(payload).then((res) => {
279
- log.info("Search results", { results: res });
305
+ log.info('Search results', { results: res });
280
306
  return res ? (res[0] ?? undefined) : undefined;
281
307
  });
282
308
 
283
309
  if (previousRun) {
284
- log.info("Found previous run", { previousRun });
310
+ log.info('Found previous run', { previousRun });
285
311
  previousStudioExecutionRun = await client.runs.retrieve(previousRun.id);
286
312
  }
287
313
  }
@@ -290,11 +316,14 @@ export async function executeInteractionFromActivity(
290
316
  log.info(`Found previous run error`, { error: previousStudioExecutionRun?.error });
291
317
  }
292
318
 
319
+ const configDefaults = params.config ?? {};
293
320
  const config: InteractionExecutionConfiguration = {
294
- environment: params.environment,
295
- model: params.model,
296
- model_options: params.model_options,
297
- do_validate: params.validate_result,
321
+ ...configDefaults,
322
+ environment: params.environment ?? configDefaults.environment,
323
+ model: params.model ?? configDefaults.model,
324
+ model_options: params.model_options ?? configDefaults.model_options,
325
+ http_timeout: params.http_timeout ?? configDefaults.http_timeout,
326
+ do_validate: params.validate_result ?? configDefaults.do_validate,
298
327
  };
299
328
  const data = {
300
329
  ...prompt_data,
@@ -325,15 +354,16 @@ export async function executeInteractionFromActivity(
325
354
 
326
355
  if (res.error || res.status === ExecutionRunStatus.failed) {
327
356
  log.error(`Error executing interaction ${interactionName}`, { error: res.error });
328
-
357
+
329
358
  // Create error with retryability information
330
359
  const errorMessage = `Interaction Execution failed ${interactionName}: ${res.error?.message || 'Unknown error'}`;
331
360
  const error = new Error(errorMessage);
332
-
361
+
333
362
  // Attach retryable property so the catch block can access it
334
- (error as any).retryable = res.error?.retryable;
335
- (error as any).errorCode = res.error?.code;
336
-
363
+ const executionError = error as Error & { retryable?: boolean; errorCode?: string };
364
+ executionError.retryable = res.error?.retryable;
365
+ executionError.errorCode = res.error?.code;
366
+
337
367
  throw error;
338
368
  }
339
369
 
@@ -349,3 +379,18 @@ function is4xxNonRetryable(code: number | undefined): boolean {
349
379
  if (code === undefined || typeof code !== 'number') return false;
350
380
  return code >= 400 && code < 500 && code !== 412 && code !== 429;
351
381
  }
382
+
383
+ interface ExecutionError extends Error {
384
+ status?: number;
385
+ statusCode?: number;
386
+ code?: number;
387
+ retryable?: boolean;
388
+ errorCode?: unknown;
389
+ }
390
+
391
+ function toExecutionError(error: unknown): ExecutionError {
392
+ if (error instanceof Error) {
393
+ return error as ExecutionError;
394
+ }
395
+ return new Error(String(error)) as ExecutionError;
396
+ }
@@ -1,11 +1,11 @@
1
- import { MockActivityEnvironment } from "@temporalio/testing";
2
- import { ContentEventName, DSLActivityExecutionPayload } from "@vertesia/common";
3
- import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest";
4
- import { executeRemoteActivity, ExecuteRemoteActivityParams } from "./executeRemoteActivity.js";
1
+ import { MockActivityEnvironment } from '@temporalio/testing';
2
+ import { ContentEventName, type DSLActivityExecutionPayload } from '@vertesia/common';
3
+ import { beforeAll, beforeEach, describe, expect, it, vi } from 'vitest';
4
+ import { type ExecuteRemoteActivityParams, executeRemoteActivity } from './executeRemoteActivity.js';
5
5
 
6
- vi.stubGlobal("fetch", vi.fn());
6
+ vi.stubGlobal('fetch', vi.fn());
7
7
 
8
- vi.mock("../utils/client.js", () => ({
8
+ vi.mock('../utils/client.js', () => ({
9
9
  getVertesiaClient: vi.fn().mockReturnValue({
10
10
  apps: {
11
11
  validateUrl: vi.fn().mockResolvedValue({ valid: true }),
@@ -27,122 +27,116 @@ beforeEach(() => {
27
27
  const createPayload = (
28
28
  overrides: Partial<ExecuteRemoteActivityParams> = {},
29
29
  ): DSLActivityExecutionPayload<ExecuteRemoteActivityParams> => {
30
- const params: ExecuteRemoteActivityParams = {
31
- url: "https://tool-server.test/api/activities/nlp",
32
- activity_name: "analyze_sentiment",
33
- params: { text: "Hello world" },
34
- app_install_id: "install-123",
35
- app_name: "nlp-app",
30
+ const params = {
31
+ url: 'https://tool-server.test/api/activities/nlp',
32
+ activity_name: 'analyze_sentiment',
33
+ params: { text: 'Hello world' },
34
+ app_install_id: 'install-123',
35
+ app_name: 'nlp-app',
36
36
  ...overrides,
37
- };
37
+ } satisfies ExecuteRemoteActivityParams;
38
38
  return {
39
- auth_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwOi8vbW9jay10b2tlbi1zZXJ2ZXIiLCJzdWIiOiJ0ZXN0In0.sig",
40
- account_id: "acc-123",
41
- project_id: "proj-456",
39
+ auth_token:
40
+ 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwOi8vbW9jay10b2tlbi1zZXJ2ZXIiLCJzdWIiOiJ0ZXN0In0.sig',
41
+ account_id: 'acc-123',
42
+ project_id: 'proj-456',
42
43
  params,
43
44
  config: {
44
- studio_url: "http://mock-studio",
45
- store_url: "http://mock-store",
45
+ studio_url: 'http://mock-studio',
46
+ store_url: 'http://mock-store',
46
47
  },
47
- workflow_name: "TestWorkflow",
48
+ workflow_name: 'TestWorkflow',
48
49
  event: ContentEventName.create,
49
50
  objectIds: [],
50
51
  vars: {},
51
- activity: { name: "executeRemoteActivity", params },
52
+ activity: { name: 'executeRemoteActivity', params: params as unknown as Record<string, unknown> },
52
53
  };
53
54
  };
54
55
 
55
- describe("executeRemoteActivity", () => {
56
- it("posts correct payload and returns result on success", async () => {
56
+ describe('executeRemoteActivity', () => {
57
+ it('should post correct payload and return result on success', async () => {
57
58
  mockFetch.mockResolvedValueOnce(
58
- new Response(
59
- JSON.stringify({ result: { score: 0.95 }, is_error: false }),
60
- { status: 200, headers: { "Content-Type": "application/json" } },
61
- ),
59
+ new Response(JSON.stringify({ result: { score: 0.95 }, is_error: false }), {
60
+ status: 200,
61
+ headers: { 'Content-Type': 'application/json' },
62
+ }),
62
63
  );
63
64
 
64
- const result = await testEnv.run(executeRemoteActivity, createPayload());
65
+ const result: unknown = await testEnv.run(executeRemoteActivity, createPayload());
65
66
  expect(result).toEqual({ score: 0.95 });
66
67
 
67
68
  expect(mockFetch).toHaveBeenCalledOnce();
68
69
  const [url, opts] = mockFetch.mock.calls[0];
69
- expect(url).toBe("https://tool-server.test/api/activities/nlp");
70
- expect(opts?.method).toBe("POST");
70
+ expect(url).toBe('https://tool-server.test/api/activities/nlp');
71
+ expect(opts?.method).toBe('POST');
71
72
  expect(opts?.headers).toMatchObject({
72
- "Content-Type": "application/json",
73
- Accept: "application/json",
73
+ 'Content-Type': 'application/json',
74
+ Accept: 'application/json',
74
75
  });
75
76
  // Verify the auth header is forwarded
76
- expect((opts?.headers as Record<string, string>)["Authorization"]).toMatch(/^Bearer /);
77
+ expect((opts?.headers as Record<string, string>).Authorization).toMatch(/^Bearer /);
77
78
 
78
79
  // Verify the body structure
79
80
  const body = JSON.parse(opts?.body as string);
80
- expect(body.activity_name).toBe("analyze_sentiment");
81
- expect(body.params).toEqual({ text: "Hello world" });
82
- expect(body.metadata.app_install_id).toBe("install-123");
83
- expect(body.metadata.endpoints).toEqual({ studio: "http://mock-studio", store: "http://mock-store" });
81
+ expect(body.activity_name).toBe('analyze_sentiment');
82
+ expect(body.params).toEqual({ text: 'Hello world' });
83
+ expect(body.metadata.app_install_id).toBe('install-123');
84
+ expect(body.metadata.endpoints).toEqual({ studio: 'http://mock-studio', store: 'http://mock-store' });
84
85
  // auth_token should NOT be in the payload (it's in the Authorization header)
85
86
  expect(body.auth_token).toBeUndefined();
86
87
  });
87
88
 
88
- it("throws on HTTP error (4xx/5xx)", async () => {
89
+ it('should throw on HTTP error (4xx/5xx)', async () => {
89
90
  mockFetch.mockResolvedValueOnce(
90
- new Response(
91
- JSON.stringify({ error: "Activity not found", is_error: true }),
92
- { status: 404, statusText: "Not Found" },
93
- ),
91
+ new Response(JSON.stringify({ error: 'Activity not found', is_error: true }), {
92
+ status: 404,
93
+ statusText: 'Not Found',
94
+ }),
94
95
  );
95
96
 
96
97
  await expect(testEnv.run(executeRemoteActivity, createPayload())).rejects.toThrow(
97
- "Remote activity analyze_sentiment failed: Activity not found",
98
+ 'Remote activity analyze_sentiment failed: Activity not found',
98
99
  );
99
100
  });
100
101
 
101
- it("throws on network error (for Temporal retry)", async () => {
102
- mockFetch.mockRejectedValueOnce(new Error("Connection refused"));
102
+ it('should throw on network error (for Temporal retry)', async () => {
103
+ mockFetch.mockRejectedValueOnce(new Error('Connection refused'));
103
104
 
104
105
  await expect(testEnv.run(executeRemoteActivity, createPayload())).rejects.toThrow(
105
106
  /Failed to reach remote activity endpoint/,
106
107
  );
107
108
  });
108
109
 
109
- it("throws on invalid JSON response", async () => {
110
- mockFetch.mockResolvedValueOnce(
111
- new Response("not json", { status: 200 }),
112
- );
110
+ it('should throw on invalid JSON response', async () => {
111
+ mockFetch.mockResolvedValueOnce(new Response('not json', { status: 200 }));
113
112
 
114
- await expect(testEnv.run(executeRemoteActivity, createPayload())).rejects.toThrow(
115
- /returned invalid JSON/,
116
- );
113
+ await expect(testEnv.run(executeRemoteActivity, createPayload())).rejects.toThrow(/returned invalid JSON/);
117
114
  });
118
115
 
119
- it("throws when response indicates is_error", async () => {
116
+ it('should throw when response indicates is_error', async () => {
120
117
  mockFetch.mockResolvedValueOnce(
121
- new Response(
122
- JSON.stringify({ result: null, is_error: true, error: "Something went wrong" }),
123
- { status: 200, headers: { "Content-Type": "application/json" } },
124
- ),
118
+ new Response(JSON.stringify({ result: null, is_error: true, error: 'Something went wrong' }), {
119
+ status: 200,
120
+ headers: { 'Content-Type': 'application/json' },
121
+ }),
125
122
  );
126
123
 
127
124
  await expect(testEnv.run(executeRemoteActivity, createPayload())).rejects.toThrow(
128
- "Remote activity analyze_sentiment: Something went wrong",
125
+ 'Remote activity analyze_sentiment: Something went wrong',
129
126
  );
130
127
  });
131
128
 
132
- it("forwards app_settings in metadata", async () => {
129
+ it('should forward app_settings in metadata', async () => {
133
130
  mockFetch.mockResolvedValueOnce(
134
- new Response(
135
- JSON.stringify({ result: "ok", is_error: false }),
136
- { status: 200, headers: { "Content-Type": "application/json" } },
137
- ),
131
+ new Response(JSON.stringify({ result: 'ok', is_error: false }), {
132
+ status: 200,
133
+ headers: { 'Content-Type': 'application/json' },
134
+ }),
138
135
  );
139
136
 
140
- await testEnv.run(
141
- executeRemoteActivity,
142
- createPayload({ app_settings: { api_key: "secret" } }),
143
- );
137
+ await testEnv.run(executeRemoteActivity, createPayload({ app_settings: { api_key: 'secret' } }));
144
138
 
145
139
  const body = JSON.parse(mockFetch.mock.calls[0][1]?.body as string);
146
- expect(body.metadata.app_settings).toEqual({ api_key: "secret" });
140
+ expect(body.metadata.app_settings).toEqual({ api_key: 'secret' });
147
141
  });
148
142
  });