@vertesia/workflow 0.82.1 → 0.82.3

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 (393) hide show
  1. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js +33 -0
  2. package/lib/cjs/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -0
  3. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +73 -0
  4. package/lib/cjs/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -0
  5. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js +19 -0
  6. package/lib/cjs/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -0
  7. package/lib/cjs/activities/chunkDocument.js +85 -0
  8. package/lib/cjs/activities/chunkDocument.js.map +1 -0
  9. package/lib/cjs/activities/createDocumentFromOther.js +64 -0
  10. package/lib/cjs/activities/createDocumentFromOther.js.map +1 -0
  11. package/lib/cjs/activities/executeInteraction.js +194 -0
  12. package/lib/cjs/activities/executeInteraction.js.map +1 -0
  13. package/lib/cjs/activities/extractDocumentText.js +156 -0
  14. package/lib/cjs/activities/extractDocumentText.js.map +1 -0
  15. package/lib/cjs/activities/generateDocumentProperties.js +83 -0
  16. package/lib/cjs/activities/generateDocumentProperties.js.map +1 -0
  17. package/lib/cjs/activities/generateEmbeddings.js +228 -0
  18. package/lib/cjs/activities/generateEmbeddings.js.map +1 -0
  19. package/lib/cjs/activities/generateOrAssignContentType.js +125 -0
  20. package/lib/cjs/activities/generateOrAssignContentType.js.map +1 -0
  21. package/lib/cjs/activities/getObjectFromStore.js +20 -0
  22. package/lib/cjs/activities/getObjectFromStore.js.map +1 -0
  23. package/lib/cjs/activities/handleError.js +22 -0
  24. package/lib/cjs/activities/handleError.js.map +1 -0
  25. package/lib/cjs/activities/index-dsl.js +47 -0
  26. package/lib/cjs/activities/index-dsl.js.map +1 -0
  27. package/lib/cjs/activities/index.js +21 -0
  28. package/lib/cjs/activities/index.js.map +1 -0
  29. package/lib/cjs/activities/media/prepareVideo.js +429 -0
  30. package/lib/cjs/activities/media/prepareVideo.js.map +1 -0
  31. package/lib/cjs/activities/media/processPdfWithTextract.js +103 -0
  32. package/lib/cjs/activities/media/processPdfWithTextract.js.map +1 -0
  33. package/lib/cjs/activities/media/saveGladiaTranscription.js +81 -0
  34. package/lib/cjs/activities/media/saveGladiaTranscription.js.map +1 -0
  35. package/lib/cjs/activities/media/transcribeMediaWithGladia.js +82 -0
  36. package/lib/cjs/activities/media/transcribeMediaWithGladia.js.map +1 -0
  37. package/lib/cjs/activities/notifyWebhook.js +167 -0
  38. package/lib/cjs/activities/notifyWebhook.js.map +1 -0
  39. package/lib/cjs/activities/rateLimiter.js +30 -0
  40. package/lib/cjs/activities/rateLimiter.js.map +1 -0
  41. package/lib/cjs/activities/renditions/generateImageRendition.js +66 -0
  42. package/lib/cjs/activities/renditions/generateImageRendition.js.map +1 -0
  43. package/lib/cjs/activities/renditions/generateVideoRendition.js +200 -0
  44. package/lib/cjs/activities/renditions/generateVideoRendition.js.map +1 -0
  45. package/lib/cjs/activities/setDocumentStatus.js +15 -0
  46. package/lib/cjs/activities/setDocumentStatus.js.map +1 -0
  47. package/lib/cjs/conversion/TextractProcessor.js +417 -0
  48. package/lib/cjs/conversion/TextractProcessor.js.map +1 -0
  49. package/lib/cjs/conversion/image.js +149 -0
  50. package/lib/cjs/conversion/image.js.map +1 -0
  51. package/lib/cjs/conversion/markitdown.js +42 -0
  52. package/lib/cjs/conversion/markitdown.js.map +1 -0
  53. package/lib/cjs/conversion/mutool.js +147 -0
  54. package/lib/cjs/conversion/mutool.js.map +1 -0
  55. package/lib/cjs/conversion/pandoc.js +39 -0
  56. package/lib/cjs/conversion/pandoc.js.map +1 -0
  57. package/lib/cjs/dsl/conditions.js +81 -0
  58. package/lib/cjs/dsl/conditions.js.map +1 -0
  59. package/lib/cjs/dsl/dsl-workflow.js +343 -0
  60. package/lib/cjs/dsl/dsl-workflow.js.map +1 -0
  61. package/lib/cjs/dsl/dslProxyActivities.js +23 -0
  62. package/lib/cjs/dsl/dslProxyActivities.js.map +1 -0
  63. package/lib/cjs/dsl/projections.js +59 -0
  64. package/lib/cjs/dsl/projections.js.map +1 -0
  65. package/lib/cjs/dsl/setup/ActivityContext.js +122 -0
  66. package/lib/cjs/dsl/setup/ActivityContext.js.map +1 -0
  67. package/lib/cjs/dsl/setup/fetch/DataProvider.js +51 -0
  68. package/lib/cjs/dsl/setup/fetch/DataProvider.js.map +1 -0
  69. package/lib/cjs/dsl/setup/fetch/index.js +16 -0
  70. package/lib/cjs/dsl/setup/fetch/index.js.map +1 -0
  71. package/lib/cjs/dsl/setup/fetch/providers.js +67 -0
  72. package/lib/cjs/dsl/setup/fetch/providers.js.map +1 -0
  73. package/lib/cjs/dsl/test/test-child-workflow.js +10 -0
  74. package/lib/cjs/dsl/test/test-child-workflow.js.map +1 -0
  75. package/lib/cjs/dsl/validation.js +122 -0
  76. package/lib/cjs/dsl/validation.js.map +1 -0
  77. package/lib/cjs/dsl/vars.js +341 -0
  78. package/lib/cjs/dsl/vars.js.map +1 -0
  79. package/lib/cjs/dsl/walk.js +100 -0
  80. package/lib/cjs/dsl/walk.js.map +1 -0
  81. package/lib/cjs/dsl.js +20 -0
  82. package/lib/cjs/dsl.js.map +1 -0
  83. package/lib/cjs/errors.js +70 -0
  84. package/lib/cjs/errors.js.map +1 -0
  85. package/lib/cjs/index.js +55 -0
  86. package/lib/cjs/index.js.map +1 -0
  87. package/lib/cjs/iterative-generation/activities/extractToc.js +47 -0
  88. package/lib/cjs/iterative-generation/activities/extractToc.js.map +1 -0
  89. package/lib/cjs/iterative-generation/activities/finalizeOutput.js +72 -0
  90. package/lib/cjs/iterative-generation/activities/finalizeOutput.js.map +1 -0
  91. package/lib/cjs/iterative-generation/activities/generatePart.js +78 -0
  92. package/lib/cjs/iterative-generation/activities/generatePart.js.map +1 -0
  93. package/lib/cjs/iterative-generation/activities/generateToc.js +86 -0
  94. package/lib/cjs/iterative-generation/activities/generateToc.js.map +1 -0
  95. package/lib/cjs/iterative-generation/activities/index.js +12 -0
  96. package/lib/cjs/iterative-generation/activities/index.js.map +1 -0
  97. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js +56 -0
  98. package/lib/cjs/iterative-generation/iterativeGenerationWorkflow.js.map +1 -0
  99. package/lib/cjs/iterative-generation/types.js +5 -0
  100. package/lib/cjs/iterative-generation/types.js.map +1 -0
  101. package/lib/cjs/iterative-generation/utils.js +121 -0
  102. package/lib/cjs/iterative-generation/utils.js.map +1 -0
  103. package/lib/cjs/package.json +3 -0
  104. package/lib/cjs/result-types.js +10 -0
  105. package/lib/cjs/result-types.js.map +1 -0
  106. package/lib/cjs/system/notifyWebhookWorkflow.js +53 -0
  107. package/lib/cjs/system/notifyWebhookWorkflow.js.map +1 -0
  108. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js +33 -0
  109. package/lib/cjs/system/recalculateEmbeddingsWorkflow.js.map +1 -0
  110. package/lib/cjs/utils/auth.js +15 -0
  111. package/lib/cjs/utils/auth.js.map +1 -0
  112. package/lib/cjs/utils/blobs.js +64 -0
  113. package/lib/cjs/utils/blobs.js.map +1 -0
  114. package/lib/cjs/utils/chunks.js +14 -0
  115. package/lib/cjs/utils/chunks.js.map +1 -0
  116. package/lib/cjs/utils/client.js +31 -0
  117. package/lib/cjs/utils/client.js.map +1 -0
  118. package/lib/cjs/utils/expand-vars.js +33 -0
  119. package/lib/cjs/utils/expand-vars.js.map +1 -0
  120. package/lib/cjs/utils/memory.js +65 -0
  121. package/lib/cjs/utils/memory.js.map +1 -0
  122. package/lib/cjs/utils/renditions.js +88 -0
  123. package/lib/cjs/utils/renditions.js.map +1 -0
  124. package/lib/cjs/utils/storage.js +54 -0
  125. package/lib/cjs/utils/storage.js.map +1 -0
  126. package/lib/cjs/utils/tokens.js +38 -0
  127. package/lib/cjs/utils/tokens.js.map +1 -0
  128. package/lib/cjs/vars.js +20 -0
  129. package/lib/cjs/vars.js.map +1 -0
  130. package/lib/cjs/workflows.js +15 -0
  131. package/lib/cjs/workflows.js.map +1 -0
  132. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js +30 -0
  133. package/lib/esm/activities/advanced/createDocumentTypeFromInteractionRun.js.map +1 -0
  134. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js +70 -0
  135. package/lib/esm/activities/advanced/createOrUpdateDocumentFromInteractionRun.js.map +1 -0
  136. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js +16 -0
  137. package/lib/esm/activities/advanced/updateDocumentFromInteractionRun.js.map +1 -0
  138. package/lib/esm/activities/chunkDocument.js +82 -0
  139. package/lib/esm/activities/chunkDocument.js.map +1 -0
  140. package/lib/esm/activities/createDocumentFromOther.js +58 -0
  141. package/lib/esm/activities/createDocumentFromOther.js.map +1 -0
  142. package/lib/esm/activities/executeInteraction.js +190 -0
  143. package/lib/esm/activities/executeInteraction.js.map +1 -0
  144. package/lib/esm/activities/extractDocumentText.js +153 -0
  145. package/lib/esm/activities/extractDocumentText.js.map +1 -0
  146. package/lib/esm/activities/generateDocumentProperties.js +80 -0
  147. package/lib/esm/activities/generateDocumentProperties.js.map +1 -0
  148. package/lib/esm/activities/generateEmbeddings.js +225 -0
  149. package/lib/esm/activities/generateEmbeddings.js.map +1 -0
  150. package/lib/esm/activities/generateOrAssignContentType.js +122 -0
  151. package/lib/esm/activities/generateOrAssignContentType.js.map +1 -0
  152. package/lib/esm/activities/getObjectFromStore.js +17 -0
  153. package/lib/esm/activities/getObjectFromStore.js.map +1 -0
  154. package/lib/esm/activities/handleError.js +19 -0
  155. package/lib/esm/activities/handleError.js.map +1 -0
  156. package/lib/esm/activities/index-dsl.js +23 -0
  157. package/lib/esm/activities/index-dsl.js.map +1 -0
  158. package/lib/esm/activities/index.js +5 -0
  159. package/lib/esm/activities/index.js.map +1 -0
  160. package/lib/esm/activities/media/prepareVideo.js +390 -0
  161. package/lib/esm/activities/media/prepareVideo.js.map +1 -0
  162. package/lib/esm/activities/media/processPdfWithTextract.js +99 -0
  163. package/lib/esm/activities/media/processPdfWithTextract.js.map +1 -0
  164. package/lib/esm/activities/media/saveGladiaTranscription.js +78 -0
  165. package/lib/esm/activities/media/saveGladiaTranscription.js.map +1 -0
  166. package/lib/esm/activities/media/transcribeMediaWithGladia.js +79 -0
  167. package/lib/esm/activities/media/transcribeMediaWithGladia.js.map +1 -0
  168. package/lib/esm/activities/notifyWebhook.js +164 -0
  169. package/lib/esm/activities/notifyWebhook.js.map +1 -0
  170. package/lib/esm/activities/rateLimiter.js +27 -0
  171. package/lib/esm/activities/rateLimiter.js.map +1 -0
  172. package/lib/esm/activities/renditions/generateImageRendition.js +63 -0
  173. package/lib/esm/activities/renditions/generateImageRendition.js.map +1 -0
  174. package/lib/esm/activities/renditions/generateVideoRendition.js +194 -0
  175. package/lib/esm/activities/renditions/generateVideoRendition.js.map +1 -0
  176. package/lib/esm/activities/setDocumentStatus.js +12 -0
  177. package/lib/esm/activities/setDocumentStatus.js.map +1 -0
  178. package/lib/esm/conversion/TextractProcessor.js +410 -0
  179. package/lib/esm/conversion/TextractProcessor.js.map +1 -0
  180. package/lib/esm/conversion/image.js +143 -0
  181. package/lib/esm/conversion/image.js.map +1 -0
  182. package/lib/esm/conversion/markitdown.js +36 -0
  183. package/lib/esm/conversion/markitdown.js.map +1 -0
  184. package/lib/esm/conversion/mutool.js +139 -0
  185. package/lib/esm/conversion/mutool.js.map +1 -0
  186. package/lib/esm/conversion/pandoc.js +36 -0
  187. package/lib/esm/conversion/pandoc.js.map +1 -0
  188. package/lib/esm/dsl/conditions.js +75 -0
  189. package/lib/esm/dsl/conditions.js.map +1 -0
  190. package/lib/esm/dsl/dsl-workflow.js +336 -0
  191. package/lib/esm/dsl/dsl-workflow.js.map +1 -0
  192. package/lib/esm/dsl/dslProxyActivities.js +20 -0
  193. package/lib/esm/dsl/dslProxyActivities.js.map +1 -0
  194. package/lib/esm/dsl/projections.js +55 -0
  195. package/lib/esm/dsl/projections.js.map +1 -0
  196. package/lib/esm/dsl/setup/ActivityContext.js +117 -0
  197. package/lib/esm/dsl/setup/ActivityContext.js.map +1 -0
  198. package/lib/esm/dsl/setup/fetch/DataProvider.js +47 -0
  199. package/lib/esm/dsl/setup/fetch/DataProvider.js.map +1 -0
  200. package/lib/esm/dsl/setup/fetch/index.js +12 -0
  201. package/lib/esm/dsl/setup/fetch/index.js.map +1 -0
  202. package/lib/esm/dsl/setup/fetch/providers.js +61 -0
  203. package/lib/esm/dsl/setup/fetch/providers.js.map +1 -0
  204. package/lib/esm/dsl/test/test-child-workflow.js +5 -0
  205. package/lib/esm/dsl/test/test-child-workflow.js.map +1 -0
  206. package/lib/esm/dsl/validation.js +118 -0
  207. package/lib/esm/dsl/validation.js.map +1 -0
  208. package/lib/esm/dsl/vars.js +335 -0
  209. package/lib/esm/dsl/vars.js.map +1 -0
  210. package/lib/esm/dsl/walk.js +96 -0
  211. package/lib/esm/dsl/walk.js.map +1 -0
  212. package/lib/esm/dsl.js +4 -0
  213. package/lib/esm/dsl.js.map +1 -0
  214. package/lib/esm/errors.js +61 -0
  215. package/lib/esm/errors.js.map +1 -0
  216. package/lib/esm/index.js +37 -0
  217. package/lib/esm/index.js.map +1 -0
  218. package/lib/esm/iterative-generation/activities/extractToc.js +44 -0
  219. package/lib/esm/iterative-generation/activities/extractToc.js.map +1 -0
  220. package/lib/esm/iterative-generation/activities/finalizeOutput.js +69 -0
  221. package/lib/esm/iterative-generation/activities/finalizeOutput.js.map +1 -0
  222. package/lib/esm/iterative-generation/activities/generatePart.js +75 -0
  223. package/lib/esm/iterative-generation/activities/generatePart.js.map +1 -0
  224. package/lib/esm/iterative-generation/activities/generateToc.js +83 -0
  225. package/lib/esm/iterative-generation/activities/generateToc.js.map +1 -0
  226. package/lib/esm/iterative-generation/activities/index.js +5 -0
  227. package/lib/esm/iterative-generation/activities/index.js.map +1 -0
  228. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js +53 -0
  229. package/lib/esm/iterative-generation/iterativeGenerationWorkflow.js.map +1 -0
  230. package/lib/esm/iterative-generation/types.js +2 -0
  231. package/lib/esm/iterative-generation/types.js.map +1 -0
  232. package/lib/esm/iterative-generation/utils.js +112 -0
  233. package/lib/esm/iterative-generation/utils.js.map +1 -0
  234. package/lib/esm/result-types.js +7 -0
  235. package/lib/esm/result-types.js.map +1 -0
  236. package/lib/esm/system/notifyWebhookWorkflow.js +50 -0
  237. package/lib/esm/system/notifyWebhookWorkflow.js.map +1 -0
  238. package/lib/esm/system/recalculateEmbeddingsWorkflow.js +30 -0
  239. package/lib/esm/system/recalculateEmbeddingsWorkflow.js.map +1 -0
  240. package/lib/esm/utils/auth.js +8 -0
  241. package/lib/esm/utils/auth.js.map +1 -0
  242. package/lib/esm/utils/blobs.js +54 -0
  243. package/lib/esm/utils/blobs.js.map +1 -0
  244. package/lib/esm/utils/chunks.js +9 -0
  245. package/lib/esm/utils/chunks.js.map +1 -0
  246. package/lib/esm/utils/client.js +27 -0
  247. package/lib/esm/utils/client.js.map +1 -0
  248. package/lib/esm/utils/expand-vars.js +30 -0
  249. package/lib/esm/utils/expand-vars.js.map +1 -0
  250. package/lib/esm/utils/memory.js +55 -0
  251. package/lib/esm/utils/memory.js.map +1 -0
  252. package/lib/esm/utils/renditions.js +80 -0
  253. package/lib/esm/utils/renditions.js.map +1 -0
  254. package/lib/esm/utils/storage.js +45 -0
  255. package/lib/esm/utils/storage.js.map +1 -0
  256. package/lib/esm/utils/tokens.js +34 -0
  257. package/lib/esm/utils/tokens.js.map +1 -0
  258. package/lib/esm/vars.js +4 -0
  259. package/lib/esm/vars.js.map +1 -0
  260. package/lib/esm/workflows.js +8 -0
  261. package/lib/esm/workflows.js.map +1 -0
  262. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts +17 -0
  263. package/lib/types/activities/advanced/createDocumentTypeFromInteractionRun.d.ts.map +1 -0
  264. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts +39 -0
  265. package/lib/types/activities/advanced/createOrUpdateDocumentFromInteractionRun.d.ts.map +1 -0
  266. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts +19 -0
  267. package/lib/types/activities/advanced/updateDocumentFromInteractionRun.d.ts.map +1 -0
  268. package/lib/types/activities/chunkDocument.d.ts +33 -0
  269. package/lib/types/activities/chunkDocument.d.ts.map +1 -0
  270. package/lib/types/activities/createDocumentFromOther.d.ts +21 -0
  271. package/lib/types/activities/createDocumentFromOther.d.ts.map +1 -0
  272. package/lib/types/activities/executeInteraction.d.ts +61 -0
  273. package/lib/types/activities/executeInteraction.d.ts.map +1 -0
  274. package/lib/types/activities/extractDocumentText.d.ts +10 -0
  275. package/lib/types/activities/extractDocumentText.d.ts.map +1 -0
  276. package/lib/types/activities/generateDocumentProperties.d.ts +32 -0
  277. package/lib/types/activities/generateDocumentProperties.d.ts.map +1 -0
  278. package/lib/types/activities/generateEmbeddings.d.ts +53 -0
  279. package/lib/types/activities/generateEmbeddings.d.ts.map +1 -0
  280. package/lib/types/activities/generateOrAssignContentType.d.ts +44 -0
  281. package/lib/types/activities/generateOrAssignContentType.d.ts.map +1 -0
  282. package/lib/types/activities/getObjectFromStore.d.ts +14 -0
  283. package/lib/types/activities/getObjectFromStore.d.ts.map +1 -0
  284. package/lib/types/activities/handleError.d.ts +6 -0
  285. package/lib/types/activities/handleError.d.ts.map +1 -0
  286. package/lib/types/activities/index-dsl.d.ts +23 -0
  287. package/lib/types/activities/index-dsl.d.ts.map +1 -0
  288. package/lib/types/activities/index.d.ts +5 -0
  289. package/lib/types/activities/index.d.ts.map +1 -0
  290. package/lib/types/activities/media/prepareVideo.d.ts +30 -0
  291. package/lib/types/activities/media/prepareVideo.d.ts.map +1 -0
  292. package/lib/types/activities/media/processPdfWithTextract.d.ts +26 -0
  293. package/lib/types/activities/media/processPdfWithTextract.d.ts.map +1 -0
  294. package/lib/types/activities/media/saveGladiaTranscription.d.ts +14 -0
  295. package/lib/types/activities/media/saveGladiaTranscription.d.ts.map +1 -0
  296. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts +19 -0
  297. package/lib/types/activities/media/transcribeMediaWithGladia.d.ts.map +1 -0
  298. package/lib/types/activities/notifyWebhook.d.ts +27 -0
  299. package/lib/types/activities/notifyWebhook.d.ts.map +1 -0
  300. package/lib/types/activities/rateLimiter.d.ts +11 -0
  301. package/lib/types/activities/rateLimiter.d.ts.map +1 -0
  302. package/lib/types/activities/renditions/generateImageRendition.d.ts +14 -0
  303. package/lib/types/activities/renditions/generateImageRendition.d.ts.map +1 -0
  304. package/lib/types/activities/renditions/generateVideoRendition.d.ts +15 -0
  305. package/lib/types/activities/renditions/generateVideoRendition.d.ts.map +1 -0
  306. package/lib/types/activities/setDocumentStatus.d.ts +15 -0
  307. package/lib/types/activities/setDocumentStatus.d.ts.map +1 -0
  308. package/lib/types/conversion/TextractProcessor.d.ts +45 -0
  309. package/lib/types/conversion/TextractProcessor.d.ts.map +1 -0
  310. package/lib/types/conversion/image.d.ts +13 -0
  311. package/lib/types/conversion/image.d.ts.map +1 -0
  312. package/lib/types/conversion/markitdown.d.ts +2 -0
  313. package/lib/types/conversion/markitdown.d.ts.map +1 -0
  314. package/lib/types/conversion/mutool.d.ts +19 -0
  315. package/lib/types/conversion/mutool.d.ts.map +1 -0
  316. package/lib/types/conversion/pandoc.d.ts +2 -0
  317. package/lib/types/conversion/pandoc.d.ts.map +1 -0
  318. package/lib/types/dsl/conditions.d.ts +2 -0
  319. package/lib/types/dsl/conditions.d.ts.map +1 -0
  320. package/lib/types/dsl/dsl-workflow.d.ts +5 -0
  321. package/lib/types/dsl/dsl-workflow.d.ts.map +1 -0
  322. package/lib/types/dsl/dslProxyActivities.d.ts +10 -0
  323. package/lib/types/dsl/dslProxyActivities.d.ts.map +1 -0
  324. package/lib/types/dsl/projections.d.ts +4 -0
  325. package/lib/types/dsl/projections.d.ts.map +1 -0
  326. package/lib/types/dsl/setup/ActivityContext.d.ts +17 -0
  327. package/lib/types/dsl/setup/ActivityContext.d.ts.map +1 -0
  328. package/lib/types/dsl/setup/fetch/DataProvider.d.ts +9 -0
  329. package/lib/types/dsl/setup/fetch/DataProvider.d.ts.map +1 -0
  330. package/lib/types/dsl/setup/fetch/index.d.ts +6 -0
  331. package/lib/types/dsl/setup/fetch/index.d.ts.map +1 -0
  332. package/lib/types/dsl/setup/fetch/providers.d.ts +25 -0
  333. package/lib/types/dsl/setup/fetch/providers.d.ts.map +1 -0
  334. package/lib/types/dsl/test/test-child-workflow.d.ts +4 -0
  335. package/lib/types/dsl/test/test-child-workflow.d.ts.map +1 -0
  336. package/lib/types/dsl/validation.d.ts +4 -0
  337. package/lib/types/dsl/validation.d.ts.map +1 -0
  338. package/lib/types/dsl/vars.d.ts +48 -0
  339. package/lib/types/dsl/vars.d.ts.map +1 -0
  340. package/lib/types/dsl/walk.d.ts +18 -0
  341. package/lib/types/dsl/walk.d.ts.map +1 -0
  342. package/lib/types/dsl.d.ts +4 -0
  343. package/lib/types/dsl.d.ts.map +1 -0
  344. package/lib/types/errors.d.ts +33 -0
  345. package/lib/types/errors.d.ts.map +1 -0
  346. package/lib/types/index.d.ts +36 -0
  347. package/lib/types/index.d.ts.map +1 -0
  348. package/lib/types/iterative-generation/activities/extractToc.d.ts +10 -0
  349. package/lib/types/iterative-generation/activities/extractToc.d.ts.map +1 -0
  350. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts +3 -0
  351. package/lib/types/iterative-generation/activities/finalizeOutput.d.ts.map +1 -0
  352. package/lib/types/iterative-generation/activities/generatePart.d.ts +3 -0
  353. package/lib/types/iterative-generation/activities/generatePart.d.ts.map +1 -0
  354. package/lib/types/iterative-generation/activities/generateToc.d.ts +4 -0
  355. package/lib/types/iterative-generation/activities/generateToc.d.ts.map +1 -0
  356. package/lib/types/iterative-generation/activities/index.d.ts +5 -0
  357. package/lib/types/iterative-generation/activities/index.d.ts.map +1 -0
  358. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts +3 -0
  359. package/lib/types/iterative-generation/iterativeGenerationWorkflow.d.ts.map +1 -0
  360. package/lib/types/iterative-generation/types.d.ts +79 -0
  361. package/lib/types/iterative-generation/types.d.ts.map +1 -0
  362. package/lib/types/iterative-generation/utils.d.ts +26 -0
  363. package/lib/types/iterative-generation/utils.d.ts.map +1 -0
  364. package/lib/types/result-types.d.ts +22 -0
  365. package/lib/types/result-types.d.ts.map +1 -0
  366. package/lib/types/system/notifyWebhookWorkflow.d.ts +8 -0
  367. package/lib/types/system/notifyWebhookWorkflow.d.ts.map +1 -0
  368. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts +25 -0
  369. package/lib/types/system/recalculateEmbeddingsWorkflow.d.ts.map +1 -0
  370. package/lib/types/utils/auth.d.ts +4 -0
  371. package/lib/types/utils/auth.d.ts.map +1 -0
  372. package/lib/types/utils/blobs.d.ts +7 -0
  373. package/lib/types/utils/blobs.d.ts.map +1 -0
  374. package/lib/types/utils/chunks.d.ts +9 -0
  375. package/lib/types/utils/chunks.d.ts.map +1 -0
  376. package/lib/types/utils/client.d.ts +8 -0
  377. package/lib/types/utils/client.d.ts.map +1 -0
  378. package/lib/types/utils/expand-vars.d.ts +8 -0
  379. package/lib/types/utils/expand-vars.d.ts.map +1 -0
  380. package/lib/types/utils/memory.d.ts +8 -0
  381. package/lib/types/utils/memory.d.ts.map +1 -0
  382. package/lib/types/utils/renditions.d.ts +23 -0
  383. package/lib/types/utils/renditions.d.ts.map +1 -0
  384. package/lib/types/utils/storage.d.ts +16 -0
  385. package/lib/types/utils/storage.d.ts.map +1 -0
  386. package/lib/types/utils/tokens.d.ts +11 -0
  387. package/lib/types/utils/tokens.d.ts.map +1 -0
  388. package/lib/types/vars.d.ts +3 -0
  389. package/lib/types/vars.d.ts.map +1 -0
  390. package/lib/types/workflows.d.ts +8 -0
  391. package/lib/types/workflows.d.ts.map +1 -0
  392. package/lib/workflows-bundle.js +16226 -0
  393. package/package.json +6 -6
@@ -0,0 +1,69 @@
1
+ import { log } from "@temporalio/activity";
2
+ import { getVertesiaClient } from "../../utils/client.js";
3
+ import { expandVars } from "../../utils/expand-vars.js";
4
+ import { buildAndPublishMemoryPack, loadMemoryPack, } from "../../utils/memory.js";
5
+ import { SECTION_ID_PLACEHOLDER, } from "../types.js";
6
+ export async function it_gen_finalizeOutput(payload) {
7
+ const vars = payload.vars;
8
+ const memory = vars.memory;
9
+ const client = await getVertesiaClient(payload);
10
+ const inMemory = await loadMemoryPack(client, `${memory}/input`);
11
+ const outMemory = await loadMemoryPack(client, `${memory}/output`);
12
+ const content = await outMemory.getEntryText("content.json");
13
+ if (!content) {
14
+ log.info(`Nothing to do. No content.json file found`);
15
+ return "No content.json file found";
16
+ }
17
+ log.info(`Creating the final output memory pack.`);
18
+ const inMeta = await inMemory.getMetadata();
19
+ let tocName = "toc.json";
20
+ let toc = await inMemory.getEntryText(tocName);
21
+ if (!toc) {
22
+ tocName = "toc.yaml";
23
+ toc = await inMemory.getEntryText(tocName);
24
+ }
25
+ if (!toc) {
26
+ const outMeta = await outMemory.getMetadata();
27
+ tocName = "toc.json";
28
+ toc = JSON.stringify(outMeta.toc);
29
+ }
30
+ const sections = JSON.parse(content);
31
+ await buildAndPublishMemoryPack(client, `${memory}/output`, async ({ copyText }) => {
32
+ // copy the input toc file if any
33
+ if (toc) {
34
+ copyText(toc, tocName);
35
+ }
36
+ // copy the raw JSON content
37
+ copyText(content, "content.json");
38
+ if (vars.section_file_pattern) {
39
+ log.info(`Saving sections to files using pattern: ${vars.section_file_pattern}`);
40
+ // save sections to files
41
+ for (const section of sections) {
42
+ let content = section.content;
43
+ if (vars.section_file_header) {
44
+ content =
45
+ getSectionFileHeader(section, vars.section_file_header) +
46
+ "\n\n" +
47
+ content;
48
+ }
49
+ copyText(content, getSectionFileName(section, vars.section_file_pattern));
50
+ }
51
+ }
52
+ return {
53
+ ...inMeta,
54
+ vars,
55
+ };
56
+ });
57
+ return `Processing done. Extracted files to: ${vars.section_file_pattern}`;
58
+ }
59
+ function getSectionFileHeader(section, header) {
60
+ const date = new Date().toISOString();
61
+ return expandVars(header, {
62
+ section,
63
+ date,
64
+ });
65
+ }
66
+ function getSectionFileName(section, pattern) {
67
+ return pattern.replace(SECTION_ID_PLACEHOLDER, section.id);
68
+ }
69
+ //# sourceMappingURL=finalizeOutput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalizeOutput.js","sourceRoot":"","sources":["../../../../src/iterative-generation/activities/finalizeOutput.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ import { ApplicationFailure } from "@temporalio/workflow";
2
+ import { getVertesiaClient } from "../../utils/client.js";
3
+ import { buildAndPublishMemoryPack, loadMemoryPack, } from "../../utils/memory.js";
4
+ import { executeWithVars, expectMemoryIsConsistent } from "../utils.js";
5
+ export async function it_gen_generatePart(payload, path) {
6
+ const vars = payload.vars;
7
+ const client = await getVertesiaClient(payload);
8
+ const memory = vars.memory;
9
+ const [sectionIndex, partIndex] = path;
10
+ const outMemory = await loadMemoryPack(client, `${memory}/output`);
11
+ const meta = (await outMemory.getMetadata());
12
+ // the section we build is the section at the given index
13
+ const section = meta.toc.sections[sectionIndex];
14
+ if (!section) {
15
+ throw ApplicationFailure.nonRetryable("Section not found in the TOC", "SectionNotFound", { memory, path });
16
+ }
17
+ let part;
18
+ if (partIndex !== undefined) {
19
+ part = section.parts?.[partIndex];
20
+ if (!part) {
21
+ throw ApplicationFailure.nonRetryable("Part not found in the TOC section", "PartNotFound", { memory, path });
22
+ }
23
+ }
24
+ expectMemoryIsConsistent(meta, path);
25
+ const content = await loadGeneratedContent(outMemory);
26
+ let previously_generated = getPreviouslyGeneratedContent(content, !part, vars.remembrance_strategy);
27
+ if (!part) {
28
+ // a new section
29
+ content.push({
30
+ id: section.id,
31
+ name: section.name,
32
+ description: section.description,
33
+ content: "",
34
+ });
35
+ }
36
+ else if (!content.length) {
37
+ throw ApplicationFailure.nonRetryable("content.json is empty while generating a part", "InvalidIterationState", { memory, path });
38
+ }
39
+ const interaction = vars.iterative_interaction || vars.interaction;
40
+ const r = await executeWithVars(client, interaction, vars, {
41
+ iteration: {
42
+ toc: meta.toc,
43
+ previously_generated,
44
+ section: section.name,
45
+ part: part?.name,
46
+ path: path,
47
+ },
48
+ });
49
+ const result = r.result.text();
50
+ content[content.length - 1].content += result;
51
+ meta.lastProcessedPart = path;
52
+ await buildAndPublishMemoryPack(client, `${memory}/output`, async ({ copyText }) => {
53
+ copyText(JSON.stringify(content, null, 2), "content.json");
54
+ return meta;
55
+ });
56
+ }
57
+ async function loadGeneratedContent(memory) {
58
+ const content = await memory.getEntryText("content.json");
59
+ return content ? JSON.parse(content) : [];
60
+ }
61
+ function getPreviouslyGeneratedContent(sections, isNewSection, strategy) {
62
+ switch (strategy) {
63
+ case "document":
64
+ return sections
65
+ .map((section) => section.content || "")
66
+ .join("\n\n");
67
+ case "none":
68
+ return "";
69
+ default:
70
+ return isNewSection
71
+ ? ""
72
+ : sections[sections.length - 1]?.content || "";
73
+ }
74
+ }
75
+ //# sourceMappingURL=generatePart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatePart.js","sourceRoot":"","sources":["../../../../src/iterative-generation/activities/generatePart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import { getVertesiaClient } from "../../utils/client.js";
2
+ import { buildAndPublishMemoryPack } from "../../utils/memory.js";
3
+ import { executeWithVars, tocIndex } from "../utils.js";
4
+ const defaultTocSchema = {
5
+ type: "object",
6
+ properties: {
7
+ sections: {
8
+ type: "array",
9
+ items: {
10
+ type: "object",
11
+ properties: {
12
+ id: {
13
+ type: "string",
14
+ description: "the id of the section, can be a filename if working on a file, a slug if working on a document or path, or a unique identifier if working on a model.",
15
+ },
16
+ operation: {
17
+ type: "string",
18
+ enum: ["create", "update", "delete"],
19
+ description: "The operation to perform on the section, create, update or delete. If update, you will be requested later to provide the list of change operation to perform.",
20
+ },
21
+ name: {
22
+ type: "string",
23
+ description: "The name or title of the section, should be the path in the OpenAPI spec, of the title of the section/part.",
24
+ },
25
+ description: {
26
+ type: "string",
27
+ },
28
+ instructions: {
29
+ type: "string",
30
+ },
31
+ parts: {
32
+ type: "array",
33
+ description: "when the section is too large, you can split it into parts, each part should have a title and description. Use it to split the section into subsection. When doing an API documentation, you can do one part for each path. When generating code, you can do one part for each method. When generating an OpenAPI spec, you can do one part for each operation.",
34
+ items: {
35
+ type: "object",
36
+ properties: {
37
+ id: {
38
+ type: "string",
39
+ description: "the id of the part, can be a filename if working on a file, a slug if working on a document or path, or a unique identifier if working on a model.",
40
+ },
41
+ name: {
42
+ type: "string",
43
+ description: "The name or title of the part, should be the path in the OpenAPI spec, of the title of the section/part.",
44
+ },
45
+ /*
46
+ "description": {
47
+ "type": "string"
48
+ },
49
+ */
50
+ instructions: {
51
+ type: "string",
52
+ },
53
+ },
54
+ required: ["id", "name"],
55
+ },
56
+ },
57
+ },
58
+ required: ["id", "name", "operation"],
59
+ },
60
+ },
61
+ },
62
+ required: ["sections"],
63
+ };
64
+ export async function it_gen_generateToc(payload) {
65
+ const vars = payload.vars;
66
+ const schema = vars.toc_schema || defaultTocSchema;
67
+ const client = await getVertesiaClient(payload);
68
+ const run = await executeWithVars(client, vars.interaction, vars, undefined, schema);
69
+ //Parse the CompletionResult[] to get a Toc object
70
+ const jsonResults = run.result.object();
71
+ const toc = {
72
+ sections: jsonResults.sections
73
+ };
74
+ await buildAndPublishMemoryPack(client, `${vars.memory}/output`, async () => {
75
+ return {
76
+ toc,
77
+ lastProcessedPart: undefined, // the part index (a number array)
78
+ previouslyGenerated: "",
79
+ };
80
+ });
81
+ return tocIndex(toc);
82
+ }
83
+ //# sourceMappingURL=generateToc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateToc.js","sourceRoot":"","sources":["../../../../src/iterative-generation/activities/generateToc.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAOlE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,gBAAgB,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,QAAQ,EAAE;YACN,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,EAAE,EAAE;wBACA,IAAI,EAAE,QAAQ;wBACd,WAAW,EACP,uJAAuJ;qBAC9J;oBACD,SAAS,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;wBACpC,WAAW,EACP,+JAA+J;qBACtK;oBACD,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EACP,6GAA6G;qBACpH;oBACD,WAAW,EAAE;wBACT,IAAI,EAAE,QAAQ;qBACjB;oBACD,YAAY,EAAE;wBACV,IAAI,EAAE,QAAQ;qBACjB;oBACD,KAAK,EAAE;wBACH,IAAI,EAAE,OAAO;wBACb,WAAW,EACP,iWAAiW;wBACrW,KAAK,EAAE;4BACH,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACR,EAAE,EAAE;oCACA,IAAI,EAAE,QAAQ;oCACd,WAAW,EACP,oJAAoJ;iCAC3J;gCACD,IAAI,EAAE;oCACF,IAAI,EAAE,QAAQ;oCACd,WAAW,EACP,0GAA0G;iCACjH;gCACD;;;;kCAIE;gCACF,YAAY,EAAE;oCACV,IAAI,EAAE,QAAQ;iCACjB;6BACJ;4BACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;yBAC3B;qBACJ;iBACJ;gBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC;aACxC;SACJ;KACJ;IACD,QAAQ,EAAE,CAAC,UAAU,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,OAAiC;IAEjC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAkC,CAAC;IAExD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC;IAEnD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEhD,MAAM,GAAG,GAAG,MAAM,eAAe,CAC7B,MAAM,EACN,IAAI,CAAC,WAAW,EAChB,IAAI,EACJ,SAAS,EACT,MAAM,CACT,CAAC;IAEF,kDAAkD;IAClD,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAExC,MAAM,GAAG,GAAQ;QACb,QAAQ,EAAE,WAAW,CAAC,QAAQ;KACjC,CAAC;IAEF,MAAM,yBAAyB,CAC3B,MAAM,EACN,GAAG,IAAI,CAAC,MAAM,SAAS,EACvB,KAAK,IAAI,EAAE;QACP,OAAO;YACH,GAAG;YACH,iBAAiB,EAAE,SAAS,EAAE,kCAAkC;YAChE,mBAAmB,EAAE,EAAE;SACC,CAAC;IACjC,CAAC,CACJ,CAAC;IAEF,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { it_gen_generateToc } from './generateToc.js';
2
+ export { it_gen_generatePart } from './generatePart.js';
3
+ export { it_gen_extractToc } from './extractToc.js';
4
+ export { it_gen_finalizeOutput } from './finalizeOutput.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/iterative-generation/activities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1,53 @@
1
+ import { log, proxyActivities } from "@temporalio/workflow";
2
+ import { WF_NON_RETRYABLE_ERRORS } from "../errors.js";
3
+ import { SECTION_ID_PLACEHOLDER } from "./types.js";
4
+ const { it_gen_extractToc, it_gen_generateToc, it_gen_generatePart, it_gen_finalizeOutput } = proxyActivities({
5
+ startToCloseTimeout: "15 minute",
6
+ retry: {
7
+ initialInterval: '30s',
8
+ backoffCoefficient: 2,
9
+ maximumAttempts: 20,
10
+ maximumInterval: 100 * 30 * 1000, //ms
11
+ nonRetryableErrorTypes: WF_NON_RETRYABLE_ERRORS,
12
+ },
13
+ });
14
+ export async function iterativeGenerationWorkflow(payload) {
15
+ log.info(`Executing Iterative generation workflow.`);
16
+ const vars = payload.vars;
17
+ if (vars.section_file_pattern && !vars.section_file_pattern.includes(SECTION_ID_PLACEHOLDER)) {
18
+ throw new Error(`Invalid section_file_pattern: ${vars.section_file_pattern}. It must include the ${SECTION_ID_PLACEHOLDER} placeholder.`);
19
+ }
20
+ // extractToc tries to extract the toc from the input memory pack (toc.json or toc.yaml)
21
+ // the generateToc activity is returning the toc hierarchy.
22
+ // It doesn't include extra TOC details like description etc.
23
+ // To minimize the payload size only the hierarchy and the section/part names are returned
24
+ let toc = await it_gen_extractToc(payload);
25
+ if (!toc) {
26
+ log.info(`No TOC was specified in the input memory pack. Generating one.`);
27
+ toc = await it_gen_generateToc(payload);
28
+ }
29
+ else {
30
+ log.info(`Using the TOC specified in the input memory pack.`);
31
+ }
32
+ if (toc.sections.length === 0) {
33
+ //TODO how to handle this case?
34
+ throw new Error("Nothing to generate: TOC is empty");
35
+ }
36
+ for (const section of toc.sections) {
37
+ log.info(`Generating section: ${formatPath(section)}`);
38
+ await it_gen_generatePart(payload, section.path);
39
+ if (section.parts) {
40
+ for (const part of section.parts) {
41
+ log.info(`Generating part: ${formatPath(part)}`);
42
+ await it_gen_generatePart(payload, part.path);
43
+ }
44
+ }
45
+ }
46
+ log.info(`Post-processing output memory pack`);
47
+ await it_gen_finalizeOutput(payload);
48
+ }
49
+ function formatPath(node) {
50
+ // we print 1 based indexes
51
+ return node.path.map(i => i + 1).join('.') + ' ' + node.name;
52
+ }
53
+ //# sourceMappingURL=iterativeGenerationWorkflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterativeGenerationWorkflow.js","sourceRoot":"","sources":["../../../src/iterative-generation/iterativeGenerationWorkflow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAyC,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAE3F,MAAM,EACF,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACxB,GAAG,eAAe,CAAoB;IACnC,mBAAmB,EAAE,WAAW;IAChC,KAAK,EAAE;QACH,eAAe,EAAE,KAAK;QACtB,kBAAkB,EAAE,CAAC;QACrB,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI;QACtC,sBAAsB,EAAE,uBAAuB;KAClD;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,OAAiC;IAC/E,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAkC,CAAC;IACxD,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC3F,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,CAAC,oBAAoB,yBAAyB,sBAAsB,eAAe,CAAC,CAAC;IAC9I,CAAC;IAED,wFAAwF;IACxF,2DAA2D;IAC3D,6DAA6D;IAC7D,0FAA0F;IAC1F,IAAI,GAAG,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QAC3E,GAAG,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACJ,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,+BAA+B;QAC/B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjC,GAAG,CAAC,IAAI,CAAC,uBAAuB,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC/B,GAAG,CAAC,IAAI,CAAC,oBAAoB,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjD,MAAM,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;IACL,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IAC/C,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,IAAe;IAC/B,2BAA2B;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;AACjE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const SECTION_ID_PLACEHOLDER = '%id';
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/iterative-generation/types.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC"}
@@ -0,0 +1,112 @@
1
+ import { ApplicationFailure } from "@temporalio/workflow";
2
+ export async function execute(client, options) {
3
+ return client.interactions.executeByName(options.interaction, {
4
+ data: {
5
+ ...options.memory_mapping,
6
+ "@memory": options.memory
7
+ },
8
+ result_schema: options.result_schema,
9
+ config: {
10
+ environment: options.environment,
11
+ model: options.model,
12
+ model_options: options.model_options,
13
+ }
14
+ });
15
+ }
16
+ export function executeWithVars(client, interaction, vars, mapping, result_schema) {
17
+ if (mapping) {
18
+ mapping = { ...vars.input_mapping, ...mapping };
19
+ }
20
+ else {
21
+ mapping = vars.input_mapping;
22
+ }
23
+ const model_options = {
24
+ _option_id: "text-fallback",
25
+ max_tokens: vars.max_tokens,
26
+ temperature: vars.temperature
27
+ };
28
+ return execute(client, {
29
+ interaction: interaction,
30
+ memory: `${vars.memory}/input`,
31
+ memory_mapping: mapping,
32
+ environment: vars.environment,
33
+ model: vars.model,
34
+ model_options: model_options,
35
+ result_schema: result_schema
36
+ });
37
+ }
38
+ export function isSamePartIndex(part1, part2) {
39
+ return part1 && part2 && part1.length === part2.length && part1.every((v, i) => v === part2[i]);
40
+ }
41
+ export function getPreviousPathIndex(toc, pathIndex) {
42
+ let [sectionIdx, partIdx] = pathIndex;
43
+ if (partIdx === undefined) {
44
+ let prevSectionIdx = sectionIdx - 1;
45
+ if (prevSectionIdx < 0) {
46
+ return null;
47
+ }
48
+ else {
49
+ const prevParts = toc.sections[prevSectionIdx].parts;
50
+ if (prevParts && prevParts.length > 0) { // return the last part of the previous section
51
+ return [prevSectionIdx, prevParts.length - 1];
52
+ }
53
+ else { // if no parts return the section itself
54
+ return [prevSectionIdx];
55
+ }
56
+ }
57
+ }
58
+ else if (partIdx > 0) { // return the previous part in the same section
59
+ return [sectionIdx, partIdx - 1];
60
+ }
61
+ else { // if the first part return the section itself
62
+ return [sectionIdx];
63
+ }
64
+ }
65
+ export function expectMemoryIsConsistent(meta, pathIndex) {
66
+ const metaLastProcessedPart = meta.lastProcessedPart;
67
+ if (!metaLastProcessedPart) {
68
+ if (pathIndex.length > 1 && pathIndex[0] !== 0) {
69
+ throw ApplicationFailure.nonRetryable('Memory last processed part is not consistent with the workflow.', 'MemoryPackNotConsistent', { currentIndex: pathIndex, expectedPreviousIndex: [pathIndex[0], pathIndex[1] - 1], previousIndex: metaLastProcessedPart });
70
+ }
71
+ else {
72
+ return;
73
+ }
74
+ }
75
+ const prevPathIndex = getPreviousPathIndex(meta.toc, pathIndex);
76
+ if (!prevPathIndex) {
77
+ throw ApplicationFailure.nonRetryable('Memory last processed part is not consistent with the workflow', 'MemoryPackNotConsistent', { currentIndex: pathIndex, expectedPreviousIndex: prevPathIndex, previousIndex: metaLastProcessedPart });
78
+ }
79
+ else if (!isSamePartIndex(prevPathIndex, metaLastProcessedPart)) {
80
+ throw ApplicationFailure.nonRetryable('Memory last processed part is not consistent with the workflow', 'MemoryPackNotConsistent', { currentIndex: pathIndex, expectedPreviousIndex: prevPathIndex, previousIndex: meta.lastProcessedPart });
81
+ }
82
+ }
83
+ export function sectionWithoutParts(section) {
84
+ const clone = { ...section };
85
+ delete clone.parts;
86
+ return clone;
87
+ }
88
+ export function tocIndex(toc) {
89
+ const index = { sections: [] };
90
+ const sections = toc.sections;
91
+ for (let i = 0, l = sections.length; i < l; i++) {
92
+ const section = sections[i];
93
+ const indexParts = [];
94
+ if (section.parts) {
95
+ const parts = section.parts;
96
+ for (let k = 0, ll = section.parts.length; k < ll; k++) {
97
+ const part = parts[k];
98
+ indexParts.push({
99
+ name: part.id,
100
+ path: [i, k]
101
+ });
102
+ }
103
+ }
104
+ index.sections.push({
105
+ name: section.id,
106
+ path: [i],
107
+ parts: indexParts
108
+ });
109
+ }
110
+ return index;
111
+ }
112
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/iterative-generation/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export var TextExtractionStatus;
2
+ (function (TextExtractionStatus) {
3
+ TextExtractionStatus["skipped"] = "skipped";
4
+ TextExtractionStatus["success"] = "success";
5
+ TextExtractionStatus["error"] = "error";
6
+ })(TextExtractionStatus || (TextExtractionStatus = {}));
7
+ //# sourceMappingURL=result-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-types.js","sourceRoot":"","sources":["../../src/result-types.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC5B,2CAAmB,CAAA;IACnB,2CAAmB,CAAA;IACnB,uCAAe,CAAA;AACnB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B"}
@@ -0,0 +1,50 @@
1
+ import { log, workflowInfo } from "@temporalio/workflow";
2
+ import { dslProxyActivities } from "../dsl/dslProxyActivities.js";
3
+ import { WF_NON_RETRYABLE_ERRORS } from "../errors.js";
4
+ const { notifyWebhook } = dslProxyActivities("notifyWebhookWorkflow", {
5
+ startToCloseTimeout: "5 minute",
6
+ retry: {
7
+ initialInterval: '5s',
8
+ backoffCoefficient: 2,
9
+ maximumAttempts: 5,
10
+ maximumInterval: 100 * 30 * 1000, //ms
11
+ nonRetryableErrorTypes: WF_NON_RETRYABLE_ERRORS,
12
+ },
13
+ });
14
+ export async function notifyWebhookWorkflow(payload) {
15
+ const info = workflowInfo();
16
+ const { objectIds, vars } = payload;
17
+ const notifications = [];
18
+ const endpoints = vars.endpoints ?? vars.webhooks ?? [];
19
+ const data = vars.data ?? vars.webhook_data ?? undefined;
20
+ const workflow_type = vars.workflow_type ?? info.workflowType;
21
+ const eventName = payload.event;
22
+ const workflowId = info.parent?.workflowId || info.workflowId;
23
+ const workflowRunId = info.parent?.runId || info.runId;
24
+ if (!endpoints.length) {
25
+ log.info(`No webhooks to notify`);
26
+ return { notifications: [], message: "No webhooks to notify" };
27
+ }
28
+ for (const ep of endpoints) {
29
+ const n = notifyWebhook(payload, {
30
+ webhook: ep,
31
+ method: 'POST',
32
+ workflow_type,
33
+ workflow_id: workflowId,
34
+ workflow_run_id: workflowRunId,
35
+ event_name: eventName,
36
+ detail: {
37
+ object_ids: objectIds,
38
+ data
39
+ }
40
+ }).then(res => {
41
+ log.info(`Webhook notified at ${ep} with response code: ${res.status}`, { res });
42
+ return res;
43
+ });
44
+ notifications.push(n);
45
+ }
46
+ const res = await Promise.all(notifications);
47
+ log.info(`Webhooks notified`);
48
+ return { notifications: res, message: "Webhooks notified" };
49
+ }
50
+ //# sourceMappingURL=notifyWebhookWorkflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifyWebhookWorkflow.js","sourceRoot":"","sources":["../../../src/system/notifyWebhookWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,EACF,aAAa,EAChB,GAAG,kBAAkB,CAAoB,uBAAuB,EAAE;IAC/D,mBAAmB,EAAE,UAAU;IAC/B,KAAK,EAAE;QACH,eAAe,EAAE,IAAI;QACrB,kBAAkB,EAAE,CAAC;QACrB,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI;QACtC,sBAAsB,EAAE,uBAAuB;KAClD;CACJ,CAAC,CAAC;AASH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAA8D;IAEtG,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACpC,MAAM,aAAa,GAAG,EAAE,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAK,IAAY,CAAC,QAAQ,IAAI,EAAE,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAK,IAAY,CAAC,YAAY,IAAI,SAAS,CAAC;IAClE,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC;IAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IAEhC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;IAEvD,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAClC,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnE,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE;YAC7B,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,MAAM;YACd,aAAa;YACb,WAAW,EAAE,UAAU;YACvB,eAAe,EAAE,aAAa;YAC9B,UAAU,EAAE,SAAS;YACrB,MAAM,EAAE;gBACJ,UAAU,EAAE,SAAS;gBACrB,IAAI;aACP;SACJ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACV,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,wBAAwB,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACjF,OAAO,GAAG,CAAC;QACf,CAAC,CAAC,CAAC;QACH,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC7C,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAE9B,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAEhE,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { SupportedEmbeddingTypes } from "@vertesia/common";
2
+ import { dslProxyActivities } from "../dsl/dslProxyActivities.js";
3
+ import { WF_NON_RETRYABLE_ERRORS } from "../errors.js";
4
+ const { generateEmbeddings, } = dslProxyActivities("recalculateEmbeddingsWorkflow", {
5
+ startToCloseTimeout: "5 minute",
6
+ retry: {
7
+ initialInterval: '10s',
8
+ backoffCoefficient: 2,
9
+ maximumAttempts: 10,
10
+ maximumInterval: 100 * 30 * 1000, //ms
11
+ nonRetryableErrorTypes: WF_NON_RETRYABLE_ERRORS,
12
+ },
13
+ });
14
+ export async function recalculateEmbeddingsWorkflow(payload) {
15
+ const embeddings = [];
16
+ const payloadType = payload.vars?.type;
17
+ if (payloadType && !Object.values(SupportedEmbeddingTypes).includes(payloadType)) {
18
+ throw new Error("Embedding type must be text, image, or properties");
19
+ }
20
+ const types = payloadType ? [payloadType] : Object.values(SupportedEmbeddingTypes);
21
+ for (const type of types) {
22
+ embeddings.push(generateEmbeddings(payload, {
23
+ force: true,
24
+ type
25
+ }));
26
+ }
27
+ const res = await Promise.all(embeddings);
28
+ return res;
29
+ }
30
+ //# sourceMappingURL=recalculateEmbeddingsWorkflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recalculateEmbeddingsWorkflow.js","sourceRoot":"","sources":["../../../src/system/recalculateEmbeddingsWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAA4B,MAAM,kBAAkB,CAAC;AAErF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,EACF,kBAAkB,GACrB,GAAG,kBAAkB,CAAoB,+BAA+B,EAAE;IACvE,mBAAmB,EAAE,UAAU;IAC/B,KAAK,EAAE;QACH,eAAe,EAAE,KAAK;QACtB,kBAAkB,EAAE,CAAC;QACrB,eAAe,EAAE,EAAE;QACnB,eAAe,EAAE,GAAG,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI;QACtC,sBAAsB,EAAE,uBAAuB;KAClD;CACJ,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,OAAiC;IAEjF,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,IAA+B,CAAC;IAElE,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAEnF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;YACxC,KAAK,EAAE,IAAI;YACX,IAAI;SACP,CAAC,CAAC,CAAA;IACP,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAE1C,OAAO,GAAG,CAAC;AAEf,CAAC"}
@@ -0,0 +1,8 @@
1
+ import jwt from 'jsonwebtoken';
2
+ export function decodeAuthToken(token) {
3
+ return jwt.decode(token, { json: true });
4
+ }
5
+ export function getProjectFromToken(token) {
6
+ return decodeAuthToken(token)?.project;
7
+ }
8
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/utils/auth.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,cAAc,CAAC;AAE/B,MAAM,UAAU,eAAe,CAAC,KAAa;IACzC,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAqB,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC7C,OAAO,eAAe,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,54 @@
1
+ import crypto from "crypto";
2
+ import { createWriteStream } from "fs";
3
+ import { Readable } from "stream";
4
+ import { pipeline } from "stream/promises";
5
+ import tmp from "tmp";
6
+ import { DocumentNotFoundError } from "../errors.js";
7
+ tmp.setGracefulCleanup();
8
+ export async function fetchBlobAsStream(client, blobUri) {
9
+ try {
10
+ return await client.files.downloadFile(blobUri);
11
+ }
12
+ catch (err) {
13
+ if (err.message.includes("not found")) {
14
+ //TODO improve error handling with a fetch fail error class in the client
15
+ throw new DocumentNotFoundError(`Not found at ${blobUri}: ${err.message}`, []);
16
+ }
17
+ else if (err.message.includes("forbidden")) {
18
+ throw new DocumentNotFoundError(`Forbidden at ${blobUri}: ${err.message}`);
19
+ }
20
+ else {
21
+ throw new Error(`Failed to download blob ${blobUri}: ${err.message}`);
22
+ }
23
+ }
24
+ }
25
+ export async function fetchBlobAsBuffer(client, blobUri) {
26
+ let stream = await fetchBlobAsStream(client, blobUri);
27
+ const buffers = [];
28
+ for await (const data of stream) {
29
+ buffers.push(data);
30
+ }
31
+ return Buffer.concat(buffers);
32
+ }
33
+ export async function fetchBlobAsBase64(client, blobUri) {
34
+ const buffer = await fetchBlobAsBuffer(client, blobUri);
35
+ return buffer.toString("base64");
36
+ }
37
+ async function saveBlobToFile(client, blobUri, toFile) {
38
+ const stream = await fetchBlobAsStream(client, blobUri);
39
+ const nodeReadable = Readable.from(stream);
40
+ const out = createWriteStream(toFile);
41
+ await pipeline(nodeReadable, out); // Ensures completion before continuing
42
+ }
43
+ export async function saveBlobToTempFile(client, blobUri, fileExt) {
44
+ const tmpFile = tmp.fileSync({
45
+ prefix: "vertesia-activity-",
46
+ postfix: fileExt ? "." + fileExt : "",
47
+ });
48
+ await saveBlobToFile(client, blobUri, tmpFile.name);
49
+ return tmpFile.name;
50
+ }
51
+ export function md5(contents) {
52
+ return crypto.createHash("md5").update(contents).digest("hex");
53
+ }
54
+ //# sourceMappingURL=blobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blobs.js","sourceRoot":"","sources":["../../../src/utils/blobs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export const getContentPart = (content, part) => {
2
+ const lines = content.split('\n');
3
+ const text = lines.filter((_l, i) => i >= part.line_number_start && i <= part.line_number_end).join('\n');
4
+ return text;
5
+ };
6
+ export const getContentParts = (content, parts) => {
7
+ return parts.map(part => getContentPart(content, part));
8
+ };
9
+ //# sourceMappingURL=chunks.js.map