@temelj/workflow 0.0.0-alpha.1

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/LICENSE +21 -0
  2. package/README.md +38 -0
  3. package/dist/attributes.d.mts +15 -0
  4. package/dist/attributes.mjs +30 -0
  5. package/dist/client/create.d.mts +31 -0
  6. package/dist/client/create.mjs +67 -0
  7. package/dist/client/facades.d.mts +21 -0
  8. package/dist/client/facades.mjs +142 -0
  9. package/dist/client/mod.d.mts +2 -0
  10. package/dist/client/mod.mjs +2 -0
  11. package/dist/client/run-handle.d.mts +66 -0
  12. package/dist/client/run-handle.mjs +156 -0
  13. package/dist/client/worker-options.d.mts +17 -0
  14. package/dist/client/worker-options.mjs +25 -0
  15. package/dist/collection.d.mts +15 -0
  16. package/dist/collection.mjs +33 -0
  17. package/dist/compiled-function.d.mts +27 -0
  18. package/dist/compiled-function.mjs +54 -0
  19. package/dist/definition.d.mts +37 -0
  20. package/dist/definition.mjs +83 -0
  21. package/dist/engine/child-workflow.d.mts +10 -0
  22. package/dist/engine/child-workflow.mjs +333 -0
  23. package/dist/engine/command-identity.d.mts +9 -0
  24. package/dist/engine/command-identity.mjs +14 -0
  25. package/dist/engine/create.d.mts +106 -0
  26. package/dist/engine/create.mjs +402 -0
  27. package/dist/engine/deterministic.d.mts +12 -0
  28. package/dist/engine/deterministic.mjs +102 -0
  29. package/dist/engine/durable-command.d.mts +10 -0
  30. package/dist/engine/durable-command.mjs +17 -0
  31. package/dist/engine/execution-api.d.mts +29 -0
  32. package/dist/engine/execution-api.mjs +33 -0
  33. package/dist/engine/execution-service.d.mts +41 -0
  34. package/dist/engine/execution-service.mjs +288 -0
  35. package/dist/engine/hooks.d.mts +56 -0
  36. package/dist/engine/hooks.mjs +237 -0
  37. package/dist/engine/inspection-api.d.mts +34 -0
  38. package/dist/engine/inspection-api.mjs +77 -0
  39. package/dist/engine/inspection.d.mts +18 -0
  40. package/dist/engine/inspection.mjs +149 -0
  41. package/dist/engine/lifecycle.d.mts +18 -0
  42. package/dist/engine/lifecycle.mjs +38 -0
  43. package/dist/engine/lock-replay.d.mts +30 -0
  44. package/dist/engine/lock-replay.mjs +38 -0
  45. package/dist/engine/lock.d.mts +21 -0
  46. package/dist/engine/lock.mjs +197 -0
  47. package/dist/engine/message.d.mts +47 -0
  48. package/dist/engine/message.mjs +357 -0
  49. package/dist/engine/mod.d.mts +4 -0
  50. package/dist/engine/mod.mjs +2 -0
  51. package/dist/engine/observation.d.mts +35 -0
  52. package/dist/engine/observation.mjs +201 -0
  53. package/dist/engine/recovery.d.mts +26 -0
  54. package/dist/engine/recovery.mjs +92 -0
  55. package/dist/engine/replay.d.mts +41 -0
  56. package/dist/engine/replay.mjs +122 -0
  57. package/dist/engine/retry-policy.d.mts +4 -0
  58. package/dist/engine/retry-policy.mjs +4 -0
  59. package/dist/engine/retry.d.mts +23 -0
  60. package/dist/engine/retry.mjs +75 -0
  61. package/dist/engine/run-data.d.mts +9 -0
  62. package/dist/engine/run-data.mjs +74 -0
  63. package/dist/engine/run-service.d.mts +38 -0
  64. package/dist/engine/run-service.mjs +133 -0
  65. package/dist/engine/run-utils.d.mts +16 -0
  66. package/dist/engine/run-utils.mjs +83 -0
  67. package/dist/engine/schedule.d.mts +25 -0
  68. package/dist/engine/schedule.mjs +207 -0
  69. package/dist/engine/serialization.d.mts +9 -0
  70. package/dist/engine/serialization.mjs +85 -0
  71. package/dist/engine/start-api.d.mts +30 -0
  72. package/dist/engine/start-api.mjs +98 -0
  73. package/dist/engine/state.d.mts +77 -0
  74. package/dist/engine/state.mjs +464 -0
  75. package/dist/engine/step-api.d.mts +9 -0
  76. package/dist/engine/step-api.mjs +25 -0
  77. package/dist/engine/stream.d.mts +55 -0
  78. package/dist/engine/stream.mjs +333 -0
  79. package/dist/engine/summary/active-events.d.mts +34 -0
  80. package/dist/engine/summary/active-events.mjs +69 -0
  81. package/dist/engine/summary/child-workflow-runs.d.mts +24 -0
  82. package/dist/engine/summary/child-workflow-runs.mjs +138 -0
  83. package/dist/engine/summary/child-workflow-waits.d.mts +21 -0
  84. package/dist/engine/summary/child-workflow-waits.mjs +67 -0
  85. package/dist/engine/summary/recovery-child-workflow-waits.d.mts +11 -0
  86. package/dist/engine/summary/recovery-child-workflow-waits.mjs +89 -0
  87. package/dist/engine/summary/recovery-due-runs.d.mts +16 -0
  88. package/dist/engine/summary/recovery-due-runs.mjs +52 -0
  89. package/dist/engine/summary/recovery-failed-runs.d.mts +14 -0
  90. package/dist/engine/summary/recovery-failed-runs.mjs +33 -0
  91. package/dist/engine/summary/recovery-lease-runs.d.mts +16 -0
  92. package/dist/engine/summary/recovery-lease-runs.mjs +69 -0
  93. package/dist/engine/summary/recovery-locks.d.mts +18 -0
  94. package/dist/engine/summary/recovery-locks.mjs +100 -0
  95. package/dist/engine/summary/recovery-message-waits.d.mts +11 -0
  96. package/dist/engine/summary/recovery-message-waits.mjs +74 -0
  97. package/dist/engine/summary/recovery-retry-runs.d.mts +17 -0
  98. package/dist/engine/summary/recovery-retry-runs.mjs +65 -0
  99. package/dist/engine/summary/recovery-run-timestamps.d.mts +13 -0
  100. package/dist/engine/summary/recovery-run-timestamps.mjs +18 -0
  101. package/dist/engine/summary/recovery-runs.d.mts +23 -0
  102. package/dist/engine/summary/recovery-runs.mjs +54 -0
  103. package/dist/engine/summary/recovery-schedules.d.mts +10 -0
  104. package/dist/engine/summary/recovery-schedules.mjs +46 -0
  105. package/dist/engine/summary/recovery-sleep-waits.d.mts +10 -0
  106. package/dist/engine/summary/recovery-sleep-waits.mjs +53 -0
  107. package/dist/engine/summary/recovery-waits.d.mts +21 -0
  108. package/dist/engine/summary/recovery-waits.mjs +29 -0
  109. package/dist/engine/summary/run-availability.d.mts +13 -0
  110. package/dist/engine/summary/run-availability.mjs +37 -0
  111. package/dist/engine/summary/run-cleanup.d.mts +14 -0
  112. package/dist/engine/summary/run-cleanup.mjs +44 -0
  113. package/dist/engine/summary/run-failure.d.mts +14 -0
  114. package/dist/engine/summary/run-failure.mjs +62 -0
  115. package/dist/engine/summary/run-hooks.d.mts +14 -0
  116. package/dist/engine/summary/run-hooks.mjs +63 -0
  117. package/dist/engine/summary/run-lease.d.mts +11 -0
  118. package/dist/engine/summary/run-lease.mjs +64 -0
  119. package/dist/engine/summary/run-message-waits.d.mts +15 -0
  120. package/dist/engine/summary/run-message-waits.mjs +62 -0
  121. package/dist/engine/summary/run-metrics.d.mts +31 -0
  122. package/dist/engine/summary/run-metrics.mjs +93 -0
  123. package/dist/engine/summary/run-retry.d.mts +9 -0
  124. package/dist/engine/summary/run-retry.mjs +69 -0
  125. package/dist/engine/summary/run-sleeps.d.mts +15 -0
  126. package/dist/engine/summary/run-sleeps.mjs +61 -0
  127. package/dist/engine/summary/run-state.d.mts +26 -0
  128. package/dist/engine/summary/run-state.mjs +48 -0
  129. package/dist/engine/summary/run-status.d.mts +16 -0
  130. package/dist/engine/summary/run-status.mjs +35 -0
  131. package/dist/engine/summary/run-streams.d.mts +14 -0
  132. package/dist/engine/summary/run-streams.mjs +46 -0
  133. package/dist/engine/summary/run-transition.d.mts +9 -0
  134. package/dist/engine/summary/run-transition.mjs +39 -0
  135. package/dist/engine/summary/run-workflow.d.mts +9 -0
  136. package/dist/engine/summary/run-workflow.mjs +47 -0
  137. package/dist/engine/summary/step-attempt-active-child-workflows.d.mts +13 -0
  138. package/dist/engine/summary/step-attempt-active-child-workflows.mjs +55 -0
  139. package/dist/engine/summary/step-attempt-active-fields.d.mts +23 -0
  140. package/dist/engine/summary/step-attempt-active-fields.mjs +14 -0
  141. package/dist/engine/summary/step-attempt-active-message-waits.d.mts +12 -0
  142. package/dist/engine/summary/step-attempt-active-message-waits.mjs +47 -0
  143. package/dist/engine/summary/step-attempt-active-sleeps.d.mts +19 -0
  144. package/dist/engine/summary/step-attempt-active-sleeps.mjs +44 -0
  145. package/dist/engine/summary/step-attempt-buckets.d.mts +22 -0
  146. package/dist/engine/summary/step-attempt-buckets.mjs +152 -0
  147. package/dist/engine/summary/step-attempt-failure.d.mts +12 -0
  148. package/dist/engine/summary/step-attempt-failure.mjs +61 -0
  149. package/dist/engine/summary/step-attempt-lifecycle.d.mts +13 -0
  150. package/dist/engine/summary/step-attempt-lifecycle.mjs +19 -0
  151. package/dist/engine/summary/step-attempts.d.mts +11 -0
  152. package/dist/engine/summary/step-attempts.mjs +43 -0
  153. package/dist/engine/summary.d.mts +32 -0
  154. package/dist/engine/summary.mjs +37 -0
  155. package/dist/engine/task.d.mts +6 -0
  156. package/dist/engine/task.mjs +207 -0
  157. package/dist/errors/base.d.mts +99 -0
  158. package/dist/errors/base.mjs +426 -0
  159. package/dist/errors/capability.d.mts +11 -0
  160. package/dist/errors/capability.mjs +23 -0
  161. package/dist/errors/definition.d.mts +21 -0
  162. package/dist/errors/definition.mjs +51 -0
  163. package/dist/errors/details.d.mts +13 -0
  164. package/dist/errors/details.mjs +65 -0
  165. package/dist/errors/failures.d.mts +81 -0
  166. package/dist/errors/failures.mjs +168 -0
  167. package/dist/errors/hook.d.mts +14 -0
  168. package/dist/errors/hook.mjs +30 -0
  169. package/dist/errors/implementation.d.mts +11 -0
  170. package/dist/errors/implementation.mjs +25 -0
  171. package/dist/errors/lock.d.mts +28 -0
  172. package/dist/errors/lock.mjs +70 -0
  173. package/dist/errors/message.d.mts +106 -0
  174. package/dist/errors/message.mjs +122 -0
  175. package/dist/errors/mod.d.mts +17 -0
  176. package/dist/errors/mod.mjs +17 -0
  177. package/dist/errors/record-view.d.mts +11 -0
  178. package/dist/errors/record-view.mjs +24 -0
  179. package/dist/errors/records.d.mts +7 -0
  180. package/dist/errors/records.mjs +280 -0
  181. package/dist/errors/run.d.mts +116 -0
  182. package/dist/errors/run.mjs +232 -0
  183. package/dist/errors/runtime.d.mts +12 -0
  184. package/dist/errors/runtime.mjs +24 -0
  185. package/dist/errors/schedule.d.mts +27 -0
  186. package/dist/errors/schedule.mjs +65 -0
  187. package/dist/errors/step.d.mts +76 -0
  188. package/dist/errors/step.mjs +113 -0
  189. package/dist/errors/stream.d.mts +24 -0
  190. package/dist/errors/stream.mjs +64 -0
  191. package/dist/esbuild.d.mts +7 -0
  192. package/dist/esbuild.mjs +6 -0
  193. package/dist/events/descriptors.d.mts +245 -0
  194. package/dist/events/descriptors.mjs +405 -0
  195. package/dist/events/mod.d.mts +3 -0
  196. package/dist/events/mod.mjs +2 -0
  197. package/dist/history/attempt-key.d.mts +6 -0
  198. package/dist/history/attempt-key.mjs +7 -0
  199. package/dist/history/mod.d.mts +71 -0
  200. package/dist/history/mod.mjs +195 -0
  201. package/dist/history/projection.d.mts +8 -0
  202. package/dist/history/projection.mjs +259 -0
  203. package/dist/history/replay-projection.d.mts +88 -0
  204. package/dist/history/replay-projection.mjs +369 -0
  205. package/dist/history/sequencer.d.mts +16 -0
  206. package/dist/history/sequencer.mjs +78 -0
  207. package/dist/history/step-attempts.d.mts +9 -0
  208. package/dist/history/step-attempts.mjs +50 -0
  209. package/dist/history/timeline.d.mts +16 -0
  210. package/dist/history/timeline.mjs +272 -0
  211. package/dist/history/validator.d.mts +9 -0
  212. package/dist/history/validator.mjs +110 -0
  213. package/dist/inspection/mod.d.mts +5 -0
  214. package/dist/inspection/mod.mjs +3 -0
  215. package/dist/message-options.d.mts +8 -0
  216. package/dist/message-options.mjs +25 -0
  217. package/dist/mod.d.mts +52 -0
  218. package/dist/mod.mjs +26 -0
  219. package/dist/otel/support.d.mts +18 -0
  220. package/dist/otel/support.mjs +102 -0
  221. package/dist/otel.d.mts +30 -0
  222. package/dist/otel.mjs +588 -0
  223. package/dist/pagination.d.mts +25 -0
  224. package/dist/pagination.mjs +73 -0
  225. package/dist/registry.d.mts +20 -0
  226. package/dist/registry.mjs +48 -0
  227. package/dist/rolldown.d.mts +7 -0
  228. package/dist/rolldown.mjs +6 -0
  229. package/dist/rollup.d.mts +7 -0
  230. package/dist/rollup.mjs +6 -0
  231. package/dist/rspack.d.mts +7 -0
  232. package/dist/rspack.mjs +6 -0
  233. package/dist/runtime.d.mts +34 -0
  234. package/dist/runtime.mjs +194 -0
  235. package/dist/step-definition.d.mts +10 -0
  236. package/dist/step-definition.mjs +15 -0
  237. package/dist/store/append-projection.d.mts +15 -0
  238. package/dist/store/append-projection.mjs +26 -0
  239. package/dist/store/capabilities.d.mts +14 -0
  240. package/dist/store/capabilities.mjs +42 -0
  241. package/dist/store/cleanup.d.mts +18 -0
  242. package/dist/store/cleanup.mjs +338 -0
  243. package/dist/store/compaction.d.mts +5 -0
  244. package/dist/store/compaction.mjs +8 -0
  245. package/dist/store/create.d.mts +52 -0
  246. package/dist/store/create.mjs +159 -0
  247. package/dist/store/event-append-project.d.mts +15 -0
  248. package/dist/store/event-append-project.mjs +77 -0
  249. package/dist/store/event-append.d.mts +37 -0
  250. package/dist/store/event-append.mjs +80 -0
  251. package/dist/store/event-history.d.mts +22 -0
  252. package/dist/store/event-history.mjs +75 -0
  253. package/dist/store/event.d.mts +10 -0
  254. package/dist/store/event.mjs +28 -0
  255. package/dist/store/idempotency.d.mts +10 -0
  256. package/dist/store/idempotency.mjs +167 -0
  257. package/dist/store/instrumentation.d.mts +7 -0
  258. package/dist/store/instrumentation.mjs +123 -0
  259. package/dist/store/lock.d.mts +8 -0
  260. package/dist/store/lock.mjs +28 -0
  261. package/dist/store/materialization.d.mts +30 -0
  262. package/dist/store/materialization.mjs +127 -0
  263. package/dist/store/message-index.d.mts +21 -0
  264. package/dist/store/message-index.mjs +121 -0
  265. package/dist/store/mod.d.mts +5 -0
  266. package/dist/store/mod.mjs +4 -0
  267. package/dist/store/query.d.mts +24 -0
  268. package/dist/store/query.mjs +82 -0
  269. package/dist/store/revision.d.mts +4 -0
  270. package/dist/store/revision.mjs +7 -0
  271. package/dist/store/run.d.mts +49 -0
  272. package/dist/store/run.mjs +236 -0
  273. package/dist/store/schedule.d.mts +12 -0
  274. package/dist/store/schedule.mjs +41 -0
  275. package/dist/store/schema.d.mts +14 -0
  276. package/dist/store/schema.mjs +17 -0
  277. package/dist/store/step-attempt.d.mts +14 -0
  278. package/dist/store/step-attempt.mjs +23 -0
  279. package/dist/store/storage-value.d.mts +5 -0
  280. package/dist/store/storage-value.mjs +6 -0
  281. package/dist/store/validation.d.mts +35 -0
  282. package/dist/store/validation.mjs +77 -0
  283. package/dist/store-keys.d.mts +49 -0
  284. package/dist/store-keys.mjs +63 -0
  285. package/dist/telemetry.d.mts +132 -0
  286. package/dist/telemetry.mjs +172 -0
  287. package/dist/temporal.d.mts +23 -0
  288. package/dist/temporal.mjs +59 -0
  289. package/dist/timer.d.mts +12 -0
  290. package/dist/timer.mjs +28 -0
  291. package/dist/types/cleanup.d.mts +112 -0
  292. package/dist/types/cleanup.mjs +22 -0
  293. package/dist/types/client.d.mts +270 -0
  294. package/dist/types/client.mjs +1 -0
  295. package/dist/types/common.d.mts +19 -0
  296. package/dist/types/common.mjs +15 -0
  297. package/dist/types/definition.d.mts +92 -0
  298. package/dist/types/definition.mjs +1 -0
  299. package/dist/types/engine-options.d.mts +76 -0
  300. package/dist/types/engine-options.mjs +1 -0
  301. package/dist/types/engine.d.mts +309 -0
  302. package/dist/types/engine.mjs +1 -0
  303. package/dist/types/error-code.d.mts +256 -0
  304. package/dist/types/error-code.mjs +131 -0
  305. package/dist/types/error.d.mts +236 -0
  306. package/dist/types/error.mjs +48 -0
  307. package/dist/types/events.d.mts +2869 -0
  308. package/dist/types/events.mjs +283 -0
  309. package/dist/types/hook.d.mts +149 -0
  310. package/dist/types/hook.mjs +66 -0
  311. package/dist/types/lock.d.mts +63 -0
  312. package/dist/types/lock.mjs +18 -0
  313. package/dist/types/message-id.d.mts +7 -0
  314. package/dist/types/message-id.mjs +5 -0
  315. package/dist/types/message.d.mts +87 -0
  316. package/dist/types/message.mjs +1 -0
  317. package/dist/types/observation.d.mts +146 -0
  318. package/dist/types/observation.mjs +1 -0
  319. package/dist/types/pagination.d.mts +32 -0
  320. package/dist/types/pagination.mjs +13 -0
  321. package/dist/types/result.d.mts +62 -0
  322. package/dist/types/result.mjs +1 -0
  323. package/dist/types/retry.d.mts +48 -0
  324. package/dist/types/retry.mjs +1 -0
  325. package/dist/types/run-id.d.mts +7 -0
  326. package/dist/types/run-id.mjs +5 -0
  327. package/dist/types/run-list.d.mts +43 -0
  328. package/dist/types/run-list.mjs +1 -0
  329. package/dist/types/run-options.d.mts +86 -0
  330. package/dist/types/run-options.mjs +1 -0
  331. package/dist/types/run.d.mts +355 -0
  332. package/dist/types/run.mjs +207 -0
  333. package/dist/types/runtime.d.mts +143 -0
  334. package/dist/types/runtime.mjs +21 -0
  335. package/dist/types/schedule.d.mts +127 -0
  336. package/dist/types/schedule.mjs +48 -0
  337. package/dist/types/step-attempts.d.mts +326 -0
  338. package/dist/types/step-attempts.mjs +43 -0
  339. package/dist/types/step-id.d.mts +7 -0
  340. package/dist/types/step-id.mjs +5 -0
  341. package/dist/types/step.d.mts +183 -0
  342. package/dist/types/step.mjs +5 -0
  343. package/dist/types/store.d.mts +254 -0
  344. package/dist/types/store.mjs +1 -0
  345. package/dist/types/stream-id.d.mts +7 -0
  346. package/dist/types/stream-id.mjs +5 -0
  347. package/dist/types/stream.d.mts +126 -0
  348. package/dist/types/stream.mjs +1 -0
  349. package/dist/types/summary.d.mts +318 -0
  350. package/dist/types/summary.mjs +1 -0
  351. package/dist/types/telemetry.d.mts +74 -0
  352. package/dist/types/telemetry.mjs +9 -0
  353. package/dist/types/timeline.d.mts +237 -0
  354. package/dist/types/timeline.mjs +1 -0
  355. package/dist/types/vite.d.mts +65 -0
  356. package/dist/types/vite.mjs +1 -0
  357. package/dist/types/worker-id.d.mts +7 -0
  358. package/dist/types/worker-id.mjs +5 -0
  359. package/dist/types/worker.d.mts +94 -0
  360. package/dist/types/worker.mjs +1 -0
  361. package/dist/utility.d.mts +49 -0
  362. package/dist/utility.mjs +122 -0
  363. package/dist/vite/ast.d.mts +23 -0
  364. package/dist/vite/ast.mjs +73 -0
  365. package/dist/vite/error.d.mts +19 -0
  366. package/dist/vite/error.mjs +47 -0
  367. package/dist/vite/generated-name.d.mts +7 -0
  368. package/dist/vite/generated-name.mjs +9 -0
  369. package/dist/vite/manifest.d.mts +7 -0
  370. package/dist/vite/manifest.mjs +106 -0
  371. package/dist/vite/plugin.d.mts +7 -0
  372. package/dist/vite/plugin.mjs +190 -0
  373. package/dist/vite/safety.d.mts +12 -0
  374. package/dist/vite/safety.mjs +96 -0
  375. package/dist/vite/source-edit.d.mts +12 -0
  376. package/dist/vite/source-edit.mjs +44 -0
  377. package/dist/vite/source-map.d.mts +11 -0
  378. package/dist/vite/source-map.mjs +53 -0
  379. package/dist/vite/source.d.mts +7 -0
  380. package/dist/vite/source.mjs +14 -0
  381. package/dist/vite/transform.d.mts +7 -0
  382. package/dist/vite/transform.mjs +405 -0
  383. package/dist/vite.d.mts +6 -0
  384. package/dist/vite.mjs +5 -0
  385. package/dist/webhook.d.mts +16 -0
  386. package/dist/webhook.mjs +17 -0
  387. package/dist/webpack.d.mts +7 -0
  388. package/dist/webpack.mjs +6 -0
  389. package/dist/worker/error.d.mts +11 -0
  390. package/dist/worker/error.mjs +40 -0
  391. package/dist/worker.d.mts +18 -0
  392. package/dist/worker.mjs +427 -0
  393. package/package.json +144 -0
@@ -0,0 +1,272 @@
1
+ import { workflowAttributePatchFromEvent } from "../attributes.mjs";
2
+ import { workflowEventRecordListSchema } from "../types/events.mjs";
3
+ //#region src/history/timeline.ts
4
+ /** Creates workflow timeline. */
5
+ function createTimeline(run, events) {
6
+ return new Timeline(run, events);
7
+ }
8
+ /** Timeline projection built from a run record and its durable event history. */
9
+ var Timeline = class {
10
+ /** @inheritdoc */
11
+ run;
12
+ /** @inheritdoc */
13
+ entries;
14
+ constructor(run, events) {
15
+ const parsedEvents = workflowEventRecordListSchema.parse(events);
16
+ this.run = run;
17
+ this.entries = parsedEvents.map(toTimelineEntry);
18
+ }
19
+ };
20
+ function toTimelineEntry(event) {
21
+ switch (event.kind) {
22
+ case "workflow_started": return {
23
+ kind: "workflow",
24
+ status: "started",
25
+ timestamp: event.timestamp,
26
+ event
27
+ };
28
+ case "workflow_completed": return {
29
+ kind: "workflow",
30
+ status: "completed",
31
+ timestamp: event.timestamp,
32
+ event
33
+ };
34
+ case "workflow_failed": return {
35
+ kind: "workflow",
36
+ status: "failed",
37
+ timestamp: event.timestamp,
38
+ event
39
+ };
40
+ case "step_started": return {
41
+ kind: "step",
42
+ status: "started",
43
+ timestamp: event.timestamp,
44
+ stepId: event.stepId,
45
+ stepName: event.stepName,
46
+ attempt: event.attempt,
47
+ count: event.count,
48
+ event
49
+ };
50
+ case "step_completed": return {
51
+ kind: "step",
52
+ status: "completed",
53
+ timestamp: event.timestamp,
54
+ stepId: event.stepId,
55
+ stepName: event.stepName,
56
+ attempt: event.attempt,
57
+ result: event.result,
58
+ event
59
+ };
60
+ case "step_failed": return {
61
+ kind: "step",
62
+ status: "failed",
63
+ timestamp: event.timestamp,
64
+ stepId: event.stepId,
65
+ stepName: event.stepName,
66
+ attempt: event.attempt,
67
+ error: event.error,
68
+ event
69
+ };
70
+ case "metadata_set": return {
71
+ kind: "metadata",
72
+ status: "set",
73
+ timestamp: event.timestamp,
74
+ stepId: event.stepId,
75
+ stepName: event.stepName,
76
+ count: event.count,
77
+ metadata: event.metadata,
78
+ event
79
+ };
80
+ case "attributes_set": return {
81
+ kind: "attributes",
82
+ status: "set",
83
+ timestamp: event.timestamp,
84
+ stepId: event.stepId,
85
+ stepName: event.stepName,
86
+ count: event.count,
87
+ attributes: workflowAttributePatchFromEvent(event),
88
+ event
89
+ };
90
+ case "deterministic_value_recorded": return {
91
+ kind: "deterministic",
92
+ status: "recorded",
93
+ timestamp: event.timestamp,
94
+ stepId: event.stepId,
95
+ stepName: event.stepName,
96
+ count: event.count,
97
+ value: event.value,
98
+ event
99
+ };
100
+ case "sleep_started": return {
101
+ kind: "sleep",
102
+ status: "started",
103
+ timestamp: event.timestamp,
104
+ stepId: event.stepId,
105
+ stepName: event.stepName,
106
+ count: event.count,
107
+ until: event.until,
108
+ ...event.duration === void 0 ? {} : { duration: event.duration },
109
+ event
110
+ };
111
+ case "sleep_completed": return {
112
+ kind: "sleep",
113
+ status: "completed",
114
+ timestamp: event.timestamp,
115
+ stepId: event.stepId,
116
+ stepName: event.stepName,
117
+ event
118
+ };
119
+ case "child_workflow_started": return {
120
+ kind: "child_workflow",
121
+ status: "started",
122
+ timestamp: event.timestamp,
123
+ stepId: event.stepId,
124
+ stepName: event.stepName,
125
+ count: event.count,
126
+ childRunId: event.childRunId,
127
+ workflowName: event.workflowName,
128
+ ...event.workflowVersion === void 0 ? {} : { workflowVersion: event.workflowVersion },
129
+ ...event.input === void 0 ? {} : { input: event.input },
130
+ ...event.timeoutAt === void 0 ? {} : { timeoutAt: event.timeoutAt },
131
+ event
132
+ };
133
+ case "child_workflow_completed": return {
134
+ kind: "child_workflow",
135
+ status: "completed",
136
+ timestamp: event.timestamp,
137
+ stepId: event.stepId,
138
+ stepName: event.stepName,
139
+ childRunId: event.childRunId,
140
+ result: event.result,
141
+ event
142
+ };
143
+ case "child_workflow_failed": return {
144
+ kind: "child_workflow",
145
+ status: "failed",
146
+ timestamp: event.timestamp,
147
+ stepId: event.stepId,
148
+ stepName: event.stepName,
149
+ childRunId: event.childRunId,
150
+ error: event.error,
151
+ event
152
+ };
153
+ case "message_send_started": return {
154
+ kind: "message",
155
+ status: "send_started",
156
+ timestamp: event.timestamp,
157
+ stepId: event.stepId,
158
+ stepName: event.stepName,
159
+ count: event.count,
160
+ targetRunId: event.targetRunId,
161
+ messageId: event.messageId,
162
+ ...event.payload === void 0 ? {} : { payload: event.payload },
163
+ event
164
+ };
165
+ case "message_send_completed": return {
166
+ kind: "message",
167
+ status: "send_completed",
168
+ timestamp: event.timestamp,
169
+ stepId: event.stepId,
170
+ stepName: event.stepName,
171
+ targetRunId: event.targetRunId,
172
+ messageId: event.messageId,
173
+ event
174
+ };
175
+ case "message_send_failed": return {
176
+ kind: "message",
177
+ status: "send_failed",
178
+ timestamp: event.timestamp,
179
+ stepId: event.stepId,
180
+ stepName: event.stepName,
181
+ targetRunId: event.targetRunId,
182
+ messageId: event.messageId,
183
+ error: event.error,
184
+ event
185
+ };
186
+ case "message_sent": return {
187
+ kind: "message",
188
+ status: "sent",
189
+ timestamp: event.timestamp,
190
+ messageId: event.messageId,
191
+ payload: event.payload,
192
+ waiterStepIds: event.waiterStepIds,
193
+ event
194
+ };
195
+ case "message_wait_started": return {
196
+ kind: "message",
197
+ status: "waiting",
198
+ timestamp: event.timestamp,
199
+ stepId: event.stepId,
200
+ stepName: event.stepName,
201
+ count: event.count,
202
+ messageId: event.messageId,
203
+ ...event.timeoutAt === void 0 ? {} : { timeoutAt: event.timeoutAt },
204
+ event
205
+ };
206
+ case "message_wait_completed": return {
207
+ kind: "message",
208
+ status: "received",
209
+ timestamp: event.timestamp,
210
+ stepId: event.stepId,
211
+ stepName: event.stepName,
212
+ messageId: event.messageId,
213
+ payload: event.payload,
214
+ messageTimestamp: event.messageTimestamp,
215
+ event
216
+ };
217
+ case "message_wait_failed": return {
218
+ kind: "message",
219
+ status: "failed",
220
+ timestamp: event.timestamp,
221
+ stepId: event.stepId,
222
+ stepName: event.stepName,
223
+ messageId: event.messageId,
224
+ error: event.error,
225
+ event
226
+ };
227
+ case "stream_started": return {
228
+ kind: "stream",
229
+ status: "started",
230
+ timestamp: event.timestamp,
231
+ stepId: event.stepId,
232
+ stepName: event.stepName,
233
+ count: event.count,
234
+ streamId: event.streamId,
235
+ ...event.contentType === void 0 ? {} : { contentType: event.contentType },
236
+ ...event.metadata === void 0 ? {} : { metadata: event.metadata },
237
+ event
238
+ };
239
+ case "stream_chunk": return {
240
+ kind: "stream",
241
+ status: "chunk",
242
+ timestamp: event.timestamp,
243
+ stepId: event.stepId,
244
+ stepName: event.stepName,
245
+ streamId: event.streamId,
246
+ index: event.index,
247
+ chunk: event.chunk,
248
+ event
249
+ };
250
+ case "stream_closed": return {
251
+ kind: "stream",
252
+ status: "closed",
253
+ timestamp: event.timestamp,
254
+ stepId: event.stepId,
255
+ stepName: event.stepName,
256
+ streamId: event.streamId,
257
+ event
258
+ };
259
+ case "stream_failed": return {
260
+ kind: "stream",
261
+ status: "failed",
262
+ timestamp: event.timestamp,
263
+ stepId: event.stepId,
264
+ stepName: event.stepName,
265
+ streamId: event.streamId,
266
+ error: event.error,
267
+ event
268
+ };
269
+ }
270
+ }
271
+ //#endregion
272
+ export { Timeline, createTimeline };
@@ -0,0 +1,9 @@
1
+ import { EventRecord } from "../types/events.mjs";
2
+ //#region src/history/validator.d.ts
3
+ declare function workflowStartedEventMatchesTerminalEvent(started: EventRecord, terminal: EventRecord): boolean;
4
+ declare function workflowHistoryHasStartedEventBeforeTerminalEvent(events: readonly EventRecord[], event: EventRecord): boolean;
5
+ declare function requireWorkflowTerminalEventsHaveStartedEvents(events: readonly EventRecord[]): void;
6
+ declare function requireWorkflowTerminalEventsAreUnique(events: readonly EventRecord[]): void;
7
+ declare function requireWorkflowStartedEventsAreUnique(events: readonly EventRecord[]): void;
8
+ //#endregion
9
+ export { requireWorkflowStartedEventsAreUnique, requireWorkflowTerminalEventsAreUnique, requireWorkflowTerminalEventsHaveStartedEvents, workflowHistoryHasStartedEventBeforeTerminalEvent, workflowStartedEventMatchesTerminalEvent };
@@ -0,0 +1,110 @@
1
+ import { WorkflowStateError } from "../errors/base.mjs";
2
+ import { WorkflowReplayDivergenceError } from "../errors/failures.mjs";
3
+ import "../errors/mod.mjs";
4
+ import { getEventDescriptor, getWorkflowEventStepAttempt, isWorkflowTerminalStepAttemptEvent } from "../events/descriptors.mjs";
5
+ import { isWorkflowRecordedStepEvent, workflowRecordedStepEventType } from "./sequencer.mjs";
6
+ //#region src/history/validator.ts
7
+ function workflowStartedEventMatchesTerminalEvent(started, terminal) {
8
+ const descriptor = getEventDescriptor(terminal.kind);
9
+ if (descriptor.terminalStepAttempt !== true || descriptor.startedEventType === void 0 || started.kind !== descriptor.startedEventType || !recordedAttemptFieldsMatch(started, terminal, descriptor.startedEventMatchFields)) return false;
10
+ return eventFieldsMatch(started, terminal, descriptor.startedEventMatchFields);
11
+ }
12
+ function workflowHistoryHasStartedEventBeforeTerminalEvent(events, event) {
13
+ const terminalIndex = events.indexOf(event);
14
+ if (terminalIndex < 0 || !isWorkflowTerminalStepAttemptEvent(event)) return false;
15
+ return events.slice(0, terminalIndex).some((started) => workflowStartedEventMatchesTerminalEvent(started, event));
16
+ }
17
+ function requireWorkflowTerminalEventsHaveStartedEvents(events) {
18
+ for (const event of events) {
19
+ if (!isWorkflowTerminalStepAttemptEvent(event) || workflowHistoryHasStartedEventBeforeTerminalEvent(events, event)) continue;
20
+ if (isStaleMessageWaitTerminalBeforeLaterStart(events, event)) continue;
21
+ const stepId = terminalStepEventId(event);
22
+ const type = terminalStepEventStepType(event);
23
+ WorkflowReplayDivergenceError.diverged(`recorded ${type} step ${stepId} has a terminal event without a started event`, {
24
+ expectedStepId: stepId,
25
+ actualStepId: stepId
26
+ });
27
+ }
28
+ }
29
+ function requireWorkflowTerminalEventsAreUnique(events) {
30
+ const terminals = /* @__PURE__ */ new Map();
31
+ for (const event of events) {
32
+ if (!isWorkflowTerminalStepAttemptEvent(event)) continue;
33
+ const key = getTerminalStepAttemptIdentityKey(event);
34
+ if (key === void 0) continue;
35
+ if (terminals.get(key) === void 0) {
36
+ terminals.set(key, event);
37
+ continue;
38
+ }
39
+ const stepId = terminalStepEventId(event);
40
+ const type = terminalStepEventStepType(event);
41
+ WorkflowReplayDivergenceError.diverged(`recorded ${type} step ${stepId} has multiple terminal events for attempt ${getTerminalStepEventAttempt(event)}`, {
42
+ expectedStepId: stepId,
43
+ actualStepId: stepId
44
+ });
45
+ }
46
+ }
47
+ function requireWorkflowStartedEventsAreUnique(events) {
48
+ const started = /* @__PURE__ */ new Map();
49
+ for (const event of events) {
50
+ if (!isWorkflowRecordedStepEvent(event)) continue;
51
+ const key = startedStepAttemptIdentityKey(event);
52
+ if (key === void 0) continue;
53
+ if (started.get(key) === void 0) {
54
+ started.set(key, event);
55
+ continue;
56
+ }
57
+ const type = workflowRecordedStepEventType(event);
58
+ WorkflowReplayDivergenceError.diverged(`recorded ${type} step ${event.stepId} has multiple started events for attempt ${getWorkflowEventStepAttempt(event)}`, {
59
+ expectedStepId: event.stepId,
60
+ actualStepId: event.stepId
61
+ });
62
+ }
63
+ }
64
+ function isValidRecordedAttempt(attempt) {
65
+ return typeof attempt === "number" && Number.isSafeInteger(attempt) && attempt > 0;
66
+ }
67
+ function recordedAttemptFieldsMatch(started, terminal, fields = []) {
68
+ if (!fields.includes("attempt")) return true;
69
+ return isValidRecordedAttempt(started.attempt) && isValidRecordedAttempt(terminal.attempt);
70
+ }
71
+ function eventFieldsMatch(left, right, fields = []) {
72
+ return fields.every((field) => getEventField(left, field) === getEventField(right, field));
73
+ }
74
+ function getEventField(event, field) {
75
+ return Reflect.get(event, field);
76
+ }
77
+ function terminalStepEventId(event) {
78
+ if (isWorkflowTerminalStepAttemptEvent(event)) return event.stepId;
79
+ WorkflowStateError.eventNotTerminalStep(event.kind);
80
+ }
81
+ function terminalStepEventStepType(event) {
82
+ const descriptor = getEventDescriptor(event.kind);
83
+ if (isWorkflowTerminalStepAttemptEvent(event) && descriptor.stepType !== void 0) return descriptor.stepType;
84
+ WorkflowStateError.eventNotTerminalStep(event.kind);
85
+ }
86
+ function getTerminalStepAttemptIdentityKey(event) {
87
+ const attempt = getTerminalStepEventAttempt(event);
88
+ if (!isValidRecordedAttempt(attempt)) return;
89
+ return `${terminalStepEventStepType(event)}:${terminalStepEventId(event)}:${attempt}`;
90
+ }
91
+ function getTerminalStepEventAttempt(event) {
92
+ if (isWorkflowTerminalStepAttemptEvent(event)) {
93
+ const attempt = getWorkflowEventStepAttempt(event);
94
+ if (attempt !== void 0) return attempt;
95
+ }
96
+ WorkflowStateError.eventNotTerminalStep(event.kind);
97
+ }
98
+ function startedStepAttemptIdentityKey(event) {
99
+ const attempt = getWorkflowEventStepAttempt(event);
100
+ if (!isValidRecordedAttempt(attempt)) return;
101
+ return `${workflowRecordedStepEventType(event)}:${event.stepId}:${attempt}`;
102
+ }
103
+ function isStaleMessageWaitTerminalBeforeLaterStart(events, event) {
104
+ if (event.kind !== "message_wait_completed" && event.kind !== "message_wait_failed") return false;
105
+ const terminalIndex = events.indexOf(event);
106
+ if (terminalIndex < 0) return false;
107
+ return events.slice(terminalIndex + 1).some((started) => started.kind === "message_wait_started" && started.stepId === event.stepId && started.stepName === event.stepName && started.messageId === event.messageId);
108
+ }
109
+ //#endregion
110
+ export { requireWorkflowStartedEventsAreUnique, requireWorkflowTerminalEventsAreUnique, requireWorkflowTerminalEventsHaveStartedEvents, workflowHistoryHasStartedEventBeforeTerminalEvent, workflowStartedEventMatchesTerminalEvent };
@@ -0,0 +1,5 @@
1
+ import { CleanupMarkerRecord, CleanupMode, CleanupRunResult, CleanupRunsOptions, CleanupRunsResult, CleanupStatusFilter, RetentionPolicyOptions, workflowCleanupMarkerRecordSchema, workflowCleanupModeSchema } from "../types/cleanup.mjs";
2
+ import { WorkflowRecoveryChildWorkflowWaitSummary, WorkflowRecoveryDueSummary, WorkflowRecoveryFailedSummary, WorkflowRecoveryLeaseSummary, WorkflowRecoveryLockSummary, WorkflowRecoveryMessageWaitSummary, WorkflowRecoveryMissingImplementationSummary, WorkflowRecoveryRetrySummary, WorkflowRecoveryScheduleSummary, WorkflowRecoverySleepWaitSummary, WorkflowRecoverySummary, WorkflowRecoverySummaryOptions, WorkflowRecoveryWaitSummary, WorkflowRunChildWorkflowSummary, WorkflowRunCleanupSummary, WorkflowRunFailureErrorSummary, WorkflowRunFailureSummary, WorkflowRunHookSummary, WorkflowRunLeaseSummary, WorkflowRunMessageSummary, WorkflowRunRetryReasonCounts, WorkflowRunRetrySummary, WorkflowRunSleepSummary, WorkflowRunStatusCounts, WorkflowRunStatusRunIds, WorkflowRunStreamSummary, WorkflowRunSummary, WorkflowRunSummaryOptions, WorkflowRunTransitionReasonCounts, WorkflowRunTransitionReasonRunIds, WorkflowRunTransitionSummary, WorkflowRunWorkflowCount, WorkflowRunWorkflowSummary, WorkflowTerminalRunStatusCounts, WorkflowTerminalRunStatusRunIds } from "../types/summary.mjs";
3
+ import { WorkflowActiveChildWorkflowSummary, WorkflowActiveMessageWaitSummary, WorkflowListStepAttemptsOptions, WorkflowStepAttemptFailureErrorSummary, WorkflowStepAttemptFailureSummary, WorkflowStepAttemptKindAttemptKeys, WorkflowStepAttemptKindCounts, WorkflowStepAttemptKindStepIds, WorkflowStepAttemptRecord, WorkflowStepAttemptStatus, WorkflowStepAttemptStatusAttemptKeys, WorkflowStepAttemptStatusCounts, WorkflowStepAttemptStatusStepIds, WorkflowStepAttemptSummary, workflowStepAttemptRecordSchema, workflowStepAttemptStatusSchema } from "../types/step-attempts.mjs";
4
+ import { Timeline, TimelineAttributesEntry, TimelineChildWorkflowEntry, TimelineChildWorkflowStatus, TimelineDeterministicEntry, TimelineEntry, TimelineEntryKind, TimelineEntryRecord, TimelineMessageEntry, TimelineMessageStatus, TimelineMetadataEntry, TimelineRecordedStatus, TimelineSetStatus, TimelineSleepEntry, TimelineSleepStatus, TimelineStepEntry, TimelineStepStatus, TimelineStreamEntry, TimelineStreamStatus, TimelineWorkflowEntry, TimelineWorkflowStatus } from "../types/timeline.mjs";
5
+ export { type CleanupMarkerRecord, type CleanupMode, type CleanupRunResult, type CleanupRunsOptions, type CleanupRunsResult, type CleanupStatusFilter, type RetentionPolicyOptions, type Timeline, type TimelineAttributesEntry, type TimelineChildWorkflowEntry, type TimelineChildWorkflowStatus, type TimelineDeterministicEntry, type TimelineEntry, type TimelineEntryKind, type TimelineEntryRecord, type TimelineMessageEntry, type TimelineMessageStatus, type TimelineMetadataEntry, type TimelineRecordedStatus, type TimelineSetStatus, type TimelineSleepEntry, type TimelineSleepStatus, type TimelineStepEntry, type TimelineStepStatus, type TimelineStreamEntry, type TimelineStreamStatus, type TimelineWorkflowEntry, type TimelineWorkflowStatus, type WorkflowActiveChildWorkflowSummary, type WorkflowActiveMessageWaitSummary, type WorkflowListStepAttemptsOptions, type WorkflowRecoveryChildWorkflowWaitSummary, type WorkflowRecoveryDueSummary, type WorkflowRecoveryFailedSummary, type WorkflowRecoveryLeaseSummary, type WorkflowRecoveryLockSummary, type WorkflowRecoveryMessageWaitSummary, type WorkflowRecoveryMissingImplementationSummary, type WorkflowRecoveryRetrySummary, type WorkflowRecoveryScheduleSummary, type WorkflowRecoverySleepWaitSummary, type WorkflowRecoverySummary, type WorkflowRecoverySummaryOptions, type WorkflowRecoveryWaitSummary, type WorkflowRunChildWorkflowSummary, type WorkflowRunCleanupSummary, type WorkflowRunFailureErrorSummary, type WorkflowRunFailureSummary, type WorkflowRunHookSummary, type WorkflowRunLeaseSummary, type WorkflowRunMessageSummary, type WorkflowRunRetryReasonCounts, type WorkflowRunRetrySummary, type WorkflowRunSleepSummary, type WorkflowRunStatusCounts, type WorkflowRunStatusRunIds, type WorkflowRunStreamSummary, type WorkflowRunSummary, type WorkflowRunSummaryOptions, type WorkflowRunTransitionReasonCounts, type WorkflowRunTransitionReasonRunIds, type WorkflowRunTransitionSummary, type WorkflowRunWorkflowCount, type WorkflowRunWorkflowSummary, type WorkflowStepAttemptFailureErrorSummary, type WorkflowStepAttemptFailureSummary, type WorkflowStepAttemptKindAttemptKeys, type WorkflowStepAttemptKindCounts, type WorkflowStepAttemptKindStepIds, type WorkflowStepAttemptRecord, type WorkflowStepAttemptStatus, type WorkflowStepAttemptStatusAttemptKeys, type WorkflowStepAttemptStatusCounts, type WorkflowStepAttemptStatusStepIds, type WorkflowStepAttemptSummary, type WorkflowTerminalRunStatusCounts, type WorkflowTerminalRunStatusRunIds, workflowCleanupMarkerRecordSchema, workflowCleanupModeSchema, workflowStepAttemptRecordSchema, workflowStepAttemptStatusSchema };
@@ -0,0 +1,3 @@
1
+ import { workflowCleanupMarkerRecordSchema, workflowCleanupModeSchema } from "../types/cleanup.mjs";
2
+ import { workflowStepAttemptRecordSchema, workflowStepAttemptStatusSchema } from "../types/step-attempts.mjs";
3
+ export { workflowCleanupMarkerRecordSchema, workflowCleanupModeSchema, workflowStepAttemptRecordSchema, workflowStepAttemptStatusSchema };
@@ -0,0 +1,8 @@
1
+ import { BroadcastMessageChannelOptions, BroadcastMessageInput, BroadcastMessageOptions, MessageChannel, SendMessageChannelOptions, SendMessageInput, SendMessageOptions, WaitForMessageChannelOptions, WaitForMessageInput, WaitForMessageOptions } from "./types/message.mjs";
2
+ import { Schema } from "@temelj/standard-schema";
3
+ //#region src/message-options.d.ts
4
+ declare function resolveSendMessageInput<TPayload, TKey>(messageInput: SendMessageInput | MessageChannel<TPayload, TKey>, channelOptions: SendMessageChannelOptions<TPayload, TKey> | undefined): Promise<SendMessageOptions>;
5
+ declare function resolveBroadcastMessageInput<TPayload, TKey>(messageInput: BroadcastMessageInput | MessageChannel<TPayload, TKey>, channelOptions: BroadcastMessageChannelOptions<TPayload, TKey> | undefined): Promise<BroadcastMessageOptions>;
6
+ declare function resolveWaitForMessageInput<TKey>(messageInput: WaitForMessageInput<Schema | undefined> | MessageChannel<unknown, TKey>, channelOptions: WaitForMessageChannelOptions<TKey> | undefined): WaitForMessageOptions<Schema | undefined>;
7
+ //#endregion
8
+ export { resolveBroadcastMessageInput, resolveSendMessageInput, resolveWaitForMessageInput };
@@ -0,0 +1,25 @@
1
+ import { resolveMessageChannelSend, resolveMessageChannelWait } from "./definition.mjs";
2
+ //#region src/message-options.ts
3
+ async function resolveSendMessageInput(messageInput, channelOptions) {
4
+ if ("messageId" in messageInput) return messageInput;
5
+ if ("channel" in messageInput) return await resolveMessageChannelSend(messageInput.channel, messageInput);
6
+ return await resolveMessageChannelSend(messageInput, channelOptions);
7
+ }
8
+ async function resolveBroadcastMessageInput(messageInput, channelOptions) {
9
+ if ("messageId" in messageInput) return messageInput;
10
+ if ("channel" in messageInput) return {
11
+ ...await resolveMessageChannelSend(messageInput.channel, messageInput),
12
+ ...messageInput.target === void 0 ? {} : { target: messageInput.target }
13
+ };
14
+ return {
15
+ ...await resolveMessageChannelSend(messageInput, channelOptions),
16
+ ...channelOptions?.target === void 0 ? {} : { target: channelOptions.target }
17
+ };
18
+ }
19
+ function resolveWaitForMessageInput(messageInput, channelOptions) {
20
+ if ("channel" in messageInput) return resolveMessageChannelWait(messageInput.channel, messageInput);
21
+ if ("messageId" in messageInput) return messageInput;
22
+ return resolveMessageChannelWait(messageInput, channelOptions);
23
+ }
24
+ //#endregion
25
+ export { resolveBroadcastMessageInput, resolveSendMessageInput, resolveWaitForMessageInput };
package/dist/mod.d.mts ADDED
@@ -0,0 +1,52 @@
1
+ import { WorkflowErrorCode, workflowErrorCodeSchema } from "./types/error-code.mjs";
2
+ import { MessageId } from "./types/message-id.mjs";
3
+ import { RunId } from "./types/run-id.mjs";
4
+ import { StepId } from "./types/step-id.mjs";
5
+ import { CleanupMarkerRecord, CleanupMode, CleanupRunResult, CleanupRunsOptions, CleanupRunsResult, CleanupStatusFilter, RetentionPolicyOptions, workflowCleanupMarkerRecordSchema, workflowCleanupModeSchema } from "./types/cleanup.mjs";
6
+ import { Cursor, CursorKeyPart, CursorPayload, PageDirection, PageOptions, WorkflowPage, workflowCursorKeyPartSchema, workflowCursorPayloadSchema, workflowCursorSchema, workflowPageDirectionSchema } from "./types/pagination.mjs";
7
+ import { ListSchedulesOptions, ListSchedulesPageOptions, ScheduleCatchUpPolicy, ScheduleConfig, ScheduleId, ScheduleOverlapPolicy, ScheduleRecord, ScheduleStatus, TickSchedulesOptions, TickSchedulesResult, scheduleIdSchema, workflowScheduleCatchUpPolicySchema, workflowScheduleOverlapPolicySchema, workflowSchedulePositiveDurationSchema, workflowScheduleRecordSchema, workflowScheduleStatusSchema } from "./types/schedule.mjs";
8
+ import { WorkflowMissingImplementationRetryConfig, WorkflowRetryConfig, WorkflowStepRetryConfig } from "./types/retry.mjs";
9
+ import { Registry, RegistryLike, WorkflowContext, WorkflowDefinition, WorkflowDefinitionConfig, WorkflowDefinitionTypes, WorkflowHandler, WorkflowImplementation, WorkflowInputFromSchema, WorkflowRawInputFromSchema, WorkflowRunContext, WorkflowStartTarget } from "./types/definition.mjs";
10
+ import { CreateHookOptions, CreateWebhookOptions, Hook, HookCreator, HookInspection, HookInspectionStatus, HookKind, HookToken, HookTokenPayload, ParsedWorkflowHookToken, ParsedWorkflowWebhookToken, ResumeHookOptions, ResumeWebhookOptions, Webhook, WebhookCreator, WorkflowStepHookCreateApi } from "./types/hook.mjs";
11
+ import { AcquireLockOptions, LockRecord, ReleaseLockOptions, ReleaseStaleLockOptions, WorkflowStepAcquireLockOptions, WorkflowStepReleaseLockOptions, workflowLockRecordSchema } from "./types/lock.mjs";
12
+ import { WorkflowListRunsOptions, WorkflowListRunsPageOptions, WorkflowListStepAttemptsPageOptions } from "./types/run-list.mjs";
13
+ import { BroadcastMessageChannelObject, BroadcastMessageChannelOptions, BroadcastMessageInput, BroadcastMessageOptions, BroadcastMessageResult, MessageChannel, MessageChannelConfig, MessageChannelKeyArgs, MessageChannelTypes, SendMessageChannelObject, SendMessageChannelOptions, SendMessageInput, SendMessageOptions, WaitForMessageChannelObject, WaitForMessageChannelOptions, WaitForMessageInput, WaitForMessageOptions } from "./types/message.mjs";
14
+ import { CreateStreamOptions, FollowStreamOptions, ReadStreamOptions, ReadStreamPageOptions, Stream, StreamChunk, StreamChunkUpdate, StreamInfo, StreamPage, StreamState, StreamStatus, StreamTerminalUpdate, StreamUpdate, StreamUpdateBase, StreamUpdateKind, WaitStreamOptions } from "./types/stream.mjs";
15
+ import { WorkflowChildWorkflowCancellationPolicy, WorkflowDeterministicApi, WorkflowStepApi, WorkflowStepContext, WorkflowStepDefinition, WorkflowStepDefinitionHandler, WorkflowStepDefinitionTypes, WorkflowStepDeterministicApi, WorkflowStepHookApi, WorkflowStepLockApi, WorkflowStepMessageApi, WorkflowStepMetadata, WorkflowStepRunConfig, WorkflowStepRunDataApi, WorkflowStepRunWorkflowOptions, WorkflowStepStartWorkflowOptions, WorkflowStepStreamApi, WorkflowStepTaskApi, WorkflowStepWorkflowApi, workflowChildWorkflowCancellationPolicySchema } from "./types/step.mjs";
16
+ import { WorkflowRecoveryChildWorkflowWaitSummary, WorkflowRecoveryDueSummary, WorkflowRecoveryFailedSummary, WorkflowRecoveryLeaseSummary, WorkflowRecoveryLockSummary, WorkflowRecoveryMessageWaitSummary, WorkflowRecoveryMissingImplementationSummary, WorkflowRecoveryRetrySummary, WorkflowRecoveryScheduleSummary, WorkflowRecoverySleepWaitSummary, WorkflowRecoverySummary, WorkflowRecoverySummaryOptions, WorkflowRecoveryWaitSummary, WorkflowRunChildWorkflowSummary, WorkflowRunCleanupSummary, WorkflowRunFailureErrorSummary, WorkflowRunFailureSummary, WorkflowRunHookSummary, WorkflowRunLeaseSummary, WorkflowRunMessageSummary, WorkflowRunRetryReasonCounts, WorkflowRunRetrySummary, WorkflowRunSleepSummary, WorkflowRunStatusCounts, WorkflowRunStatusRunIds, WorkflowRunStreamSummary, WorkflowRunSummary, WorkflowRunSummaryOptions, WorkflowRunTransitionReasonCounts, WorkflowRunTransitionReasonRunIds, WorkflowRunTransitionSummary, WorkflowRunWorkflowCount, WorkflowRunWorkflowSummary, WorkflowTerminalRunStatusCounts, WorkflowTerminalRunStatusRunIds } from "./types/summary.mjs";
17
+ import { WorkflowActiveChildWorkflowSummary, WorkflowActiveMessageWaitSummary, WorkflowListStepAttemptsOptions, WorkflowStepAttemptFailureErrorSummary, WorkflowStepAttemptFailureSummary, WorkflowStepAttemptKindAttemptKeys, WorkflowStepAttemptKindCounts, WorkflowStepAttemptKindStepIds, WorkflowStepAttemptRecord, WorkflowStepAttemptStatus, WorkflowStepAttemptStatusAttemptKeys, WorkflowStepAttemptStatusCounts, WorkflowStepAttemptStatusStepIds, WorkflowStepAttemptSummary, workflowStepAttemptRecordSchema, workflowStepAttemptStatusSchema } from "./types/step-attempts.mjs";
18
+ import { ChildWorkflowStartedObservationEvent, CleanupObservationEvent, DurableEventObservationEvent, MessageObservationEvent, ObservationEmitter, ObservationEventHandler, ObservationEventMap, ObservationEventPattern, ObservationUnsubscribe, ResumeObservationEvent, RunObservationEvent, ScheduleRunCreatedObservationEvent, ScheduleTickObservationEvent, StepAttemptObservationEvent, StreamObservationEvent, WorkerOperationObservationEvent } from "./types/observation.mjs";
19
+ import { Timeline, TimelineAttributesEntry, TimelineChildWorkflowEntry, TimelineChildWorkflowStatus, TimelineDeterministicEntry, TimelineEntry, TimelineEntryKind, TimelineEntryRecord, TimelineMessageEntry, TimelineMessageStatus, TimelineMetadataEntry, TimelineRecordedStatus, TimelineSetStatus, TimelineSleepEntry, TimelineSleepStatus, TimelineStepEntry, TimelineStepStatus, TimelineStreamEntry, TimelineStreamStatus, TimelineWorkflowEntry, TimelineWorkflowStatus } from "./types/timeline.mjs";
20
+ import { CompletedResult, ExecutionResult, ExecutionResultBase, ExecutionResultKind, FailedResult, HandleOperations, ResultOptions, WaitingResult, WorkflowHandle } from "./types/result.mjs";
21
+ import { RunTelemetryContext, RunTelemetryResultContext, StepTelemetryContext, StepTelemetryResultContext, StorageTelemetryContext, StorageTelemetryOperation, Telemetry, TelemetryContext, TelemetryEngine, workflowTelemetryContextSchema } from "./types/telemetry.mjs";
22
+ import { WORKFLOW_ATTRIBUTE_MAX_COUNT, WORKFLOW_ATTRIBUTE_MAX_KEY_LENGTH, WORKFLOW_ATTRIBUTE_MAX_VALUE_BYTES, WORKFLOW_ATTRIBUTE_RESERVED_PREFIX, WorkflowAttributePatch, WorkflowAttributeValue, WorkflowLifecycleCallback, WorkflowLifecycleEvent, WorkflowMaterializedStepType, WorkflowRunAttributes, WorkflowRunRecord, WorkflowRunRetryReason, WorkflowRunStatus, WorkflowRunTransitionReason, WorkflowRunWorkflowName, WorkflowRunWorkflowVersion, WorkflowStepIdentity, WorkflowStepType, WorkflowTerminalRunStatus, WorkflowValueIssue, persistedValueIssue, workflowAttributeKeySchema, workflowAttributePatchSchema, workflowAttributePrimitiveValueSchema, workflowAttributeValueSchema, workflowMaterializedStepTypeSchema, workflowPersistedValueSchema, workflowRunAttributesSchema, workflowRunRecordSchema, workflowRunRetryReasonSchema, workflowRunStatusSchema, workflowRunTransitionReasonSchema, workflowStepTypeSchema, workflowTerminalRunStatusSchema } from "./types/run.mjs";
23
+ import { WorkflowErrorOptions, WorkflowErrorRecord, WorkflowNonRetryableErrorOptions, WorkflowRetryableErrorOptions, workflowErrorRecordSchema } from "./types/error.mjs";
24
+ import { AttributesSetEvent, ChildWorkflowCompletedEvent, ChildWorkflowEventKind, ChildWorkflowFailedEvent, ChildWorkflowStartedEvent, DataEventKind, DeterministicEventKind, DeterministicValueRecordedEvent, EventDescriptor, EventDescriptorCategory, EventDescriptorStepAttempt, EventKind, EventRecord, MessageEventKind, MessageSendCompletedEvent, MessageSendFailedEvent, MessageSendStartedEvent, MessageSentEvent, MessageSentPayload, MessageWaitCompletedEvent, MessageWaitFailedEvent, MessageWaitSource, MessageWaitStartedEvent, MetadataSetEvent, SleepCompletedEvent, SleepEventKind, SleepStartedEvent, StreamChunkEvent, StreamClosedEvent, StreamEventKind, StreamFailedError, StreamFailedEvent, StreamStartedEvent, WorkflowEvent, WorkflowRunEvent, WorkflowRunEventKind, WorkflowStepCompletedEvent, WorkflowStepEventKind, WorkflowStepFailedEvent, WorkflowStepStartedEvent, workflowAttributesSetEventSchema, workflowChildWorkflowCompletedEventSchema, workflowChildWorkflowEventKindSchema, workflowChildWorkflowFailedEventSchema, workflowChildWorkflowStartedEventSchema, workflowCompletedEventSchema, workflowDataEventKindSchema, workflowDeterministicEventKindSchema, workflowDeterministicValueRecordedEventSchema, workflowEventKindSchema, workflowEventRecordListSchema, workflowEventRecordSchema, workflowFailedEventSchema, workflowMessageEventKindSchema, workflowMessageSendCompletedEventSchema, workflowMessageSendFailedEventSchema, workflowMessageSendStartedEventSchema, workflowMessageSentEventSchema, workflowMessageWaitCompletedEventSchema, workflowMessageWaitFailedEventSchema, workflowMessageWaitSourceSchema, workflowMessageWaitStartedEventSchema, workflowMessageWaiterStepIdsSchema, workflowMetadataSetEventSchema, workflowRunEventKindSchema, workflowSleepCompletedEventSchema, workflowSleepEventKindSchema, workflowSleepStartedEventSchema, workflowStartedEventSchema, workflowStepCompletedEventSchema, workflowStepEventKindSchema, workflowStepFailedEventSchema, workflowStepStartedEventSchema, workflowStreamChunkEventSchema, workflowStreamClosedEventSchema, workflowStreamEventKindSchema, workflowStreamFailedEventSchema, workflowStreamStartedEventSchema } from "./types/events.mjs";
25
+ import { ScheduleNextOptions, WorkflowBatchStartItem, WorkflowMarkRunPermanentlyFailedOptions, WorkflowReleaseStaleLeaseOptions, WorkflowRerunOptions, WorkflowRescheduleRunOptions, WorkflowRetryFailedRunOptions, WorkflowRunArguments, WorkflowRunParentOptions, WorkflowStartOptions, WorkflowVersionResolver } from "./types/run-options.mjs";
26
+ import { CreateWorkflowEngineOptions, WorkflowDeterministicBytesContext, WorkflowDeterministicValueContext, WorkflowEngineSerializationLimits, WorkflowExecutionLimits, WorkflowRecordedIdContext } from "./types/engine-options.mjs";
27
+ import { CreateWorkflowWorkerOptions, WorkflowWakeDueRunsOptions, WorkflowWorker, WorkflowWorkerLeaseOptions, WorkflowWorkerRunFilterOptions, WorkflowWorkerRunOptions, WorkflowWorkerRunResult } from "./types/worker.mjs";
28
+ import { CompiledWorkflowFunction, WorkflowClient, WorkflowClientAdminApi, WorkflowClientHooksApi, WorkflowClientLocksApi, WorkflowClientMessagesApi, WorkflowClientProcessRunOptions, WorkflowClientRunsApi, WorkflowClientSchedulesApi, WorkflowClientStreamsApi, WorkflowClientWorkerOptions, WorkflowClientWorkersApi, WorkflowRunHandle, WorkflowRunnable } from "./types/client.mjs";
29
+ import { CreateWorkflowClientOptions, createWorkflowClient } from "./client/create.mjs";
30
+ import "./client/mod.mjs";
31
+ import { defineMessageChannel, defineWorkflow, implementWorkflow } from "./definition.mjs";
32
+ import { WorkflowError, WorkflowMessageError, WorkflowOptionsError, WorkflowRunError, WorkflowStateError, WorkflowStepError } from "./errors/base.mjs";
33
+ import { WorkflowCapabilityError } from "./errors/capability.mjs";
34
+ import { WorkflowDefinitionError } from "./errors/definition.mjs";
35
+ import { WorkflowDurationError, WorkflowNonRetryableError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowRetryableError, WorkflowSerializationError } from "./errors/failures.mjs";
36
+ import { WorkflowHookError } from "./errors/hook.mjs";
37
+ import { WorkflowImplementationNotFoundError } from "./errors/implementation.mjs";
38
+ import { WorkflowLockError, WorkflowLockStateError } from "./errors/lock.mjs";
39
+ import { WorkflowHookDisposedError, WorkflowMessageDeliveryError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError } from "./errors/message.mjs";
40
+ import { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError } from "./errors/run.mjs";
41
+ import { WorkflowRuntimeError } from "./errors/runtime.mjs";
42
+ import { WorkflowScheduleAlreadyExistsError, WorkflowScheduleError } from "./errors/schedule.mjs";
43
+ import { WorkflowStepAttemptLimitError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError } from "./errors/step.mjs";
44
+ import { WorkflowStreamError, WorkflowStreamNotFoundError } from "./errors/stream.mjs";
45
+ import { workflowErrorRecordView } from "./errors/record-view.mjs";
46
+ import "./errors/mod.mjs";
47
+ import { attachWorkflowDefinition, attachWorkflowStepDefinition, callWorkflowStepFunction, getCompiledWorkflowDefinition, getCompiledWorkflowStepDefinition, getWorkflowFunctionDefinition, getWorkflowStepFunctionDefinition, registerWorkflowFunctions, runWorkflowFunction } from "./compiled-function.mjs";
48
+ import { CreateWorkflowRuntimeOptions, WorkflowRuntimeLocksApi, WorkflowRuntimeRunsApi, WorkflowRuntimeSchedulesApi, parseWorkflowRuntime, workflowRuntimeSchema } from "./types/runtime.mjs";
49
+ import { WorkflowRuntime, createWorkflowRuntime, getWorkflowRuntimeRun, startWorkflowRuntimeRun } from "./runtime.mjs";
50
+ import { defineWorkflowStep } from "./step-definition.mjs";
51
+ import { WebhookResumer, parseWebhookToken, resumeWebhook } from "./webhook.mjs";
52
+ export { type AcquireLockOptions, type AttributesSetEvent, type BroadcastMessageChannelObject, type BroadcastMessageChannelOptions, type BroadcastMessageInput, type BroadcastMessageOptions, type BroadcastMessageResult, type ChildWorkflowCompletedEvent, type ChildWorkflowEventKind, type ChildWorkflowFailedEvent, type ChildWorkflowStartedEvent, type ChildWorkflowStartedObservationEvent, type CleanupMarkerRecord, type CleanupMode, type CleanupObservationEvent, type CleanupRunResult, type CleanupRunsOptions, type CleanupRunsResult, type CleanupStatusFilter, type CompiledWorkflowFunction, type CompletedResult, type CreateHookOptions, type CreateStreamOptions, type CreateWebhookOptions, type CreateWorkflowClientOptions, type CreateWorkflowEngineOptions, type CreateWorkflowRuntimeOptions, type CreateWorkflowWorkerOptions, type Cursor, type CursorKeyPart, type CursorPayload, type DataEventKind, type DeterministicEventKind, type DeterministicValueRecordedEvent, type DurableEventObservationEvent, type EventDescriptor, type EventDescriptorCategory, type EventDescriptorStepAttempt, type EventKind, type EventRecord, type ExecutionResult, type ExecutionResultBase, type ExecutionResultKind, type FailedResult, type FollowStreamOptions, type HandleOperations, type Hook, type HookCreator, type HookInspection, type HookInspectionStatus, type HookKind, type HookToken, type HookTokenPayload, type ListSchedulesOptions, type ListSchedulesPageOptions, type LockRecord, type MessageChannel, type MessageChannelConfig, type MessageChannelKeyArgs, type MessageChannelTypes, type MessageEventKind, type MessageId, type MessageObservationEvent, type MessageSendCompletedEvent, type MessageSendFailedEvent, type MessageSendStartedEvent, type MessageSentEvent, type MessageSentPayload, type MessageWaitCompletedEvent, type MessageWaitFailedEvent, type MessageWaitSource, type MessageWaitStartedEvent, type MetadataSetEvent, type ObservationEmitter, type ObservationEventHandler, type ObservationEventMap, type ObservationEventPattern, type ObservationUnsubscribe, type PageDirection, type PageOptions, type ParsedWorkflowHookToken, type ParsedWorkflowWebhookToken, type ReadStreamOptions, type ReadStreamPageOptions, type Registry, type RegistryLike, type ReleaseLockOptions, type ReleaseStaleLockOptions, type ResultOptions, type ResumeHookOptions, type ResumeObservationEvent, type ResumeWebhookOptions, type RetentionPolicyOptions, type RunId, type RunObservationEvent, type RunTelemetryContext, type RunTelemetryResultContext, type ScheduleCatchUpPolicy, type ScheduleConfig, type ScheduleId, type ScheduleNextOptions, type ScheduleOverlapPolicy, type ScheduleRecord, type ScheduleRunCreatedObservationEvent, type ScheduleStatus, type ScheduleTickObservationEvent, type SendMessageChannelObject, type SendMessageChannelOptions, type SendMessageInput, type SendMessageOptions, type SleepCompletedEvent, type SleepEventKind, type SleepStartedEvent, type StepAttemptObservationEvent, type StepId, type StepTelemetryContext, type StepTelemetryResultContext, type StorageTelemetryContext, type StorageTelemetryOperation, type Stream, type StreamChunk, type StreamChunkEvent, type StreamChunkUpdate, type StreamClosedEvent, type StreamEventKind, type StreamFailedError, type StreamFailedEvent, type StreamInfo, type StreamObservationEvent, type StreamPage, type StreamStartedEvent, type StreamState, type StreamStatus, type StreamTerminalUpdate, type StreamUpdate, type StreamUpdateBase, type StreamUpdateKind, type Telemetry, type TelemetryContext, type TelemetryEngine, type TickSchedulesOptions, type TickSchedulesResult, type Timeline, type TimelineAttributesEntry, type TimelineChildWorkflowEntry, type TimelineChildWorkflowStatus, type TimelineDeterministicEntry, type TimelineEntry, type TimelineEntryKind, type TimelineEntryRecord, type TimelineMessageEntry, type TimelineMessageStatus, type TimelineMetadataEntry, type TimelineRecordedStatus, type TimelineSetStatus, type TimelineSleepEntry, type TimelineSleepStatus, type TimelineStepEntry, type TimelineStepStatus, type TimelineStreamEntry, type TimelineStreamStatus, type TimelineWorkflowEntry, type TimelineWorkflowStatus, type WORKFLOW_ATTRIBUTE_MAX_COUNT, type WORKFLOW_ATTRIBUTE_MAX_KEY_LENGTH, type WORKFLOW_ATTRIBUTE_MAX_VALUE_BYTES, type WORKFLOW_ATTRIBUTE_RESERVED_PREFIX, type WaitForMessageChannelObject, type WaitForMessageChannelOptions, type WaitForMessageInput, type WaitForMessageOptions, type WaitStreamOptions, type WaitingResult, type Webhook, type WebhookCreator, WebhookResumer, type WorkerOperationObservationEvent, type WorkflowActiveChildWorkflowSummary, type WorkflowActiveMessageWaitSummary, type WorkflowAttributePatch, type WorkflowAttributeValue, type WorkflowBatchStartItem, WorkflowCapabilityError, type WorkflowChildWorkflowCancellationPolicy, WorkflowChildWorkflowTimeoutError, type WorkflowClient, type WorkflowClientAdminApi, type WorkflowClientHooksApi, type WorkflowClientLocksApi, type WorkflowClientMessagesApi, type WorkflowClientProcessRunOptions, type WorkflowClientRunsApi, type WorkflowClientSchedulesApi, type WorkflowClientStreamsApi, type WorkflowClientWorkerOptions, type WorkflowClientWorkersApi, type WorkflowContext, type WorkflowDefinition, type WorkflowDefinitionConfig, WorkflowDefinitionError, type WorkflowDefinitionTypes, type WorkflowDeterministicApi, type WorkflowDeterministicBytesContext, type WorkflowDeterministicValueContext, WorkflowDurationError, type WorkflowEngineSerializationLimits, WorkflowError, WorkflowErrorCode, type WorkflowErrorCode as WorkflowErrorCodeType, type WorkflowErrorOptions, type WorkflowErrorRecord, type WorkflowEvent, type WorkflowExecutionLimits, type WorkflowHandle, type WorkflowHandler, WorkflowHookDisposedError, WorkflowHookError, type WorkflowImplementation, WorkflowImplementationNotFoundError, type WorkflowInputFromSchema, type WorkflowLifecycleCallback, type WorkflowLifecycleEvent, type WorkflowListRunsOptions, type WorkflowListRunsPageOptions, type WorkflowListStepAttemptsOptions, type WorkflowListStepAttemptsPageOptions, WorkflowLockError, WorkflowLockStateError, type WorkflowMarkRunPermanentlyFailedOptions, type WorkflowMaterializedStepType, WorkflowMessageDeliveryError, WorkflowMessageError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError, type WorkflowMissingImplementationRetryConfig, WorkflowNonRetryableError, type WorkflowNonRetryableErrorOptions, WorkflowOptionsError, type WorkflowPage, WorkflowPermanentFailureError, type WorkflowRawInputFromSchema, type WorkflowRecordedIdContext, type WorkflowRecoveryChildWorkflowWaitSummary, type WorkflowRecoveryDueSummary, type WorkflowRecoveryFailedSummary, type WorkflowRecoveryLeaseSummary, type WorkflowRecoveryLockSummary, type WorkflowRecoveryMessageWaitSummary, type WorkflowRecoveryMissingImplementationSummary, type WorkflowRecoveryRetrySummary, type WorkflowRecoveryScheduleSummary, type WorkflowRecoverySleepWaitSummary, type WorkflowRecoverySummary, type WorkflowRecoverySummaryOptions, type WorkflowRecoveryWaitSummary, type WorkflowReleaseStaleLeaseOptions, WorkflowReplayDivergenceError, type WorkflowRerunOptions, type WorkflowRescheduleRunOptions, WorkflowResultTimeoutError, type WorkflowRetryConfig, type WorkflowRetryFailedRunOptions, WorkflowRetryableError, type WorkflowRetryableErrorOptions, type WorkflowRunArguments, type WorkflowRunAttributes, WorkflowRunCanceledError, WorkflowRunCancellationError, type WorkflowRunChildWorkflowSummary, type WorkflowRunCleanupSummary, type WorkflowRunContext, WorkflowRunDeadlineExceededError, WorkflowRunError, type WorkflowRunEvent, type WorkflowRunEventKind, type WorkflowRunFailureErrorSummary, type WorkflowRunFailureSummary, type WorkflowRunHandle, type WorkflowRunHookSummary, WorkflowRunInvalidError, type WorkflowRunLeaseSummary, type WorkflowRunMessageSummary, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, type WorkflowRunParentOptions, type WorkflowRunRecord, type WorkflowRunRetryReason, type WorkflowRunRetryReasonCounts, type WorkflowRunRetrySummary, type WorkflowRunSleepSummary, type WorkflowRunStatus, type WorkflowRunStatusCounts, type WorkflowRunStatusRunIds, type WorkflowRunStreamSummary, type WorkflowRunSummary, type WorkflowRunSummaryOptions, WorkflowRunTransitionError, type WorkflowRunTransitionReason, type WorkflowRunTransitionReasonCounts, type WorkflowRunTransitionReasonRunIds, type WorkflowRunTransitionSummary, type WorkflowRunWorkflowCount, type WorkflowRunWorkflowName, type WorkflowRunWorkflowSummary, type WorkflowRunWorkflowVersion, type WorkflowRunnable, WorkflowRuntime, WorkflowRuntimeError, type WorkflowRuntimeLocksApi, type WorkflowRuntimeRunsApi, type WorkflowRuntimeSchedulesApi, WorkflowScheduleAlreadyExistsError, WorkflowScheduleError, WorkflowSerializationError, type WorkflowStartOptions, type WorkflowStartTarget, WorkflowStateError, type WorkflowStepAcquireLockOptions, type WorkflowStepApi, type WorkflowStepAttemptFailureErrorSummary, type WorkflowStepAttemptFailureSummary, type WorkflowStepAttemptKindAttemptKeys, type WorkflowStepAttemptKindCounts, type WorkflowStepAttemptKindStepIds, WorkflowStepAttemptLimitError, type WorkflowStepAttemptRecord, type WorkflowStepAttemptStatus, type WorkflowStepAttemptStatusAttemptKeys, type WorkflowStepAttemptStatusCounts, type WorkflowStepAttemptStatusStepIds, type WorkflowStepAttemptSummary, type WorkflowStepCompletedEvent, type WorkflowStepContext, type WorkflowStepDefinition, type WorkflowStepDefinitionHandler, type WorkflowStepDefinitionTypes, type WorkflowStepDeterministicApi, WorkflowStepError, type WorkflowStepEventKind, WorkflowStepExecutionError, type WorkflowStepFailedEvent, type WorkflowStepHookApi, type WorkflowStepHookCreateApi, type WorkflowStepIdentity, type WorkflowStepLockApi, type WorkflowStepMessageApi, type WorkflowStepMetadata, type WorkflowStepReleaseLockOptions, type WorkflowStepRetryConfig, WorkflowStepRetryLimitError, type WorkflowStepRunConfig, type WorkflowStepRunDataApi, type WorkflowStepRunWorkflowOptions, type WorkflowStepStartWorkflowOptions, type WorkflowStepStartedEvent, type WorkflowStepStreamApi, type WorkflowStepTaskApi, WorkflowStepTimeoutError, type WorkflowStepType, type WorkflowStepWorkflowApi, WorkflowStreamError, WorkflowStreamNotFoundError, type WorkflowTerminalRunStatus, type WorkflowTerminalRunStatusCounts, type WorkflowTerminalRunStatusRunIds, type WorkflowValueIssue, type WorkflowVersionResolver, type WorkflowWakeDueRunsOptions, type WorkflowWorker, type WorkflowWorkerLeaseOptions, type WorkflowWorkerRunFilterOptions, type WorkflowWorkerRunOptions, type WorkflowWorkerRunResult, attachWorkflowDefinition, attachWorkflowStepDefinition, callWorkflowStepFunction, createWorkflowClient, createWorkflowRuntime, defineMessageChannel, defineWorkflow, defineWorkflowStep, getCompiledWorkflowDefinition, getCompiledWorkflowStepDefinition, getWorkflowFunctionDefinition, getWorkflowRuntimeRun, getWorkflowStepFunctionDefinition, implementWorkflow, parseWebhookToken, parseWorkflowRuntime, type persistedValueIssue, registerWorkflowFunctions, resumeWebhook, runWorkflowFunction, type scheduleIdSchema, startWorkflowRuntimeRun, type workflowAttributeKeySchema, type workflowAttributePatchSchema, type workflowAttributePrimitiveValueSchema, type workflowAttributeValueSchema, type workflowAttributesSetEventSchema, type workflowChildWorkflowCancellationPolicySchema, type workflowChildWorkflowCompletedEventSchema, type workflowChildWorkflowEventKindSchema, type workflowChildWorkflowFailedEventSchema, type workflowChildWorkflowStartedEventSchema, type workflowCleanupMarkerRecordSchema, type workflowCleanupModeSchema, type workflowCompletedEventSchema, type workflowCursorKeyPartSchema, type workflowCursorPayloadSchema, type workflowCursorSchema, type workflowDataEventKindSchema, type workflowDeterministicEventKindSchema, type workflowDeterministicValueRecordedEventSchema, workflowErrorCodeSchema, workflowErrorRecordSchema, workflowErrorRecordView, type workflowEventKindSchema, type workflowEventRecordListSchema, type workflowEventRecordSchema, type workflowFailedEventSchema, type workflowLockRecordSchema, type workflowMaterializedStepTypeSchema, type workflowMessageEventKindSchema, type workflowMessageSendCompletedEventSchema, type workflowMessageSendFailedEventSchema, type workflowMessageSendStartedEventSchema, type workflowMessageSentEventSchema, type workflowMessageWaitCompletedEventSchema, type workflowMessageWaitFailedEventSchema, type workflowMessageWaitSourceSchema, type workflowMessageWaitStartedEventSchema, type workflowMessageWaiterStepIdsSchema, type workflowMetadataSetEventSchema, type workflowPageDirectionSchema, type workflowPersistedValueSchema, type workflowRunAttributesSchema, type workflowRunEventKindSchema, type workflowRunRecordSchema, type workflowRunRetryReasonSchema, type workflowRunStatusSchema, type workflowRunTransitionReasonSchema, workflowRuntimeSchema, type workflowScheduleCatchUpPolicySchema, type workflowScheduleOverlapPolicySchema, type workflowSchedulePositiveDurationSchema, type workflowScheduleRecordSchema, type workflowScheduleStatusSchema, type workflowSleepCompletedEventSchema, type workflowSleepEventKindSchema, type workflowSleepStartedEventSchema, type workflowStartedEventSchema, type workflowStepAttemptRecordSchema, type workflowStepAttemptStatusSchema, type workflowStepCompletedEventSchema, type workflowStepEventKindSchema, type workflowStepFailedEventSchema, type workflowStepStartedEventSchema, type workflowStepTypeSchema, type workflowStreamChunkEventSchema, type workflowStreamClosedEventSchema, type workflowStreamEventKindSchema, type workflowStreamFailedEventSchema, type workflowStreamStartedEventSchema, type workflowTelemetryContextSchema, type workflowTerminalRunStatusSchema };
package/dist/mod.mjs ADDED
@@ -0,0 +1,26 @@
1
+ import { WorkflowErrorCode, workflowErrorCodeSchema } from "./types/error-code.mjs";
2
+ import { WorkflowError, WorkflowMessageError, WorkflowOptionsError, WorkflowRunError, WorkflowStateError, WorkflowStepError } from "./errors/base.mjs";
3
+ import { workflowErrorRecordView } from "./errors/record-view.mjs";
4
+ import { WorkflowDurationError, WorkflowNonRetryableError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowRetryableError, WorkflowSerializationError } from "./errors/failures.mjs";
5
+ import { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError } from "./errors/run.mjs";
6
+ import { workflowErrorRecordSchema } from "./types/error.mjs";
7
+ import { WorkflowCapabilityError } from "./errors/capability.mjs";
8
+ import { WorkflowDefinitionError } from "./errors/definition.mjs";
9
+ import { WorkflowHookError } from "./errors/hook.mjs";
10
+ import { WorkflowImplementationNotFoundError } from "./errors/implementation.mjs";
11
+ import { WorkflowLockError, WorkflowLockStateError } from "./errors/lock.mjs";
12
+ import { WorkflowHookDisposedError, WorkflowMessageDeliveryError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError } from "./errors/message.mjs";
13
+ import { WorkflowRuntimeError } from "./errors/runtime.mjs";
14
+ import { WorkflowScheduleAlreadyExistsError, WorkflowScheduleError } from "./errors/schedule.mjs";
15
+ import { WorkflowStepAttemptLimitError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError } from "./errors/step.mjs";
16
+ import { WorkflowStreamError, WorkflowStreamNotFoundError } from "./errors/stream.mjs";
17
+ import "./errors/mod.mjs";
18
+ import { attachWorkflowDefinition, attachWorkflowStepDefinition, callWorkflowStepFunction, getCompiledWorkflowDefinition, getCompiledWorkflowStepDefinition, getWorkflowFunctionDefinition, getWorkflowStepFunctionDefinition, registerWorkflowFunctions, runWorkflowFunction } from "./compiled-function.mjs";
19
+ import { defineMessageChannel, defineWorkflow, implementWorkflow } from "./definition.mjs";
20
+ import { createWorkflowClient } from "./client/create.mjs";
21
+ import "./client/mod.mjs";
22
+ import { parseWorkflowRuntime, workflowRuntimeSchema } from "./types/runtime.mjs";
23
+ import { WorkflowRuntime, createWorkflowRuntime, getWorkflowRuntimeRun, startWorkflowRuntimeRun } from "./runtime.mjs";
24
+ import { defineWorkflowStep } from "./step-definition.mjs";
25
+ import { parseWebhookToken, resumeWebhook } from "./webhook.mjs";
26
+ export { WorkflowCapabilityError, WorkflowChildWorkflowTimeoutError, WorkflowDefinitionError, WorkflowDurationError, WorkflowError, WorkflowErrorCode, WorkflowHookDisposedError, WorkflowHookError, WorkflowImplementationNotFoundError, WorkflowLockError, WorkflowLockStateError, WorkflowMessageDeliveryError, WorkflowMessageError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError, WorkflowNonRetryableError, WorkflowOptionsError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowResultTimeoutError, WorkflowRetryableError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError, WorkflowRuntime, WorkflowRuntimeError, WorkflowScheduleAlreadyExistsError, WorkflowScheduleError, WorkflowSerializationError, WorkflowStateError, WorkflowStepAttemptLimitError, WorkflowStepError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError, WorkflowStreamError, WorkflowStreamNotFoundError, attachWorkflowDefinition, attachWorkflowStepDefinition, callWorkflowStepFunction, createWorkflowClient, createWorkflowRuntime, defineMessageChannel, defineWorkflow, defineWorkflowStep, getCompiledWorkflowDefinition, getCompiledWorkflowStepDefinition, getWorkflowFunctionDefinition, getWorkflowRuntimeRun, getWorkflowStepFunctionDefinition, implementWorkflow, parseWebhookToken, parseWorkflowRuntime, registerWorkflowFunctions, resumeWebhook, runWorkflowFunction, startWorkflowRuntimeRun, workflowErrorCodeSchema, workflowErrorRecordSchema, workflowErrorRecordView, workflowRuntimeSchema };
@@ -0,0 +1,18 @@
1
+ import { TelemetryContext } from "../types/telemetry.mjs";
2
+ import { StreamEventKind } from "../types/events.mjs";
3
+ import { Context, Span, SpanContext } from "@opentelemetry/api";
4
+ //#region src/otel/support.d.ts
5
+ declare function withRunSpanStatus<T>(span: Span, callback: () => Promise<T>): Promise<T>;
6
+ declare function withSpanStatus<T>(span: Span, callback: () => Promise<T>): Promise<T>;
7
+ declare function contextFromTraceContext(traceContext: TelemetryContext | undefined): Context;
8
+ declare function spanLinkFromTraceContext(traceContext: TelemetryContext | undefined): {
9
+ readonly context: SpanContext;
10
+ } | undefined;
11
+ declare function streamStatusFromEventKind(eventKind: StreamEventKind): "open" | "closed" | "failed";
12
+ declare function errorRecordToException(error: {
13
+ readonly message: string;
14
+ readonly name: string;
15
+ }): Error;
16
+ declare function toException(error: unknown): Error;
17
+ //#endregion
18
+ export { contextFromTraceContext, errorRecordToException, spanLinkFromTraceContext, streamStatusFromEventKind, toException, withRunSpanStatus, withSpanStatus };