@temelj/workflow 0.0.0-alpha.2 → 0.0.0-alpha.4

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 (461) hide show
  1. package/README.md +394 -2
  2. package/dist/attributes.d.mts +11 -9
  3. package/dist/attributes.mjs +23 -5
  4. package/dist/bundle.d.mts +5 -23
  5. package/dist/bundle.mjs +2 -18
  6. package/dist/client/create.d.mts +26 -23
  7. package/dist/client/create.mjs +26 -32
  8. package/dist/client/facades.d.mts +12 -18
  9. package/dist/client/facades.mjs +102 -93
  10. package/dist/client/mod.mjs +1 -2
  11. package/dist/client/run-handle.d.mts +17 -54
  12. package/dist/client/run-handle.mjs +35 -105
  13. package/dist/client/worker-options.d.mts +8 -8
  14. package/dist/client/worker-options.mjs +11 -11
  15. package/dist/cloudflare/cloudflare.d.mts +4 -5
  16. package/dist/cloudflare/codec.d.mts +28 -13
  17. package/dist/cloudflare/codec.mjs +40 -17
  18. package/dist/cloudflare/entrypoint.d.mts +3 -4
  19. package/dist/cloudflare/entrypoint.mjs +4 -3
  20. package/dist/cloudflare/execution.d.mts +3 -4
  21. package/dist/cloudflare/execution.mjs +20 -13
  22. package/dist/cloudflare/host.d.mts +6 -7
  23. package/dist/cloudflare/host.mjs +7 -6
  24. package/dist/cloudflare/mod.d.mts +4 -4
  25. package/dist/cloudflare/mod.mjs +2 -2
  26. package/dist/cloudflare/name.d.mts +3 -4
  27. package/dist/cloudflare/name.mjs +3 -3
  28. package/dist/cloudflare/registry.d.mts +3 -23
  29. package/dist/cloudflare/registry.mjs +2 -20
  30. package/dist/cloudflare/runtime.d.mts +11 -18
  31. package/dist/cloudflare/runtime.mjs +52 -73
  32. package/dist/cloudflare/step.d.mts +6 -6
  33. package/dist/cloudflare/step.mjs +69 -57
  34. package/dist/cloudflare/types.d.mts +17 -36
  35. package/dist/collection.d.mts +8 -11
  36. package/dist/collection.mjs +10 -14
  37. package/dist/compiled-function.d.mts +14 -19
  38. package/dist/compiled-function.mjs +12 -24
  39. package/dist/compiled.d.mts +4 -0
  40. package/dist/compiled.mjs +4 -0
  41. package/dist/compiler/ast.d.mts +26 -0
  42. package/dist/{vite → compiler}/ast.mjs +24 -16
  43. package/dist/{vite → compiler}/error.d.mts +4 -6
  44. package/dist/{vite → compiler}/error.mjs +14 -16
  45. package/dist/compiler/manifest.d.mts +6 -0
  46. package/dist/{vite → compiler}/manifest.mjs +9 -7
  47. package/dist/compiler/plugin.d.mts +7 -0
  48. package/dist/{vite → compiler}/plugin.mjs +45 -46
  49. package/dist/compiler/safety.d.mts +12 -0
  50. package/dist/{vite → compiler}/safety.mjs +5 -11
  51. package/dist/{vite → compiler}/source-edit.d.mts +3 -4
  52. package/dist/{vite → compiler}/source-edit.mjs +1 -1
  53. package/dist/{vite → compiler}/source-map.d.mts +4 -3
  54. package/dist/{vite → compiler}/source-map.mjs +3 -3
  55. package/dist/compiler/source.d.mts +7 -0
  56. package/dist/{vite → compiler}/source.mjs +1 -1
  57. package/dist/compiler/transform.d.mts +12 -0
  58. package/dist/{vite → compiler}/transform.mjs +37 -38
  59. package/dist/definition.d.mts +17 -25
  60. package/dist/definition.mjs +19 -35
  61. package/dist/engine/child-workflow.d.mts +5 -9
  62. package/dist/engine/child-workflow.mjs +46 -67
  63. package/dist/engine/command-identity.d.mts +5 -6
  64. package/dist/engine/command-identity.mjs +9 -5
  65. package/dist/engine/context.d.mts +17 -0
  66. package/dist/engine/create.d.mts +36 -94
  67. package/dist/engine/create.mjs +55 -260
  68. package/dist/engine/deterministic.d.mts +6 -11
  69. package/dist/engine/deterministic.mjs +47 -68
  70. package/dist/engine/durable-command.d.mts +5 -5
  71. package/dist/engine/durable-command.mjs +2 -2
  72. package/dist/engine/execution-service.d.mts +20 -24
  73. package/dist/engine/execution-service.mjs +54 -52
  74. package/dist/engine/hooks.d.mts +17 -39
  75. package/dist/engine/hooks.mjs +73 -94
  76. package/dist/engine/inspection.d.mts +23 -15
  77. package/dist/engine/inspection.mjs +55 -29
  78. package/dist/engine/lifecycle.d.mts +6 -12
  79. package/dist/engine/lifecycle.mjs +5 -5
  80. package/dist/engine/lock-replay.d.mts +8 -15
  81. package/dist/engine/lock-replay.mjs +12 -25
  82. package/dist/engine/lock.d.mts +10 -15
  83. package/dist/engine/lock.mjs +65 -51
  84. package/dist/engine/message.d.mts +14 -34
  85. package/dist/engine/message.mjs +94 -127
  86. package/dist/engine/observation.d.mts +9 -11
  87. package/dist/engine/observation.mjs +18 -27
  88. package/dist/engine/replay.d.mts +18 -19
  89. package/dist/engine/replay.mjs +32 -56
  90. package/dist/engine/resume.d.mts +16 -0
  91. package/dist/engine/resume.mjs +24 -0
  92. package/dist/engine/retry.d.mts +15 -19
  93. package/dist/engine/retry.mjs +17 -17
  94. package/dist/engine/run-data.d.mts +4 -8
  95. package/dist/engine/run-data.mjs +24 -22
  96. package/dist/engine/run-service.d.mts +24 -33
  97. package/dist/engine/run-service.mjs +125 -93
  98. package/dist/engine/run-utils.d.mts +11 -13
  99. package/dist/engine/run-utils.mjs +23 -46
  100. package/dist/engine/schedule.d.mts +8 -22
  101. package/dist/engine/schedule.mjs +37 -34
  102. package/dist/engine/serialization.d.mts +9 -6
  103. package/dist/engine/serialization.mjs +30 -21
  104. package/dist/engine/signals.d.mts +23 -0
  105. package/dist/engine/signals.mjs +41 -0
  106. package/dist/engine/start.d.mts +18 -0
  107. package/dist/engine/start.mjs +88 -0
  108. package/dist/engine/state.d.mts +37 -67
  109. package/dist/engine/state.mjs +127 -282
  110. package/dist/engine/step-api.d.mts +5 -8
  111. package/dist/engine/step-api.mjs +16 -16
  112. package/dist/engine/stream-reader.d.mts +12 -0
  113. package/dist/engine/stream-reader.mjs +154 -0
  114. package/dist/engine/stream.d.mts +9 -54
  115. package/dist/engine/stream.mjs +54 -196
  116. package/dist/engine/summary/recovery.d.mts +35 -0
  117. package/dist/engine/summary/recovery.mjs +363 -0
  118. package/dist/engine/summary/runs.d.mts +43 -0
  119. package/dist/engine/summary/runs.mjs +294 -0
  120. package/dist/engine/summary/step-attempts.d.mts +5 -10
  121. package/dist/engine/summary/step-attempts.mjs +157 -36
  122. package/dist/engine/summary/tally.d.mts +44 -0
  123. package/dist/engine/summary/tally.mjs +142 -0
  124. package/dist/engine/task.d.mts +4 -5
  125. package/dist/engine/task.mjs +40 -48
  126. package/dist/errors/base.d.mts +17 -77
  127. package/dist/errors/base.mjs +26 -327
  128. package/dist/errors/capability.d.mts +3 -6
  129. package/dist/errors/capability.mjs +4 -8
  130. package/dist/errors/codes.d.mts +116 -0
  131. package/dist/{types/error-code.mjs → errors/codes.mjs} +2 -17
  132. package/dist/errors/definition.d.mts +3 -17
  133. package/dist/errors/definition.mjs +5 -42
  134. package/dist/errors/failures.d.mts +17 -51
  135. package/dist/errors/failures.mjs +35 -102
  136. package/dist/errors/hook.d.mts +5 -9
  137. package/dist/errors/hook.mjs +4 -16
  138. package/dist/errors/implementation.d.mts +3 -6
  139. package/dist/errors/implementation.mjs +7 -12
  140. package/dist/errors/lock.d.mts +7 -20
  141. package/dist/errors/lock.mjs +8 -44
  142. package/dist/errors/message.d.mts +14 -59
  143. package/dist/errors/message.mjs +13 -39
  144. package/dist/errors/mod.d.mts +4 -5
  145. package/dist/errors/mod.mjs +5 -7
  146. package/dist/errors/records.d.mts +10 -4
  147. package/dist/errors/records.mjs +256 -256
  148. package/dist/errors/run.d.mts +27 -68
  149. package/dist/errors/run.mjs +31 -85
  150. package/dist/errors/schedule.d.mts +7 -18
  151. package/dist/errors/schedule.mjs +7 -39
  152. package/dist/errors/step.d.mts +12 -45
  153. package/dist/errors/step.mjs +13 -34
  154. package/dist/errors/stream.d.mts +8 -16
  155. package/dist/errors/stream.mjs +7 -41
  156. package/dist/esbuild.d.mts +6 -4
  157. package/dist/esbuild.mjs +2 -1
  158. package/dist/events/descriptors.d.mts +12 -241
  159. package/dist/events/descriptors.mjs +12 -5
  160. package/dist/history/projection.d.mts +4 -6
  161. package/dist/history/projection.mjs +22 -26
  162. package/dist/history/replay-projection.d.mts +44 -48
  163. package/dist/history/replay-projection.mjs +41 -50
  164. package/dist/history/{mod.d.mts → replay.d.mts} +16 -21
  165. package/dist/history/{mod.mjs → replay.mjs} +21 -25
  166. package/dist/history/sequencer.d.mts +10 -11
  167. package/dist/history/sequencer.mjs +11 -7
  168. package/dist/history/step-attempts.d.mts +4 -7
  169. package/dist/history/step-attempts.mjs +8 -9
  170. package/dist/history/timeline.d.mts +4 -13
  171. package/dist/history/timeline.mjs +46 -265
  172. package/dist/history/validator.d.mts +5 -7
  173. package/dist/history/validator.mjs +9 -24
  174. package/dist/hook-token.d.mts +7 -0
  175. package/dist/hook-token.mjs +32 -0
  176. package/dist/ids.d.mts +8 -0
  177. package/dist/ids.mjs +21 -0
  178. package/dist/message-options.d.mts +11 -5
  179. package/dist/message-options.mjs +9 -7
  180. package/dist/mod.d.mts +32 -36
  181. package/dist/mod.mjs +9 -13
  182. package/dist/otel/metrics.d.mts +31 -0
  183. package/dist/otel/metrics.mjs +60 -0
  184. package/dist/otel/mod.d.mts +3 -0
  185. package/dist/otel/mod.mjs +3 -0
  186. package/dist/otel/spans.d.mts +24 -0
  187. package/dist/otel/spans.mjs +218 -0
  188. package/dist/otel/support.d.mts +15 -8
  189. package/dist/otel/support.mjs +18 -40
  190. package/dist/{otel.d.mts → otel/telemetry.d.mts} +5 -6
  191. package/dist/otel/telemetry.mjs +305 -0
  192. package/dist/pagination.d.mts +6 -12
  193. package/dist/pagination.mjs +10 -14
  194. package/dist/registry.d.mts +8 -5
  195. package/dist/registry.mjs +19 -10
  196. package/dist/rolldown.d.mts +6 -4
  197. package/dist/rolldown.mjs +2 -1
  198. package/dist/rollup.d.mts +6 -4
  199. package/dist/rollup.mjs +2 -1
  200. package/dist/rspack.d.mts +6 -4
  201. package/dist/rspack.mjs +2 -1
  202. package/dist/run-status.d.mts +29 -0
  203. package/dist/run-status.mjs +42 -0
  204. package/dist/schema/common.d.mts +22 -0
  205. package/dist/schema/common.mjs +54 -0
  206. package/dist/schema/error.d.mts +17 -0
  207. package/dist/schema/error.mjs +39 -0
  208. package/dist/schema/events.d.mts +446 -0
  209. package/dist/schema/events.mjs +235 -0
  210. package/dist/schema/pagination.d.mts +5 -0
  211. package/dist/schema/pagination.mjs +11 -0
  212. package/dist/schema/persisted-value.d.mts +8 -0
  213. package/dist/schema/persisted-value.mjs +94 -0
  214. package/dist/schema/run.d.mts +51 -0
  215. package/dist/schema/run.mjs +88 -0
  216. package/dist/schema/store.d.mts +94 -0
  217. package/dist/schema/store.mjs +116 -0
  218. package/dist/step-definition.d.mts +4 -9
  219. package/dist/step-definition.mjs +2 -2
  220. package/dist/store/capabilities.d.mts +8 -9
  221. package/dist/store/capabilities.mjs +7 -7
  222. package/dist/store/cleanup.d.mts +9 -14
  223. package/dist/store/cleanup.mjs +86 -85
  224. package/dist/store/create.d.mts +28 -29
  225. package/dist/store/create.mjs +10 -11
  226. package/dist/store/events.d.mts +48 -0
  227. package/dist/store/events.mjs +263 -0
  228. package/dist/store/indexes.d.mts +25 -0
  229. package/dist/store/indexes.mjs +282 -0
  230. package/dist/store/instrumentation.d.mts +2 -3
  231. package/dist/store/instrumentation.mjs +30 -30
  232. package/dist/store/lock.d.mts +4 -5
  233. package/dist/store/lock.mjs +5 -7
  234. package/dist/store/materialization.d.mts +10 -17
  235. package/dist/store/materialization.mjs +39 -33
  236. package/dist/store/mod.d.mts +3 -3
  237. package/dist/store/mod.mjs +2 -2
  238. package/dist/store/query.d.mts +13 -17
  239. package/dist/store/query.mjs +13 -13
  240. package/dist/store/run.d.mts +25 -34
  241. package/dist/store/run.mjs +67 -108
  242. package/dist/store/schedule.d.mts +6 -8
  243. package/dist/store/schedule.mjs +11 -11
  244. package/dist/store/step-attempt.d.mts +9 -12
  245. package/dist/store/step-attempt.mjs +9 -9
  246. package/dist/store/storage-value.d.mts +3 -3
  247. package/dist/store/storage-value.mjs +17 -1
  248. package/dist/store/validation.d.mts +17 -20
  249. package/dist/store/validation.mjs +30 -33
  250. package/dist/store-keys.d.mts +35 -47
  251. package/dist/store-keys.mjs +9 -17
  252. package/dist/telemetry.d.mts +16 -16
  253. package/dist/telemetry.mjs +3 -3
  254. package/dist/temporal.d.mts +11 -16
  255. package/dist/temporal.mjs +8 -9
  256. package/dist/timer.d.mts +12 -10
  257. package/dist/timer.mjs +11 -3
  258. package/dist/types/cleanup.d.mts +13 -50
  259. package/dist/types/cleanup.mjs +1 -22
  260. package/dist/types/client.d.mts +101 -162
  261. package/dist/types/{vite.d.mts → compiler.d.mts} +17 -24
  262. package/dist/types/compiler.mjs +1 -0
  263. package/dist/types/definition.d.mts +22 -34
  264. package/dist/types/engine-options.d.mts +10 -17
  265. package/dist/types/engine.d.mts +15 -274
  266. package/dist/types/error.d.mts +15 -217
  267. package/dist/types/error.mjs +1 -48
  268. package/dist/types/events.d.mts +59 -2730
  269. package/dist/types/events.mjs +1 -283
  270. package/dist/types/hook.d.mts +27 -85
  271. package/dist/types/hook.mjs +1 -66
  272. package/dist/types/ids.d.mts +9 -0
  273. package/dist/types/ids.mjs +1 -0
  274. package/dist/types/lock.d.mts +8 -26
  275. package/dist/types/lock.mjs +1 -18
  276. package/dist/types/message.d.mts +29 -43
  277. package/dist/types/observation.d.mts +43 -58
  278. package/dist/types/pagination.d.mts +6 -22
  279. package/dist/types/pagination.mjs +1 -13
  280. package/dist/types/result.d.mts +11 -43
  281. package/dist/types/retry.d.mts +7 -14
  282. package/dist/types/run-list.d.mts +9 -11
  283. package/dist/types/run-options.d.mts +25 -32
  284. package/dist/types/run.d.mts +35 -315
  285. package/dist/types/run.mjs +1 -207
  286. package/dist/types/runtime.d.mts +33 -145
  287. package/dist/types/runtime.mjs +1 -21
  288. package/dist/types/schedule.d.mts +13 -72
  289. package/dist/types/schedule.mjs +1 -48
  290. package/dist/types/step-attempts.d.mts +65 -261
  291. package/dist/types/step-attempts.mjs +1 -43
  292. package/dist/types/step.d.mts +66 -77
  293. package/dist/types/step.mjs +1 -5
  294. package/dist/types/store.d.mts +50 -182
  295. package/dist/types/stream.d.mts +19 -40
  296. package/dist/types/summary.d.mts +174 -278
  297. package/dist/types/telemetry.d.mts +23 -28
  298. package/dist/types/telemetry.mjs +1 -9
  299. package/dist/types/timeline.d.mts +46 -233
  300. package/dist/types/worker.d.mts +22 -29
  301. package/dist/values.d.mts +15 -0
  302. package/dist/values.mjs +57 -0
  303. package/dist/vite.d.mts +5 -6
  304. package/dist/vite.mjs +3 -4
  305. package/dist/webpack.d.mts +6 -4
  306. package/dist/webpack.mjs +2 -1
  307. package/dist/worker/error.d.mts +2 -9
  308. package/dist/worker/error.mjs +20 -32
  309. package/dist/worker/missing-implementation.d.mts +19 -0
  310. package/dist/worker/missing-implementation.mjs +62 -0
  311. package/dist/worker/worker.d.mts +18 -0
  312. package/dist/{worker.mjs → worker/worker.mjs} +64 -118
  313. package/package.json +28 -47
  314. package/dist/engine/execution-api.d.mts +0 -29
  315. package/dist/engine/execution-api.mjs +0 -33
  316. package/dist/engine/inspection-api.d.mts +0 -34
  317. package/dist/engine/inspection-api.mjs +0 -78
  318. package/dist/engine/mod.d.mts +0 -4
  319. package/dist/engine/mod.mjs +0 -2
  320. package/dist/engine/recovery.d.mts +0 -26
  321. package/dist/engine/recovery.mjs +0 -92
  322. package/dist/engine/retry-policy.d.mts +0 -4
  323. package/dist/engine/retry-policy.mjs +0 -4
  324. package/dist/engine/start-api.d.mts +0 -30
  325. package/dist/engine/start-api.mjs +0 -99
  326. package/dist/engine/summary/active-events.d.mts +0 -34
  327. package/dist/engine/summary/active-events.mjs +0 -69
  328. package/dist/engine/summary/child-workflow-runs.d.mts +0 -24
  329. package/dist/engine/summary/child-workflow-runs.mjs +0 -138
  330. package/dist/engine/summary/child-workflow-waits.d.mts +0 -21
  331. package/dist/engine/summary/child-workflow-waits.mjs +0 -67
  332. package/dist/engine/summary/recovery-child-workflow-waits.d.mts +0 -11
  333. package/dist/engine/summary/recovery-child-workflow-waits.mjs +0 -89
  334. package/dist/engine/summary/recovery-due-runs.d.mts +0 -16
  335. package/dist/engine/summary/recovery-due-runs.mjs +0 -52
  336. package/dist/engine/summary/recovery-failed-runs.d.mts +0 -14
  337. package/dist/engine/summary/recovery-failed-runs.mjs +0 -33
  338. package/dist/engine/summary/recovery-lease-runs.d.mts +0 -16
  339. package/dist/engine/summary/recovery-lease-runs.mjs +0 -69
  340. package/dist/engine/summary/recovery-locks.d.mts +0 -18
  341. package/dist/engine/summary/recovery-locks.mjs +0 -100
  342. package/dist/engine/summary/recovery-message-waits.d.mts +0 -11
  343. package/dist/engine/summary/recovery-message-waits.mjs +0 -74
  344. package/dist/engine/summary/recovery-retry-runs.d.mts +0 -17
  345. package/dist/engine/summary/recovery-retry-runs.mjs +0 -65
  346. package/dist/engine/summary/recovery-run-timestamps.d.mts +0 -13
  347. package/dist/engine/summary/recovery-run-timestamps.mjs +0 -18
  348. package/dist/engine/summary/recovery-runs.d.mts +0 -23
  349. package/dist/engine/summary/recovery-runs.mjs +0 -54
  350. package/dist/engine/summary/recovery-schedules.d.mts +0 -10
  351. package/dist/engine/summary/recovery-schedules.mjs +0 -46
  352. package/dist/engine/summary/recovery-sleep-waits.d.mts +0 -10
  353. package/dist/engine/summary/recovery-sleep-waits.mjs +0 -53
  354. package/dist/engine/summary/recovery-waits.d.mts +0 -21
  355. package/dist/engine/summary/recovery-waits.mjs +0 -29
  356. package/dist/engine/summary/run-availability.d.mts +0 -13
  357. package/dist/engine/summary/run-availability.mjs +0 -37
  358. package/dist/engine/summary/run-cleanup.d.mts +0 -14
  359. package/dist/engine/summary/run-cleanup.mjs +0 -44
  360. package/dist/engine/summary/run-failure.d.mts +0 -14
  361. package/dist/engine/summary/run-failure.mjs +0 -62
  362. package/dist/engine/summary/run-hooks.d.mts +0 -14
  363. package/dist/engine/summary/run-hooks.mjs +0 -63
  364. package/dist/engine/summary/run-lease.d.mts +0 -11
  365. package/dist/engine/summary/run-lease.mjs +0 -64
  366. package/dist/engine/summary/run-message-waits.d.mts +0 -15
  367. package/dist/engine/summary/run-message-waits.mjs +0 -62
  368. package/dist/engine/summary/run-metrics.d.mts +0 -31
  369. package/dist/engine/summary/run-metrics.mjs +0 -93
  370. package/dist/engine/summary/run-retry.d.mts +0 -9
  371. package/dist/engine/summary/run-retry.mjs +0 -69
  372. package/dist/engine/summary/run-sleeps.d.mts +0 -15
  373. package/dist/engine/summary/run-sleeps.mjs +0 -61
  374. package/dist/engine/summary/run-state.d.mts +0 -26
  375. package/dist/engine/summary/run-state.mjs +0 -48
  376. package/dist/engine/summary/run-status.d.mts +0 -16
  377. package/dist/engine/summary/run-status.mjs +0 -35
  378. package/dist/engine/summary/run-streams.d.mts +0 -14
  379. package/dist/engine/summary/run-streams.mjs +0 -46
  380. package/dist/engine/summary/run-transition.d.mts +0 -9
  381. package/dist/engine/summary/run-transition.mjs +0 -39
  382. package/dist/engine/summary/run-workflow.d.mts +0 -9
  383. package/dist/engine/summary/run-workflow.mjs +0 -47
  384. package/dist/engine/summary/step-attempt-active-child-workflows.d.mts +0 -13
  385. package/dist/engine/summary/step-attempt-active-child-workflows.mjs +0 -55
  386. package/dist/engine/summary/step-attempt-active-fields.d.mts +0 -23
  387. package/dist/engine/summary/step-attempt-active-fields.mjs +0 -14
  388. package/dist/engine/summary/step-attempt-active-message-waits.d.mts +0 -12
  389. package/dist/engine/summary/step-attempt-active-message-waits.mjs +0 -47
  390. package/dist/engine/summary/step-attempt-active-sleeps.d.mts +0 -19
  391. package/dist/engine/summary/step-attempt-active-sleeps.mjs +0 -44
  392. package/dist/engine/summary/step-attempt-buckets.d.mts +0 -22
  393. package/dist/engine/summary/step-attempt-buckets.mjs +0 -152
  394. package/dist/engine/summary/step-attempt-failure.d.mts +0 -12
  395. package/dist/engine/summary/step-attempt-failure.mjs +0 -61
  396. package/dist/engine/summary/step-attempt-lifecycle.d.mts +0 -13
  397. package/dist/engine/summary/step-attempt-lifecycle.mjs +0 -19
  398. package/dist/engine/summary.d.mts +0 -32
  399. package/dist/engine/summary.mjs +0 -37
  400. package/dist/errors/details.d.mts +0 -13
  401. package/dist/errors/details.mjs +0 -66
  402. package/dist/errors/record-view.d.mts +0 -11
  403. package/dist/errors/record-view.mjs +0 -24
  404. package/dist/errors/runtime.d.mts +0 -12
  405. package/dist/errors/runtime.mjs +0 -24
  406. package/dist/events/mod.d.mts +0 -3
  407. package/dist/events/mod.mjs +0 -2
  408. package/dist/history/attempt-key.d.mts +0 -6
  409. package/dist/history/attempt-key.mjs +0 -7
  410. package/dist/inspection/mod.d.mts +0 -5
  411. package/dist/inspection/mod.mjs +0 -3
  412. package/dist/otel.mjs +0 -590
  413. package/dist/runtime.d.mts +0 -35
  414. package/dist/runtime.mjs +0 -198
  415. package/dist/store/append-projection.d.mts +0 -15
  416. package/dist/store/append-projection.mjs +0 -26
  417. package/dist/store/compaction.d.mts +0 -5
  418. package/dist/store/compaction.mjs +0 -8
  419. package/dist/store/event-append-project.d.mts +0 -15
  420. package/dist/store/event-append-project.mjs +0 -77
  421. package/dist/store/event-append.d.mts +0 -37
  422. package/dist/store/event-append.mjs +0 -80
  423. package/dist/store/event-history.d.mts +0 -22
  424. package/dist/store/event-history.mjs +0 -75
  425. package/dist/store/event.d.mts +0 -10
  426. package/dist/store/event.mjs +0 -28
  427. package/dist/store/idempotency.d.mts +0 -10
  428. package/dist/store/idempotency.mjs +0 -167
  429. package/dist/store/message-index.d.mts +0 -21
  430. package/dist/store/message-index.mjs +0 -122
  431. package/dist/store/revision.d.mts +0 -4
  432. package/dist/store/revision.mjs +0 -7
  433. package/dist/store/schema.d.mts +0 -14
  434. package/dist/store/schema.mjs +0 -17
  435. package/dist/types/common.d.mts +0 -20
  436. package/dist/types/common.mjs +0 -16
  437. package/dist/types/error-code.d.mts +0 -256
  438. package/dist/types/message-id.d.mts +0 -7
  439. package/dist/types/message-id.mjs +0 -5
  440. package/dist/types/run-id.d.mts +0 -7
  441. package/dist/types/run-id.mjs +0 -5
  442. package/dist/types/step-id.d.mts +0 -7
  443. package/dist/types/step-id.mjs +0 -5
  444. package/dist/types/stream-id.d.mts +0 -7
  445. package/dist/types/stream-id.mjs +0 -5
  446. package/dist/types/worker-id.d.mts +0 -7
  447. package/dist/types/worker-id.mjs +0 -5
  448. package/dist/utility.d.mts +0 -49
  449. package/dist/utility.mjs +0 -122
  450. package/dist/vite/ast.d.mts +0 -23
  451. package/dist/vite/generated-name.d.mts +0 -7
  452. package/dist/vite/generated-name.mjs +0 -9
  453. package/dist/vite/manifest.d.mts +0 -7
  454. package/dist/vite/plugin.d.mts +0 -7
  455. package/dist/vite/safety.d.mts +0 -12
  456. package/dist/vite/source.d.mts +0 -7
  457. package/dist/vite/transform.d.mts +0 -7
  458. package/dist/webhook.d.mts +0 -16
  459. package/dist/webhook.mjs +0 -17
  460. package/dist/worker.d.mts +0 -19
  461. /package/dist/{types/vite.mjs → engine/context.mjs} +0 -0
@@ -1,8 +1,9 @@
1
+ import { WorkflowErrorCode } from "../errors/codes.mjs";
1
2
  import { WorkflowStateError } from "../errors/base.mjs";
2
3
  import "../errors/mod.mjs";
3
- import { getEventDescriptor } from "../events/descriptors.mjs";
4
+ import { getEventDescriptor, getEventField } from "../events/descriptors.mjs";
4
5
  //#region src/history/projection.ts
5
- function applyWorkflowStepAttemptEvent(runId, event, current) {
6
+ function applyStepAttemptEvent(runId, event, current) {
6
7
  switch (event.kind) {
7
8
  case "step_started": return {
8
9
  runId,
@@ -12,7 +13,7 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
12
13
  status: "running",
13
14
  attempt: event.attempt,
14
15
  count: event.count,
15
- ...event.timeoutAt === void 0 ? {} : { timeoutAt: event.timeoutAt },
16
+ timeoutAt: event.timeoutAt,
16
17
  createdAt: event.timestamp,
17
18
  startedAt: event.timestamp
18
19
  };
@@ -23,7 +24,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
23
24
  ...current,
24
25
  status: "completed",
25
26
  output: event.result,
26
- timeoutAt: current?.timeoutAt,
27
27
  finishedAt: event.timestamp
28
28
  };
29
29
  case "step_failed":
@@ -33,7 +33,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
33
33
  ...current,
34
34
  status: "failed",
35
35
  error: event.error,
36
- timeoutAt: current?.timeoutAt,
37
36
  finishedAt: event.timestamp
38
37
  };
39
38
  case "sleep_started": return {
@@ -45,7 +44,7 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
45
44
  attempt: 1,
46
45
  count: event.count,
47
46
  until: event.until,
48
- ...event.duration === void 0 ? {} : { duration: event.duration },
47
+ duration: event.duration,
49
48
  createdAt: event.timestamp,
50
49
  startedAt: event.timestamp
51
50
  };
@@ -55,8 +54,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
55
54
  ...makeBaseProjectedStepAttempt(runId, event.stepId, event.stepName, "sleep", 1, event.timestamp),
56
55
  ...current,
57
56
  status: "completed",
58
- until: current?.until,
59
- duration: current?.duration,
60
57
  finishedAt: event.timestamp
61
58
  };
62
59
  case "child_workflow_started": return {
@@ -69,10 +66,10 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
69
66
  count: event.count,
70
67
  childRunId: event.childRunId,
71
68
  workflowName: event.workflowName,
72
- ...event.workflowVersion === void 0 ? {} : { workflowVersion: event.workflowVersion },
73
- ...event.cancellation === void 0 ? {} : { cancellation: event.cancellation },
74
- ...event.input === void 0 ? {} : { input: event.input },
75
- ...event.timeoutAt === void 0 ? {} : { timeoutAt: event.timeoutAt },
69
+ workflowVersion: event.workflowVersion,
70
+ cancellation: event.cancellation,
71
+ input: event.input,
72
+ timeoutAt: event.timeoutAt,
76
73
  createdAt: event.timestamp,
77
74
  startedAt: event.timestamp
78
75
  };
@@ -84,9 +81,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
84
81
  status: "completed",
85
82
  output: event.result,
86
83
  childRunId: event.childRunId,
87
- input: current?.input,
88
- cancellation: current?.cancellation,
89
- timeoutAt: current?.timeoutAt,
90
84
  finishedAt: event.timestamp
91
85
  };
92
86
  case "child_workflow_failed":
@@ -97,9 +91,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
97
91
  status: "failed",
98
92
  error: event.error,
99
93
  childRunId: event.childRunId,
100
- input: current?.input,
101
- cancellation: current?.cancellation,
102
- timeoutAt: current?.timeoutAt,
103
94
  finishedAt: event.timestamp
104
95
  };
105
96
  case "message_send_started": return {
@@ -112,7 +103,7 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
112
103
  count: event.count,
113
104
  targetRunId: event.targetRunId,
114
105
  messageId: event.messageId,
115
- ...event.payload === void 0 ? {} : { payload: event.payload },
106
+ payload: event.payload,
116
107
  createdAt: event.timestamp,
117
108
  startedAt: event.timestamp
118
109
  };
@@ -124,7 +115,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
124
115
  status: "completed",
125
116
  targetRunId: event.targetRunId,
126
117
  messageId: event.messageId,
127
- payload: current?.payload,
128
118
  finishedAt: event.timestamp
129
119
  };
130
120
  case "message_send_failed":
@@ -135,7 +125,6 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
135
125
  status: "failed",
136
126
  targetRunId: event.targetRunId,
137
127
  messageId: event.messageId,
138
- payload: current?.payload,
139
128
  error: event.error,
140
129
  finishedAt: event.timestamp
141
130
  };
@@ -148,7 +137,7 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
148
137
  attempt: 1,
149
138
  count: event.count,
150
139
  messageId: event.messageId,
151
- ...event.timeoutAt === void 0 ? {} : { timeoutAt: event.timeoutAt },
140
+ timeoutAt: event.timeoutAt,
152
141
  createdAt: event.timestamp,
153
142
  startedAt: event.timestamp
154
143
  };
@@ -236,11 +225,18 @@ function applyWorkflowStepAttemptEvent(runId, event, current) {
236
225
  function requireCurrentStepAttemptFieldsMatch(event, current) {
237
226
  if (current === void 0) return;
238
227
  const descriptor = getEventDescriptor(event.kind);
228
+ const currentFields = current;
239
229
  for (const field of descriptor.startedEventMatchFields ?? []) {
240
230
  if (field === "stepId") continue;
241
- const value = Reflect.get(event, field);
242
- if (Reflect.get(current, field) === void 0 || Reflect.get(current, field) === value) continue;
243
- WorkflowStateError.stepAttemptFieldMismatch(event.stepId, field);
231
+ const value = getEventField(event, field);
232
+ if (currentFields[field] === void 0 || currentFields[field] === value) continue;
233
+ throw new WorkflowStateError(`Workflow step attempt ${event.stepId} ${field} must match started attempt`, {
234
+ code: WorkflowErrorCode.STATE_STEP_ATTEMPT_FIELD_MISMATCH,
235
+ details: {
236
+ stepId: event.stepId,
237
+ field
238
+ }
239
+ });
244
240
  }
245
241
  }
246
242
  function makeBaseProjectedStepAttempt(runId, stepId, stepName, kind, attempt, timestamp) {
@@ -256,4 +252,4 @@ function makeBaseProjectedStepAttempt(runId, stepId, stepName, kind, attempt, ti
256
252
  };
257
253
  }
258
254
  //#endregion
259
- export { applyWorkflowStepAttemptEvent };
255
+ export { applyStepAttemptEvent };
@@ -1,44 +1,40 @@
1
- import { MessageId } from "../types/message-id.mjs";
2
- import { StepId } from "../types/step-id.mjs";
3
- import "../types/message.mjs";
4
- import { StreamId, StreamIdOrName } from "../types/stream-id.mjs";
5
- import "../types/step.mjs";
6
- import { WorkflowStepAttemptRecord } from "../types/step-attempts.mjs";
7
- import { ChildWorkflowCompletedEvent, ChildWorkflowFailedEvent, ChildWorkflowStartedEvent, DeterministicValueRecordedEvent, EventRecord, MessageSendCompletedEvent, MessageSendFailedEvent, MessageSendStartedEvent, MessageSentEvent, MessageWaitCompletedEvent, MessageWaitFailedEvent, MessageWaitStartedEvent, MetadataSetEvent, SleepCompletedEvent, SleepStartedEvent, StreamChunkEvent, StreamClosedEvent, StreamFailedEvent, StreamStartedEvent, WorkflowStepCompletedEvent, WorkflowStepFailedEvent, WorkflowStepStartedEvent } from "../types/events.mjs";
1
+ import { MessageId, StepId, StreamId, StreamIdOrName } from "../types/ids.mjs";
2
+ import { StepAttemptRecord } from "../types/step-attempts.mjs";
3
+ import { ChildWorkflowCompletedEvent, ChildWorkflowFailedEvent, ChildWorkflowStartedEvent, DeterministicValueRecordedEvent, EventRecord, MessageSendCompletedEvent, MessageSendFailedEvent, MessageSendStartedEvent, MessageSentEvent, MessageWaitCompletedEvent, MessageWaitFailedEvent, MessageWaitStartedEvent, MetadataSetEvent, SleepCompletedEvent, SleepStartedEvent, StepCompletedEvent, StepFailedEvent, StepStartedEvent, StreamChunkEvent, StreamClosedEvent, StreamFailedEvent, StreamStartedEvent } from "../types/events.mjs";
8
4
  //#region src/history/replay-projection.d.ts
9
- interface IndexedWorkflowEvent<TEvent extends EventRecord> {
5
+ interface IndexedEvent<TEvent extends EventRecord> {
10
6
  index: number;
11
7
  event: TEvent;
12
8
  }
13
- interface WorkflowReplayProjection {
9
+ export interface ReplayProjection {
14
10
  startedEventsByStepId: Map<StepId, EventRecord[]>;
15
- startedStep: Map<StepId, WorkflowStepStartedEvent>;
16
- completedStep: Map<StepId, WorkflowStepCompletedEvent>;
17
- failedSteps: Map<StepId, WorkflowStepFailedEvent[]>;
18
- unstartedFailedStep: Map<StepId, WorkflowStepFailedEvent>;
11
+ startedStep: Map<StepId, StepStartedEvent>;
12
+ completedStep: Map<StepId, StepCompletedEvent>;
13
+ failedSteps: Map<StepId, StepFailedEvent[]>;
14
+ unstartedFailedStep: Map<StepId, StepFailedEvent>;
19
15
  metadataSet: Map<StepId, MetadataSetEvent>;
20
16
  attributesSet: Map<StepId, Extract<EventRecord, {
21
17
  kind: "attributes_set";
22
18
  }>>;
23
- startedStepAttempts: Map<StepId, WorkflowStepStartedEvent[]>;
19
+ startedStepAttempts: Map<StepId, StepStartedEvent[]>;
24
20
  nextStepAttemptByStepId: Map<StepId, number>;
25
- invalidStartedStepAttempt: Map<StepId, WorkflowStepStartedEvent>;
21
+ invalidStartedStepAttempt: Map<StepId, StepStartedEvent>;
26
22
  startedSleep: Map<StepId, SleepStartedEvent>;
27
23
  completedSleep: Map<StepId, SleepCompletedEvent>;
28
24
  startedChildWorkflow: Map<StepId, ChildWorkflowStartedEvent>;
29
25
  completedChildWorkflow: Map<StepId, ChildWorkflowCompletedEvent>;
30
26
  failedChildWorkflow: Map<StepId, ChildWorkflowFailedEvent>;
31
- childWorkflowStartedByAttemptKey: Map<string, IndexedWorkflowEvent<ChildWorkflowStartedEvent>>;
32
- childWorkflowStartedByStepId: Map<StepId, IndexedWorkflowEvent<ChildWorkflowStartedEvent>[]>;
33
- childWorkflowCompletedByStepId: Map<StepId, IndexedWorkflowEvent<ChildWorkflowCompletedEvent>[]>;
34
- childWorkflowFailedByStepId: Map<StepId, IndexedWorkflowEvent<ChildWorkflowFailedEvent>[]>;
27
+ childWorkflowStartedByAttemptKey: Map<string, IndexedEvent<ChildWorkflowStartedEvent>>;
28
+ childWorkflowStartedByStepId: Map<StepId, IndexedEvent<ChildWorkflowStartedEvent>[]>;
29
+ childWorkflowCompletedByStepId: Map<StepId, IndexedEvent<ChildWorkflowCompletedEvent>[]>;
30
+ childWorkflowFailedByStepId: Map<StepId, IndexedEvent<ChildWorkflowFailedEvent>[]>;
35
31
  startedMessageWait: Map<StepId, MessageWaitStartedEvent>;
36
- messageWaitStartedByNameAndMessageId: Map<string, IndexedWorkflowEvent<MessageWaitStartedEvent>[]>;
32
+ messageWaitStartedByNameAndMessageId: Map<string, IndexedEvent<MessageWaitStartedEvent>[]>;
37
33
  messageWaitStartedIndex: Map<MessageWaitStartedEvent, number>;
38
34
  latestMessageWaitStartedIndex: Map<StepId, number>;
39
- completedMessageWait: Map<StepId, IndexedWorkflowEvent<MessageWaitCompletedEvent>[]>;
40
- failedMessageWait: Map<StepId, IndexedWorkflowEvent<MessageWaitFailedEvent>[]>;
41
- messageSentById: Map<MessageId, IndexedWorkflowEvent<MessageSentEvent>[]>;
35
+ completedMessageWait: Map<StepId, IndexedEvent<MessageWaitCompletedEvent>[]>;
36
+ failedMessageWait: Map<StepId, IndexedEvent<MessageWaitFailedEvent>[]>;
37
+ messageSentById: Map<MessageId, IndexedEvent<MessageSentEvent>[]>;
42
38
  activeMessageWaitsByMessageId: Map<MessageId, Map<StepId, string>>;
43
39
  messageSentByIdempotencyKey: Map<string, MessageSentEvent>;
44
40
  latestMessageSentByIdempotencyKey: Map<string, MessageSentEvent>;
@@ -48,10 +44,10 @@ interface WorkflowReplayProjection {
48
44
  startedStream: Map<StepId, StreamStartedEvent>;
49
45
  streamChunks: Map<StepId, StreamChunkEvent[]>;
50
46
  streamChunkByIndex: Map<StepId, Map<number, StreamChunkEvent>>;
51
- streamStartedByIdOrName: Map<string, IndexedWorkflowEvent<StreamStartedEvent>>;
52
- streamChunksByStreamId: Map<StreamId, IndexedWorkflowEvent<StreamChunkEvent>[]>;
53
- streamClosedByStreamId: Map<StreamId, IndexedWorkflowEvent<StreamClosedEvent>>;
54
- streamFailedByStreamId: Map<StreamId, IndexedWorkflowEvent<StreamFailedEvent>>;
47
+ streamStartedByIdOrName: Map<string, IndexedEvent<StreamStartedEvent>>;
48
+ streamChunksByStreamId: Map<StreamId, IndexedEvent<StreamChunkEvent>[]>;
49
+ streamClosedByStreamId: Map<StreamId, IndexedEvent<StreamClosedEvent>>;
50
+ streamFailedByStreamId: Map<StreamId, IndexedEvent<StreamFailedEvent>>;
55
51
  closedStream: Map<StepId, StreamClosedEvent>;
56
52
  failedStream: Map<StepId, StreamFailedEvent>;
57
53
  deterministicValue: Map<StepId, DeterministicValueRecordedEvent>;
@@ -59,30 +55,30 @@ interface WorkflowReplayProjection {
59
55
  workflowStartedCount: number;
60
56
  totalStartedStepCount: number;
61
57
  }
62
- declare function createWorkflowReplayProjection(events: EventRecord[]): WorkflowReplayProjection;
63
- declare function appendWorkflowReplayProjectionEvents(projection: WorkflowReplayProjection, events: EventRecord[], startIndex: number): WorkflowReplayProjection;
64
- declare function findLastIndexedWorkflowEventAfter<TEvent extends EventRecord, TMatch extends TEvent>(entries: IndexedWorkflowEvent<TEvent>[], afterIndex: number, predicate: (event: TEvent) => event is TMatch): TMatch | undefined;
65
- declare function findWorkflowMessageSentForWait(projection: WorkflowReplayProjection, messageId: MessageId, stepId: StepId, timeoutAt: Temporal.Instant | undefined): MessageSentEvent | undefined;
66
- declare function findWorkflowMessageSentByTimestamp(projection: WorkflowReplayProjection, messageId: MessageId, timestamp: Temporal.Instant): MessageSentEvent | undefined;
67
- interface StreamEventProjection {
58
+ export declare function createReplayProjection(events: EventRecord[]): ReplayProjection;
59
+ export declare function appendReplayProjectionEvents(projection: ReplayProjection, events: EventRecord[], startIndex: number): ReplayProjection;
60
+ export declare function findLastIndexedEventAfter<TEvent extends EventRecord, TMatch extends TEvent>(entries: IndexedEvent<TEvent>[], afterIndex: number, predicate: (event: TEvent) => event is TMatch): TMatch | undefined;
61
+ export declare function findMessageSentForWait(projection: ReplayProjection, messageId: MessageId, stepId: StepId, timeoutAt: Temporal.Instant | undefined): MessageSentEvent | undefined;
62
+ export declare function findMessageSentByTimestamp(projection: ReplayProjection, messageId: MessageId, timestamp: Temporal.Instant): MessageSentEvent | undefined;
63
+ export interface StreamEventProjection {
68
64
  started: StreamStartedEvent;
69
- chunks: IndexedWorkflowEvent<StreamChunkEvent>[];
70
- closed?: IndexedWorkflowEvent<StreamClosedEvent>;
71
- failed?: IndexedWorkflowEvent<StreamFailedEvent>;
65
+ chunks: IndexedEvent<StreamChunkEvent>[];
66
+ closed?: IndexedEvent<StreamClosedEvent>;
67
+ failed?: IndexedEvent<StreamFailedEvent>;
72
68
  }
73
- declare function findStreamEventProjection(projection: WorkflowReplayProjection, streamIdOrName: StreamIdOrName): StreamEventProjection | undefined;
74
- declare function findLastWorkflowSleepStartedForCompleted(projection: WorkflowReplayProjection, completed: SleepCompletedEvent): SleepStartedEvent | undefined;
75
- declare function findLastMessageWaitStartedForCompleted(projection: WorkflowReplayProjection, completed: MessageWaitCompletedEvent): MessageWaitStartedEvent | undefined;
76
- declare function findLastWorkflowChildWorkflowStartedForTerminal(projection: WorkflowReplayProjection, terminal: ChildWorkflowCompletedEvent | ChildWorkflowFailedEvent): ChildWorkflowStartedEvent | undefined;
77
- interface WorkflowChildWorkflowLifecycle {
69
+ export declare function findStreamEventProjection(projection: ReplayProjection, streamIdOrName: StreamIdOrName): StreamEventProjection | undefined;
70
+ export declare function findLastSleepStartedForCompleted(projection: ReplayProjection, completed: SleepCompletedEvent): SleepStartedEvent | undefined;
71
+ export declare function findLastMessageWaitStartedForCompleted(projection: ReplayProjection, completed: MessageWaitCompletedEvent): MessageWaitStartedEvent | undefined;
72
+ export declare function findLastChildWorkflowStartedForTerminal(projection: ReplayProjection, terminal: ChildWorkflowCompletedEvent | ChildWorkflowFailedEvent): ChildWorkflowStartedEvent | undefined;
73
+ export interface ChildWorkflowLifecycle {
78
74
  started?: ChildWorkflowStartedEvent;
79
75
  hasTerminalAfterStarted: boolean;
80
76
  }
81
- declare function findWorkflowChildWorkflowLifecycleForAttempt(projection: WorkflowReplayProjection, attempt: WorkflowStepAttemptRecord): WorkflowChildWorkflowLifecycle;
82
- declare function activeMessageWaitStepIds(projection: WorkflowReplayProjection, messageId: MessageId): StepId[];
83
- declare function findLastMessageWaitStartedByNameAndMessageId(projection: WorkflowReplayProjection, stepName: string, messageId: MessageId): MessageWaitStartedEvent | undefined;
84
- declare function findLastMessageWaitTerminalAfterStarted(projection: WorkflowReplayProjection, started: MessageWaitStartedEvent): MessageWaitCompletedEvent | MessageWaitFailedEvent | undefined;
85
- declare function findWorkflowMessageSentByIdempotencyKey(projection: WorkflowReplayProjection, idempotencyKey: string | undefined): MessageSentEvent | undefined;
86
- declare function findLastWorkflowMessageSentById(projection: WorkflowReplayProjection, messageId: MessageId): MessageSentEvent | undefined;
77
+ export declare function findChildWorkflowLifecycleForAttempt(projection: ReplayProjection, attempt: StepAttemptRecord): ChildWorkflowLifecycle;
78
+ export declare function activeMessageWaitStepIds(projection: ReplayProjection, messageId: MessageId): StepId[];
79
+ export declare function findLastMessageWaitStartedByNameAndMessageId(projection: ReplayProjection, stepName: string, messageId: MessageId): MessageWaitStartedEvent | undefined;
80
+ export declare function findLastMessageWaitTerminalAfterStarted(projection: ReplayProjection, started: MessageWaitStartedEvent): MessageWaitCompletedEvent | MessageWaitFailedEvent | undefined;
81
+ export declare function findMessageSentByIdempotencyKey(projection: ReplayProjection, idempotencyKey: string | undefined): MessageSentEvent | undefined;
82
+ export declare function findLastMessageSentById(projection: ReplayProjection, messageId: MessageId): MessageSentEvent | undefined;
87
83
  //#endregion
88
- export { IndexedWorkflowEvent, StreamEventProjection, WorkflowChildWorkflowLifecycle, WorkflowReplayProjection, activeMessageWaitStepIds, appendWorkflowReplayProjectionEvents, createWorkflowReplayProjection, findLastIndexedWorkflowEventAfter, findLastMessageWaitStartedByNameAndMessageId, findLastMessageWaitStartedForCompleted, findLastMessageWaitTerminalAfterStarted, findLastWorkflowChildWorkflowStartedForTerminal, findLastWorkflowMessageSentById, findLastWorkflowSleepStartedForCompleted, findStreamEventProjection, findWorkflowChildWorkflowLifecycleForAttempt, findWorkflowMessageSentByIdempotencyKey, findWorkflowMessageSentByTimestamp, findWorkflowMessageSentForWait };
84
+ export {};
@@ -1,7 +1,7 @@
1
1
  import { isWorkflowRecordedStepEventKind, isWorkflowTerminalStepAttemptEvent } from "../events/descriptors.mjs";
2
2
  import { workflowStartedEventMatchesTerminalEvent } from "./validator.mjs";
3
3
  //#region src/history/replay-projection.ts
4
- function createWorkflowReplayProjection(events) {
4
+ function createReplayProjection(events) {
5
5
  const projection = {
6
6
  startedEventsByStepId: /* @__PURE__ */ new Map(),
7
7
  startedStep: /* @__PURE__ */ new Map(),
@@ -49,25 +49,23 @@ function createWorkflowReplayProjection(events) {
49
49
  workflowStartedCount: 0,
50
50
  totalStartedStepCount: 0
51
51
  };
52
- for (const [index, event] of events.entries()) appendWorkflowReplayProjectionEvent(projection, event, index);
52
+ for (const [index, event] of events.entries()) appendReplayProjectionEvent(projection, event, index);
53
53
  return projection;
54
54
  }
55
- function appendWorkflowReplayProjectionEvents(projection, events, startIndex) {
56
- for (const [offset, event] of events.entries()) appendWorkflowReplayProjectionEvent(projection, event, startIndex + offset);
55
+ function appendReplayProjectionEvents(projection, events, startIndex) {
56
+ for (const [offset, event] of events.entries()) appendReplayProjectionEvent(projection, event, startIndex + offset);
57
57
  return projection;
58
58
  }
59
- function appendWorkflowReplayProjectionEvent(projection, event, index) {
59
+ function appendReplayProjectionEvent(projection, event, index) {
60
60
  if (isWorkflowTerminalStepAttemptEvent(event) && (projection.startedEventsByStepId.get(event.stepId) ?? []).some((started) => workflowStartedEventMatchesTerminalEvent(started, event))) projection.terminalStartedBefore.add(event);
61
61
  switch (event.kind) {
62
62
  case "workflow_started":
63
- incrementWorkflowStartedCount(projection);
63
+ projection.workflowStartedCount++;
64
64
  break;
65
65
  case "step_started":
66
66
  projection.startedStep.set(event.stepId, event);
67
67
  appendProjectedEvent(projection.startedStepAttempts, event.stepId, event);
68
68
  recordProjectedStepAttempt(projection, event);
69
- appendStartedEvent(projection.startedEventsByStepId, event);
70
- incrementTotalStartedStepCount(projection);
71
69
  break;
72
70
  case "step_completed":
73
71
  projection.completedStep.set(event.stepId, event);
@@ -87,8 +85,6 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
87
85
  break;
88
86
  case "sleep_started":
89
87
  projection.startedSleep.set(event.stepId, event);
90
- appendStartedEvent(projection.startedEventsByStepId, event);
91
- incrementTotalStartedStepCount(projection);
92
88
  break;
93
89
  case "sleep_completed":
94
90
  projection.completedSleep.set(event.stepId, event);
@@ -96,7 +92,7 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
96
92
  case "child_workflow_started": {
97
93
  projection.startedChildWorkflow.set(event.stepId, event);
98
94
  const startedWorkflows = projection.childWorkflowStartedByAttemptKey;
99
- const childWorkflowKey = workflowChildWorkflowAttemptKey(event);
95
+ const childWorkflowKey = childWorkflowAttemptKey(event);
100
96
  if (!startedWorkflows.has(childWorkflowKey)) startedWorkflows.set(childWorkflowKey, {
101
97
  index,
102
98
  event
@@ -105,8 +101,6 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
105
101
  index,
106
102
  event
107
103
  });
108
- appendStartedEvent(projection.startedEventsByStepId, event);
109
- incrementTotalStartedStepCount(projection);
110
104
  break;
111
105
  }
112
106
  case "child_workflow_completed":
@@ -132,8 +126,6 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
132
126
  });
133
127
  projection.messageWaitStartedIndex.set(event, index);
134
128
  projection.latestMessageWaitStartedIndex.set(event.stepId, index);
135
- appendStartedEvent(projection.startedEventsByStepId, event);
136
- incrementTotalStartedStepCount(projection);
137
129
  break;
138
130
  case "message_wait_completed":
139
131
  deleteActiveMessageWait(projection, event);
@@ -162,8 +154,6 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
162
154
  break;
163
155
  case "message_send_started":
164
156
  projection.startedMessageSend.set(event.stepId, event);
165
- appendStartedEvent(projection.startedEventsByStepId, event);
166
- incrementTotalStartedStepCount(projection);
167
157
  break;
168
158
  case "message_send_completed":
169
159
  projection.completedMessageSend.set(event.stepId, event);
@@ -174,8 +164,6 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
174
164
  case "stream_started":
175
165
  projection.startedStream.set(event.stepId, event);
176
166
  setProjectedStreamStartedByIdOrName(projection, event, index);
177
- appendStartedEvent(projection.startedEventsByStepId, event);
178
- incrementTotalStartedStepCount(projection);
179
167
  break;
180
168
  case "stream_chunk":
181
169
  appendProjectedEvent(projection.streamChunks, event.stepId, event);
@@ -205,7 +193,19 @@ function appendWorkflowReplayProjectionEvent(projection, event, index) {
205
193
  }
206
194
  case "deterministic_value_recorded": projection.deterministicValue.set(event.stepId, event);
207
195
  }
196
+ if (STEP_STARTED_KINDS.has(event.kind)) {
197
+ appendStartedEvent(projection.startedEventsByStepId, event);
198
+ projection.totalStartedStepCount++;
199
+ }
208
200
  }
201
+ const STEP_STARTED_KINDS = /* @__PURE__ */ new Set([
202
+ "step_started",
203
+ "sleep_started",
204
+ "child_workflow_started",
205
+ "message_wait_started",
206
+ "message_send_started",
207
+ "stream_started"
208
+ ]);
209
209
  function appendStartedEvent(startedEventsByStepId, event) {
210
210
  if (!isWorkflowRecordedStepEventKind(event.kind) || !("stepId" in event)) return;
211
211
  appendProjectedEvent(startedEventsByStepId, event.stepId, event);
@@ -218,15 +218,6 @@ function recordProjectedStepAttempt(projection, event) {
218
218
  const nextAttempt = event.attempt + 1;
219
219
  projection.nextStepAttemptByStepId.set(event.stepId, Math.max(projection.nextStepAttemptByStepId.get(event.stepId) ?? 1, nextAttempt));
220
220
  }
221
- function incrementTotalStartedStepCount(projection) {
222
- asMutableProjection(projection).totalStartedStepCount++;
223
- }
224
- function incrementWorkflowStartedCount(projection) {
225
- asMutableProjection(projection).workflowStartedCount++;
226
- }
227
- function asMutableProjection(projection) {
228
- return projection;
229
- }
230
221
  function setProjectedStreamChunkByIndex(projection, event) {
231
222
  const chunks = projection.streamChunkByIndex.get(event.stepId);
232
223
  if (chunks === void 0) {
@@ -256,13 +247,13 @@ function deleteActiveMessageWait(projection, event) {
256
247
  const activeWaits = activeMessageWaits(projection, event.messageId);
257
248
  if (activeWaits.get(event.stepId) === event.stepName) activeWaits.delete(event.stepId);
258
249
  }
259
- function findLastIndexedWorkflowEventAfter(entries, afterIndex, predicate) {
250
+ function findLastIndexedEventAfter(entries, afterIndex, predicate) {
260
251
  for (let index = entries.length - 1; index >= 0; index--) {
261
252
  const entry = entries[index];
262
253
  if (entry.index > afterIndex && predicate(entry.event)) return entry.event;
263
254
  }
264
255
  }
265
- function findLastIndexedWorkflowEventEntryAfter(entries, afterIndex, predicate) {
256
+ function findLastIndexedEventEntryAfter(entries, afterIndex, predicate) {
266
257
  for (let index = entries.length - 1; index >= 0; index--) {
267
258
  const entry = entries[index];
268
259
  const event = entry.event;
@@ -272,14 +263,14 @@ function findLastIndexedWorkflowEventEntryAfter(entries, afterIndex, predicate)
272
263
  };
273
264
  }
274
265
  }
275
- function findWorkflowMessageSentForWait(projection, messageId, stepId, timeoutAt) {
266
+ function findMessageSentForWait(projection, messageId, stepId, timeoutAt) {
276
267
  const waitStartedIndex = projection.latestMessageWaitStartedIndex.get(stepId) ?? -1;
277
268
  return (projection.messageSentById.get(messageId) ?? []).find(({ index, event }) => {
278
269
  return index > waitStartedIndex && (event.waiterStepIds === void 0 || event.waiterStepIds.includes(stepId)) && (timeoutAt === void 0 || Temporal.Instant.compare(event.timestamp, timeoutAt) < 0);
279
270
  })?.event;
280
271
  }
281
- function findWorkflowMessageSentByTimestamp(projection, messageId, timestamp) {
282
- return findLastIndexedWorkflowEventAfter(projection.messageSentById.get(messageId) ?? [], -1, (event) => Temporal.Instant.compare(event.timestamp, timestamp) === 0);
272
+ function findMessageSentByTimestamp(projection, messageId, timestamp) {
273
+ return findLastIndexedEventAfter(projection.messageSentById.get(messageId) ?? [], -1, (event) => Temporal.Instant.compare(event.timestamp, timestamp) === 0);
283
274
  }
284
275
  function findStreamEventProjection(projection, streamIdOrName) {
285
276
  const started = projection.streamStartedByIdOrName.get(streamIdOrName);
@@ -287,11 +278,11 @@ function findStreamEventProjection(projection, streamIdOrName) {
287
278
  return {
288
279
  started: started.event,
289
280
  chunks: [...projection.streamChunksByStreamId.get(started.event.streamId) ?? []].sort((left, right) => left.event.index - right.event.index),
290
- ...projection.streamClosedByStreamId.get(started.event.streamId) === void 0 ? {} : { closed: projection.streamClosedByStreamId.get(started.event.streamId) },
291
- ...projection.streamFailedByStreamId.get(started.event.streamId) === void 0 ? {} : { failed: projection.streamFailedByStreamId.get(started.event.streamId) }
281
+ closed: projection.streamClosedByStreamId.get(started.event.streamId),
282
+ failed: projection.streamFailedByStreamId.get(started.event.streamId)
292
283
  };
293
284
  }
294
- function findLastWorkflowSleepStartedForCompleted(projection, completed) {
285
+ function findLastSleepStartedForCompleted(projection, completed) {
295
286
  const started = projection.startedSleep.get(completed.stepId);
296
287
  return started?.stepName === completed.stepName ? started : void 0;
297
288
  }
@@ -299,19 +290,19 @@ function findLastMessageWaitStartedForCompleted(projection, completed) {
299
290
  const started = projection.startedMessageWait.get(completed.stepId);
300
291
  return started?.stepName === completed.stepName && started.messageId === completed.messageId ? started : void 0;
301
292
  }
302
- function findLastWorkflowChildWorkflowStartedForTerminal(projection, terminal) {
303
- return findLastIndexedWorkflowEventAfter(projection.childWorkflowStartedByStepId.get(terminal.stepId) ?? [], -1, (event) => workflowChildWorkflowTerminalMatchesStarted(terminal, event));
293
+ function findLastChildWorkflowStartedForTerminal(projection, terminal) {
294
+ return findLastIndexedEventAfter(projection.childWorkflowStartedByStepId.get(terminal.stepId) ?? [], -1, (event) => childWorkflowTerminalMatchesStarted(terminal, event));
304
295
  }
305
- function findWorkflowChildWorkflowLifecycleForAttempt(projection, attempt) {
306
- const started = projection.childWorkflowStartedByAttemptKey.get(workflowChildWorkflowAttemptKey(attempt));
296
+ function findChildWorkflowLifecycleForAttempt(projection, attempt) {
297
+ const started = projection.childWorkflowStartedByAttemptKey.get(childWorkflowAttemptKey(attempt));
307
298
  if (started === void 0) return { hasTerminalAfterStarted: false };
308
299
  return {
309
300
  started: started.event,
310
- hasTerminalAfterStarted: hasWorkflowChildWorkflowTerminalAfterStarted(projection, started)
301
+ hasTerminalAfterStarted: hasChildWorkflowTerminalAfterStarted(projection, started)
311
302
  };
312
303
  }
313
- function hasWorkflowChildWorkflowTerminalAfterStarted(projection, started) {
314
- return findLastIndexedWorkflowEventEntryAfter(projection.childWorkflowCompletedByStepId.get(started.event.stepId) ?? [], started.index, (event) => workflowChildWorkflowTerminalMatchesStarted(event, started.event)) !== void 0 || findLastIndexedWorkflowEventEntryAfter(projection.childWorkflowFailedByStepId.get(started.event.stepId) ?? [], started.index, (event) => workflowChildWorkflowTerminalMatchesStarted(event, started.event)) !== void 0;
304
+ function hasChildWorkflowTerminalAfterStarted(projection, started) {
305
+ return findLastIndexedEventEntryAfter(projection.childWorkflowCompletedByStepId.get(started.event.stepId) ?? [], started.index, (event) => childWorkflowTerminalMatchesStarted(event, started.event)) !== void 0 || findLastIndexedEventEntryAfter(projection.childWorkflowFailedByStepId.get(started.event.stepId) ?? [], started.index, (event) => childWorkflowTerminalMatchesStarted(event, started.event)) !== void 0;
315
306
  }
316
307
  function activeMessageWaitStepIds(projection, messageId) {
317
308
  return [...projection.activeMessageWaitsByMessageId.get(messageId)?.keys() ?? []];
@@ -322,16 +313,16 @@ function findLastMessageWaitStartedByNameAndMessageId(projection, stepName, mess
322
313
  function findLastMessageWaitTerminalAfterStarted(projection, started) {
323
314
  const startedIndex = projection.messageWaitStartedIndex.get(started);
324
315
  if (startedIndex === void 0) return;
325
- const completed = findLastIndexedWorkflowEventEntryAfter(projection.completedMessageWait.get(started.stepId) ?? [], startedIndex, (event) => event.stepName === started.stepName && event.messageId === started.messageId);
326
- const failed = findLastIndexedWorkflowEventEntryAfter(projection.failedMessageWait.get(started.stepId) ?? [], startedIndex, (event) => event.stepName === started.stepName && event.messageId === started.messageId);
316
+ const completed = findLastIndexedEventEntryAfter(projection.completedMessageWait.get(started.stepId) ?? [], startedIndex, (event) => event.stepName === started.stepName && event.messageId === started.messageId);
317
+ const failed = findLastIndexedEventEntryAfter(projection.failedMessageWait.get(started.stepId) ?? [], startedIndex, (event) => event.stepName === started.stepName && event.messageId === started.messageId);
327
318
  if (completed === void 0) return failed?.event;
328
319
  if (failed === void 0) return completed.event;
329
320
  return completed.index > failed.index ? completed.event : failed.event;
330
321
  }
331
- function findWorkflowMessageSentByIdempotencyKey(projection, idempotencyKey) {
322
+ function findMessageSentByIdempotencyKey(projection, idempotencyKey) {
332
323
  return idempotencyKey === void 0 ? void 0 : projection.messageSentByIdempotencyKey.get(idempotencyKey);
333
324
  }
334
- function findLastWorkflowMessageSentById(projection, messageId) {
325
+ function findLastMessageSentById(projection, messageId) {
335
326
  return (projection.messageSentById.get(messageId) ?? []).at(-1)?.event;
336
327
  }
337
328
  function appendProjectedEvent(map, stepId, event) {
@@ -345,7 +336,7 @@ function appendProjectedEvent(map, stepId, event) {
345
336
  function workflowMessageWaitNameMessageKey(stepName, messageId) {
346
337
  return `${stepName}\u0000${messageId}`;
347
338
  }
348
- function workflowChildWorkflowAttemptKey(event) {
339
+ function childWorkflowAttemptKey(event) {
349
340
  return [
350
341
  workflowProjectionKeyPart(event.childRunId),
351
342
  workflowProjectionKeyPart(event.stepId),
@@ -360,8 +351,8 @@ function workflowChildWorkflowAttemptKey(event) {
360
351
  function workflowProjectionKeyPart(value) {
361
352
  return value === void 0 ? "" : String(value);
362
353
  }
363
- function workflowChildWorkflowTerminalMatchesStarted(event, started) {
354
+ function childWorkflowTerminalMatchesStarted(event, started) {
364
355
  return event.stepId === started.stepId && event.stepName === started.stepName && event.childRunId === started.childRunId && event.attempt === started.attempt;
365
356
  }
366
357
  //#endregion
367
- export { activeMessageWaitStepIds, appendWorkflowReplayProjectionEvents, createWorkflowReplayProjection, findLastIndexedWorkflowEventAfter, findLastMessageWaitStartedByNameAndMessageId, findLastMessageWaitStartedForCompleted, findLastMessageWaitTerminalAfterStarted, findLastWorkflowChildWorkflowStartedForTerminal, findLastWorkflowMessageSentById, findLastWorkflowSleepStartedForCompleted, findStreamEventProjection, findWorkflowChildWorkflowLifecycleForAttempt, findWorkflowMessageSentByIdempotencyKey, findWorkflowMessageSentByTimestamp, findWorkflowMessageSentForWait };
358
+ export { activeMessageWaitStepIds, appendReplayProjectionEvents, createReplayProjection, findChildWorkflowLifecycleForAttempt, findLastChildWorkflowStartedForTerminal, findLastIndexedEventAfter, findLastMessageSentById, findLastMessageWaitStartedByNameAndMessageId, findLastMessageWaitStartedForCompleted, findLastMessageWaitTerminalAfterStarted, findLastSleepStartedForCompleted, findMessageSentByIdempotencyKey, findMessageSentByTimestamp, findMessageSentForWait, findStreamEventProjection };
@@ -1,27 +1,22 @@
1
- import { MessageId } from "../types/message-id.mjs";
2
- import { StepId } from "../types/step-id.mjs";
3
- import "../types/message.mjs";
4
- import { StreamIdOrName } from "../types/stream-id.mjs";
5
- import "../types/step.mjs";
6
- import { WorkflowStepAttemptRecord } from "../types/step-attempts.mjs";
7
- import { WorkflowStepIdentity, WorkflowStepType } from "../types/run.mjs";
8
- import { ChildWorkflowCompletedEvent, ChildWorkflowFailedEvent, ChildWorkflowStartedEvent, DeterministicValueRecordedEvent, EventRecord, MessageSendCompletedEvent, MessageSendFailedEvent, MessageSendStartedEvent, MessageSentEvent, MessageWaitCompletedEvent, MessageWaitFailedEvent, MessageWaitStartedEvent, MetadataSetEvent, SleepCompletedEvent, SleepStartedEvent, StreamChunkEvent, StreamClosedEvent, StreamFailedEvent, StreamStartedEvent, WorkflowStepCompletedEvent, WorkflowStepFailedEvent, WorkflowStepStartedEvent } from "../types/events.mjs";
9
- import { StreamEventProjection, WorkflowChildWorkflowLifecycle } from "./replay-projection.mjs";
10
- import { applyWorkflowStepAttemptEvent } from "./projection.mjs";
1
+ import { MessageId, StepId, StreamIdOrName } from "../types/ids.mjs";
2
+ import { StepAttemptRecord } from "../types/step-attempts.mjs";
3
+ import { StepIdentity, StepType } from "../types/run.mjs";
4
+ import { ChildWorkflowCompletedEvent, ChildWorkflowFailedEvent, ChildWorkflowStartedEvent, DeterministicValueRecordedEvent, EventRecord, MessageSendCompletedEvent, MessageSendFailedEvent, MessageSendStartedEvent, MessageSentEvent, MessageWaitCompletedEvent, MessageWaitFailedEvent, MessageWaitStartedEvent, MetadataSetEvent, SleepCompletedEvent, SleepStartedEvent, StepCompletedEvent, StepFailedEvent, StepStartedEvent, StreamChunkEvent, StreamClosedEvent, StreamFailedEvent, StreamStartedEvent } from "../types/events.mjs";
5
+ import { ChildWorkflowLifecycle, StreamEventProjection } from "./replay-projection.mjs";
6
+ import { applyStepAttemptEvent } from "./projection.mjs";
11
7
  import { createTimeline } from "./timeline.mjs";
12
- import { makeWorkflowStepAttemptKey } from "./attempt-key.mjs";
13
- //#region src/history/mod.d.ts
14
- /** Runtime class for workflow history. */
15
- declare class WorkflowHistory {
8
+ import { stepAttemptKey } from "../store-keys.mjs";
9
+ //#region src/history/replay.d.ts
10
+ export declare class History {
16
11
  #private;
17
12
  constructor(events: readonly EventRecord[]);
18
13
  get events(): readonly EventRecord[];
19
- nextStep<TType extends WorkflowStepType>(type: TType, name: string): WorkflowStepIdentity<TType>;
14
+ nextStep<TType extends StepType>(type: TType, name: string): StepIdentity<TType>;
20
15
  append(appendEvents: () => Promise<readonly EventRecord[]>): Promise<readonly EventRecord[]>;
21
- completedStep(stepId: StepId): WorkflowStepCompletedEvent | undefined;
22
- startedStep(stepId: StepId): WorkflowStepStartedEvent | undefined;
23
- failedSteps(stepId: StepId): readonly WorkflowStepFailedEvent[];
24
- unstartedFailedStep(stepId: StepId): WorkflowStepFailedEvent | undefined;
16
+ completedStep(stepId: StepId): StepCompletedEvent | undefined;
17
+ startedStep(stepId: StepId): StepStartedEvent | undefined;
18
+ failedSteps(stepId: StepId): readonly StepFailedEvent[];
19
+ unstartedFailedStep(stepId: StepId): StepFailedEvent | undefined;
25
20
  metadataSet(stepId: StepId): MetadataSetEvent | undefined;
26
21
  attributesSet(stepId: StepId): Extract<EventRecord, {
27
22
  readonly kind: "attributes_set";
@@ -37,7 +32,7 @@ declare class WorkflowHistory {
37
32
  completedChildWorkflow(stepId: StepId): ChildWorkflowCompletedEvent | undefined;
38
33
  failedChildWorkflow(stepId: StepId): ChildWorkflowFailedEvent | undefined;
39
34
  startedChildWorkflowForTerminal(terminal: ChildWorkflowCompletedEvent | ChildWorkflowFailedEvent): ChildWorkflowStartedEvent | undefined;
40
- childWorkflowLifecycleForAttempt(attempt: WorkflowStepAttemptRecord): WorkflowChildWorkflowLifecycle;
35
+ childWorkflowLifecycleForAttempt(attempt: StepAttemptRecord): ChildWorkflowLifecycle;
41
36
  startedMessageWait(stepId: StepId): MessageWaitStartedEvent | undefined;
42
37
  startedMessageWaitForCompleted(completed: MessageWaitCompletedEvent): MessageWaitStartedEvent | undefined;
43
38
  completedMessageWait(stepId: StepId): MessageWaitCompletedEvent | undefined;
@@ -68,4 +63,4 @@ declare class WorkflowHistory {
68
63
  isReplayConsumed(): boolean;
69
64
  }
70
65
  //#endregion
71
- export { type StreamEventProjection, WorkflowHistory, type WorkflowStepIdentity, applyWorkflowStepAttemptEvent, createTimeline, makeWorkflowStepAttemptKey as workflowStepAttemptKey };
66
+ export { type StepIdentity, type StreamEventProjection, applyStepAttemptEvent, createTimeline, stepAttemptKey };