@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,14 +1,13 @@
1
- import { WorkflowErrorCode } from "../types/error-code.mjs";
1
+ import { WorkflowErrorCode } from "./codes.mjs";
2
2
  import { WorkflowStepError } from "./base.mjs";
3
3
  //#region src/errors/step.ts
4
- /** Error thrown for step timeout failures. */
5
- var WorkflowStepTimeoutError = class WorkflowStepTimeoutError extends WorkflowStepError {
4
+ var WorkflowStepTimeoutError = class extends WorkflowStepError {
6
5
  runId;
7
6
  stepId;
8
7
  stepName;
9
8
  attempt;
10
9
  timeoutAt;
11
- constructor(options, context) {
10
+ constructor(options) {
12
11
  super(`Workflow step timed out: ${options.stepName} for run ${options.runId} attempt ${options.attempt} at ${options.timeoutAt.toString()}`, {
13
12
  code: WorkflowErrorCode.STEP_TIMEOUT,
14
13
  details: {
@@ -18,7 +17,7 @@ var WorkflowStepTimeoutError = class WorkflowStepTimeoutError extends WorkflowSt
18
17
  attempt: options.attempt,
19
18
  timeoutAt: options.timeoutAt.toString()
20
19
  }
21
- }, context);
20
+ });
22
21
  this.name = "WorkflowStepTimeoutError";
23
22
  this.runId = options.runId;
24
23
  this.stepId = options.stepId;
@@ -26,19 +25,12 @@ var WorkflowStepTimeoutError = class WorkflowStepTimeoutError extends WorkflowSt
26
25
  this.attempt = options.attempt;
27
26
  this.timeoutAt = options.timeoutAt;
28
27
  }
29
- static timedOut(options) {
30
- throw new WorkflowStepTimeoutError(options, WorkflowStepTimeoutError.timedOut);
31
- }
32
- static create(options) {
33
- return new WorkflowStepTimeoutError(options, WorkflowStepTimeoutError.create);
34
- }
35
28
  };
36
- /** Error thrown for step execution failures. */
37
29
  var WorkflowStepExecutionError = class WorkflowStepExecutionError extends WorkflowStepError {
38
30
  stepId;
39
31
  stepName;
40
32
  attempt;
41
- constructor(options, context) {
33
+ constructor(options) {
42
34
  super(`Workflow step failed: ${options.stepName}`, {
43
35
  code: WorkflowErrorCode.STEP_EXECUTION_FAILED,
44
36
  cause: options.cause,
@@ -47,25 +39,22 @@ var WorkflowStepExecutionError = class WorkflowStepExecutionError extends Workfl
47
39
  stepName: options.stepName,
48
40
  attempt: options.attempt
49
41
  }
50
- }, context);
42
+ });
51
43
  this.name = "WorkflowStepExecutionError";
52
44
  this.stepId = options.stepId;
53
45
  this.stepName = options.stepName;
54
46
  this.attempt = options.attempt;
55
47
  }
56
48
  static failed(options) {
57
- throw new WorkflowStepExecutionError(options, WorkflowStepExecutionError.failed);
58
- }
59
- static create(options) {
60
- return new WorkflowStepExecutionError(options, WorkflowStepExecutionError.create);
49
+ throw new WorkflowStepExecutionError(options);
61
50
  }
62
51
  };
63
52
  /** Error thrown when a step exhausts its retry policy. */
64
- var WorkflowStepRetryLimitError = class WorkflowStepRetryLimitError extends WorkflowStepError {
53
+ var WorkflowStepRetryLimitError = class extends WorkflowStepError {
65
54
  stepId;
66
55
  stepName;
67
56
  attempt;
68
- constructor(options, context) {
57
+ constructor(options) {
69
58
  super(`Workflow step retry limit exceeded: ${options.stepName}`, {
70
59
  code: WorkflowErrorCode.STEP_RETRY_LIMIT_EXCEEDED,
71
60
  details: {
@@ -73,40 +62,30 @@ var WorkflowStepRetryLimitError = class WorkflowStepRetryLimitError extends Work
73
62
  stepName: options.stepName,
74
63
  attempt: options.attempt
75
64
  }
76
- }, context);
65
+ });
77
66
  this.name = "WorkflowStepRetryLimitError";
78
67
  this.stepId = options.stepId;
79
68
  this.stepName = options.stepName;
80
69
  this.attempt = options.attempt;
81
70
  }
82
- static exceeded(options) {
83
- throw new WorkflowStepRetryLimitError(options, WorkflowStepRetryLimitError.exceeded);
84
- }
85
- static create(options) {
86
- return new WorkflowStepRetryLimitError(options, WorkflowStepRetryLimitError.create);
87
- }
88
71
  };
89
- /** Error thrown for step attempt limit failures. */
90
72
  var WorkflowStepAttemptLimitError = class WorkflowStepAttemptLimitError extends WorkflowStepError {
91
73
  runId;
92
74
  maximumAttempts;
93
- constructor(runId, maximumAttempts, context) {
75
+ constructor(runId, maximumAttempts) {
94
76
  super(`Workflow run exceeded total step attempt limit: ${runId} (${maximumAttempts})`, {
95
77
  code: WorkflowErrorCode.STEP_ATTEMPT_LIMIT_EXCEEDED,
96
78
  details: {
97
79
  runId,
98
80
  maximumAttempts
99
81
  }
100
- }, context);
82
+ });
101
83
  this.name = "WorkflowStepAttemptLimitError";
102
84
  this.runId = runId;
103
85
  this.maximumAttempts = maximumAttempts;
104
86
  }
105
87
  static exceeded(runId, maximumAttempts) {
106
- throw new WorkflowStepAttemptLimitError(runId, maximumAttempts, WorkflowStepAttemptLimitError.exceeded);
107
- }
108
- static create(runId, maximumAttempts) {
109
- return new WorkflowStepAttemptLimitError(runId, maximumAttempts, WorkflowStepAttemptLimitError.create);
88
+ throw new WorkflowStepAttemptLimitError(runId, maximumAttempts);
110
89
  }
111
90
  };
112
91
  //#endregion
@@ -1,24 +1,16 @@
1
- import { WorkflowErrorCode } from "../types/error-code.mjs";
2
- import { StreamIdOrName } from "../types/stream-id.mjs";
3
- import { WorkflowErrorDetails } from "../types/error.mjs";
1
+ import { WorkflowErrorCode } from "./codes.mjs";
2
+ import { StreamIdOrName } from "../types/ids.mjs";
3
+ import { ErrorDetails } from "../types/error.mjs";
4
4
  import { WorkflowOptionsError } from "./base.mjs";
5
5
  //#region src/errors/stream.d.ts
6
6
  /** Errors caused by invalid stream operations or stream history. */
7
- declare class WorkflowStreamError extends WorkflowOptionsError {
8
- constructor(message: string, code: WorkflowErrorCode, details?: WorkflowErrorDetails, context?: Function);
9
- static chunkLimitExceeded(this: void, streamId: string, maximumChunks: number): never;
7
+ export declare class WorkflowStreamError extends WorkflowOptionsError {
8
+ constructor(message: string, code: WorkflowErrorCode, details?: ErrorDetails);
10
9
  static readOffsetConflict(this: void): never;
11
- static nonContiguousChunkIndex(this: void, streamId: string, actualIndex: number, expectedIndex: number): never;
12
- static chunkAfterTerminal(this: void, streamId: string, chunkIndex: number, terminalKind: string): never;
13
- static alreadyClosed(this: void, streamId: string): never;
14
10
  }
15
11
  /** Error thrown when a requested workflow stream cannot be found. */
16
- declare class WorkflowStreamNotFoundError extends WorkflowOptionsError {
12
+ export declare class WorkflowStreamNotFoundError extends WorkflowOptionsError {
17
13
  readonly streamIdOrName: StreamIdOrName;
18
- constructor(streamIdOrName: StreamIdOrName, context?: Function);
19
- static notFound(this: void, streamIdOrName: StreamIdOrName): never;
20
- static create(this: void, streamIdOrName: StreamIdOrName): WorkflowStreamNotFoundError;
21
- static isNotFound(error: unknown, streamIdOrName?: StreamIdOrName): boolean;
14
+ constructor(streamIdOrName: StreamIdOrName);
22
15
  }
23
- //#endregion
24
- export { WorkflowStreamError, WorkflowStreamNotFoundError };
16
+ //#endregion
@@ -1,64 +1,30 @@
1
- import { WorkflowErrorCode } from "../types/error-code.mjs";
1
+ import { WorkflowErrorCode } from "./codes.mjs";
2
2
  import { WorkflowOptionsError } from "./base.mjs";
3
- import { workflowErrorRecordView } from "./record-view.mjs";
4
3
  //#region src/errors/stream.ts
5
4
  /** Errors caused by invalid stream operations or stream history. */
6
5
  var WorkflowStreamError = class WorkflowStreamError extends WorkflowOptionsError {
7
- constructor(message, code, details, context) {
8
- super(message, context, {
6
+ constructor(message, code, details) {
7
+ super(message, {
9
8
  code,
10
9
  details
11
10
  });
12
11
  this.name = "WorkflowStreamError";
13
12
  }
14
- static chunkLimitExceeded(streamId, maximumChunks) {
15
- throw new WorkflowStreamError(`Workflow stream ${streamId} chunk count would exceed maximumStreamChunks ${maximumChunks}`, WorkflowErrorCode.STREAM_CHUNK_LIMIT_EXCEEDED, {
16
- streamId,
17
- maximumChunks
18
- }, WorkflowStreamError.chunkLimitExceeded);
19
- }
20
13
  static readOffsetConflict() {
21
- throw new WorkflowStreamError("Cannot include both fromIndex and fromTail", WorkflowErrorCode.STREAM_READ_OFFSET_CONFLICT, void 0, WorkflowStreamError.readOffsetConflict);
22
- }
23
- static nonContiguousChunkIndex(streamId, actualIndex, expectedIndex) {
24
- throw new WorkflowStreamError(`Workflow stream ${streamId} has non-contiguous chunk index ${actualIndex}; expected ${expectedIndex}`, WorkflowErrorCode.STREAM_CHUNK_INDEX_NON_CONTIGUOUS, {
25
- streamId,
26
- actualIndex,
27
- expectedIndex
28
- }, WorkflowStreamError.nonContiguousChunkIndex);
29
- }
30
- static chunkAfterTerminal(streamId, chunkIndex, terminalKind) {
31
- throw new WorkflowStreamError(`Workflow stream ${streamId} has chunk ${chunkIndex} after terminal event ${terminalKind}`, WorkflowErrorCode.STREAM_CHUNK_AFTER_TERMINAL, {
32
- streamId,
33
- chunkIndex,
34
- terminalKind
35
- }, WorkflowStreamError.chunkAfterTerminal);
36
- }
37
- static alreadyClosed(streamId) {
38
- throw new WorkflowStreamError(`Workflow stream is already closed: ${streamId}`, WorkflowErrorCode.STREAM_ALREADY_CLOSED, { streamId }, WorkflowStreamError.alreadyClosed);
14
+ throw new WorkflowStreamError("Cannot include both fromIndex and fromTail", WorkflowErrorCode.STREAM_READ_OFFSET_CONFLICT, void 0);
39
15
  }
40
16
  };
41
17
  /** Error thrown when a requested workflow stream cannot be found. */
42
- var WorkflowStreamNotFoundError = class WorkflowStreamNotFoundError extends WorkflowOptionsError {
18
+ var WorkflowStreamNotFoundError = class extends WorkflowOptionsError {
43
19
  streamIdOrName;
44
- constructor(streamIdOrName, context) {
45
- super(`Workflow stream was not found: ${streamIdOrName}`, context, {
20
+ constructor(streamIdOrName) {
21
+ super(`Workflow stream was not found: ${streamIdOrName}`, {
46
22
  code: WorkflowErrorCode.STREAM_NOT_FOUND,
47
23
  details: { streamIdOrName }
48
24
  });
49
25
  this.name = "WorkflowStreamNotFoundError";
50
26
  this.streamIdOrName = streamIdOrName;
51
27
  }
52
- static notFound(streamIdOrName) {
53
- throw new WorkflowStreamNotFoundError(streamIdOrName, WorkflowStreamNotFoundError.notFound);
54
- }
55
- static create(streamIdOrName) {
56
- return new WorkflowStreamNotFoundError(streamIdOrName, WorkflowStreamNotFoundError.create);
57
- }
58
- static isNotFound(error, streamIdOrName) {
59
- const record = workflowErrorRecordView(error);
60
- return record?.code === WorkflowErrorCode.STREAM_NOT_FOUND && (streamIdOrName === void 0 || record.details?.streamIdOrName === streamIdOrName);
61
- }
62
28
  };
63
29
  //#endregion
64
30
  export { WorkflowStreamError, WorkflowStreamNotFoundError };
@@ -1,7 +1,9 @@
1
- import { WorkflowPluginOptions } from "./types/vite.mjs";
2
- import { workflowPlugin } from "./vite/plugin.mjs";
1
+ import { PluginOptions } from "./types/compiler.mjs";
2
+ import { workflowPlugin } from "./compiler/plugin.mjs";
3
+ import "./esbuild.mjs";
4
+ import "temporal-polyfill/global";
3
5
  //#region src/esbuild.d.ts
4
6
  /** Creates the esbuild plugin that compiles workflow and step directives. */
5
- declare const workflow: (options?: WorkflowPluginOptions | undefined) => import("esbuild").Plugin;
7
+ export declare const workflow: (options?: PluginOptions | undefined) => import("esbuild").Plugin;
6
8
  //#endregion
7
- export { type WorkflowPluginOptions, workflow, workflowPlugin };
9
+ export { type PluginOptions, workflowPlugin };
package/dist/esbuild.mjs CHANGED
@@ -1,4 +1,5 @@
1
- import { workflowPlugin } from "./vite/plugin.mjs";
1
+ import { workflowPlugin } from "./compiler/plugin.mjs";
2
+ import "temporal-polyfill/global";
2
3
  //#region src/esbuild.ts
3
4
  /** Creates the esbuild plugin that compiles workflow and step directives. */
4
5
  const workflow = workflowPlugin.esbuild;
@@ -1,245 +1,16 @@
1
- import { StepId } from "../types/step-id.mjs";
2
- import "../types/step.mjs";
3
- import { EventDescriptor, EventKind, EventRecord } from "../types/events.mjs";
1
+ import { StepId } from "../types/ids.mjs";
2
+ import { EventDescriptor, EventFieldName, EventFieldValue, EventKind, EventRecord } from "../types/events.mjs";
4
3
  //#region src/events/descriptors.d.ts
5
- declare const WORKFLOW_EVENT_DESCRIPTORS: {
6
- readonly workflow_started: {
7
- readonly kind: "workflow_started";
8
- readonly category: "workflow";
9
- readonly cleanup: true;
10
- readonly identityFields: readonly [];
11
- };
12
- readonly workflow_completed: {
13
- readonly kind: "workflow_completed";
14
- readonly category: "workflow";
15
- readonly cleanup: true;
16
- readonly identityFields: readonly [];
17
- };
18
- readonly workflow_failed: {
19
- readonly kind: "workflow_failed";
20
- readonly category: "workflow";
21
- readonly cleanup: true;
22
- readonly identityFields: readonly [];
23
- };
24
- readonly step_started: {
25
- readonly kind: "step_started";
26
- readonly category: "step";
27
- readonly cleanup: true;
28
- readonly stepType: "run";
29
- readonly stepAttempt: "event";
30
- readonly identityFields: readonly ["stepId", "stepName", "count", "attempt"];
31
- };
32
- readonly step_completed: {
33
- readonly kind: "step_completed";
34
- readonly category: "step";
35
- readonly cleanup: true;
36
- readonly stepType: "run";
37
- readonly stepAttempt: "event";
38
- readonly terminalStepAttempt: true;
39
- readonly startedEventType: "step_started";
40
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "attempt"];
41
- readonly identityFields: readonly ["stepId", "stepName", "attempt"];
42
- };
43
- readonly step_failed: {
44
- readonly kind: "step_failed";
45
- readonly category: "step";
46
- readonly cleanup: true;
47
- readonly stepType: "run";
48
- readonly stepAttempt: "event";
49
- readonly terminalStepAttempt: true;
50
- readonly startedEventType: "step_started";
51
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "attempt"];
52
- readonly identityFields: readonly ["stepId", "stepName", "attempt"];
53
- };
54
- readonly sleep_started: {
55
- readonly kind: "sleep_started";
56
- readonly category: "sleep";
57
- readonly cleanup: true;
58
- readonly stepType: "sleep";
59
- readonly stepAttempt: "single";
60
- readonly identityFields: readonly ["stepId", "stepName", "count", "until"];
61
- };
62
- readonly sleep_completed: {
63
- readonly kind: "sleep_completed";
64
- readonly category: "sleep";
65
- readonly cleanup: true;
66
- readonly stepType: "sleep";
67
- readonly stepAttempt: "single";
68
- readonly terminalStepAttempt: true;
69
- readonly startedEventType: "sleep_started";
70
- readonly startedEventMatchFields: readonly ["stepId", "stepName"];
71
- readonly identityFields: readonly ["stepId", "stepName"];
72
- };
73
- readonly child_workflow_started: {
74
- readonly kind: "child_workflow_started";
75
- readonly category: "child_workflow";
76
- readonly cleanup: true;
77
- readonly stepType: "workflow";
78
- readonly stepAttempt: "event";
79
- readonly identityFields: readonly ["stepId", "stepName", "count", "attempt", "childRunId", "cancellation"];
80
- };
81
- readonly child_workflow_completed: {
82
- readonly kind: "child_workflow_completed";
83
- readonly category: "child_workflow";
84
- readonly cleanup: true;
85
- readonly stepType: "workflow";
86
- readonly stepAttempt: "event";
87
- readonly terminalStepAttempt: true;
88
- readonly startedEventType: "child_workflow_started";
89
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "attempt", "childRunId"];
90
- readonly identityFields: readonly ["stepId", "stepName", "attempt", "childRunId"];
91
- };
92
- readonly child_workflow_failed: {
93
- readonly kind: "child_workflow_failed";
94
- readonly category: "child_workflow";
95
- readonly cleanup: true;
96
- readonly stepType: "workflow";
97
- readonly stepAttempt: "event";
98
- readonly terminalStepAttempt: true;
99
- readonly startedEventType: "child_workflow_started";
100
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "attempt", "childRunId"];
101
- readonly identityFields: readonly ["stepId", "stepName", "attempt", "childRunId"];
102
- };
103
- readonly message_sent: {
104
- readonly kind: "message_sent";
105
- readonly category: "message";
106
- readonly cleanup: true;
107
- readonly identityFields: readonly ["messageId", "idempotencyKey"];
108
- readonly valueIdentityFields: readonly ["payload"];
109
- readonly stringListIdentityFields: readonly ["waiterStepIds"];
110
- };
111
- readonly message_send_started: {
112
- readonly kind: "message_send_started";
113
- readonly category: "message";
114
- readonly cleanup: true;
115
- readonly stepType: "message-send";
116
- readonly stepAttempt: "single";
117
- readonly identityFields: readonly ["stepId", "stepName", "count", "targetRunId", "messageId"];
118
- };
119
- readonly message_send_completed: {
120
- readonly kind: "message_send_completed";
121
- readonly category: "message";
122
- readonly cleanup: true;
123
- readonly stepType: "message-send";
124
- readonly stepAttempt: "single";
125
- readonly terminalStepAttempt: true;
126
- readonly startedEventType: "message_send_started";
127
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "targetRunId", "messageId"];
128
- readonly identityFields: readonly ["stepId", "stepName", "targetRunId", "messageId"];
129
- };
130
- readonly message_send_failed: {
131
- readonly kind: "message_send_failed";
132
- readonly category: "message";
133
- readonly cleanup: true;
134
- readonly stepType: "message-send";
135
- readonly stepAttempt: "single";
136
- readonly terminalStepAttempt: true;
137
- readonly startedEventType: "message_send_started";
138
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "targetRunId", "messageId"];
139
- readonly identityFields: readonly ["stepId", "stepName", "targetRunId", "messageId"];
140
- };
141
- readonly message_wait_started: {
142
- readonly kind: "message_wait_started";
143
- readonly category: "message";
144
- readonly cleanup: true;
145
- readonly stepType: "message-wait";
146
- readonly stepAttempt: "single";
147
- readonly identityFields: readonly ["stepId", "stepName", "count", "messageId"];
148
- };
149
- readonly message_wait_completed: {
150
- readonly kind: "message_wait_completed";
151
- readonly category: "message";
152
- readonly cleanup: true;
153
- readonly stepType: "message-wait";
154
- readonly stepAttempt: "single";
155
- readonly terminalStepAttempt: true;
156
- readonly startedEventType: "message_wait_started";
157
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "messageId"];
158
- readonly identityFields: readonly ["stepId", "stepName", "messageId", "messageTimestamp"];
159
- };
160
- readonly message_wait_failed: {
161
- readonly kind: "message_wait_failed";
162
- readonly category: "message";
163
- readonly cleanup: true;
164
- readonly stepType: "message-wait";
165
- readonly stepAttempt: "single";
166
- readonly terminalStepAttempt: true;
167
- readonly startedEventType: "message_wait_started";
168
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "messageId"];
169
- readonly identityFields: readonly ["stepId", "stepName", "messageId"];
170
- };
171
- readonly stream_started: {
172
- readonly kind: "stream_started";
173
- readonly category: "stream";
174
- readonly cleanup: true;
175
- readonly stepType: "stream";
176
- readonly stepAttempt: "single";
177
- readonly identityFields: readonly ["stepId", "stepName", "count", "streamId", "contentType"];
178
- readonly valueIdentityFields: readonly ["metadata"];
179
- };
180
- readonly stream_chunk: {
181
- readonly kind: "stream_chunk";
182
- readonly category: "stream";
183
- readonly cleanup: true;
184
- readonly identityFields: readonly ["stepId", "stepName", "streamId", "index"];
185
- readonly valueIdentityFields: readonly ["chunk"];
186
- };
187
- readonly stream_closed: {
188
- readonly kind: "stream_closed";
189
- readonly category: "stream";
190
- readonly cleanup: true;
191
- readonly stepType: "stream";
192
- readonly stepAttempt: "single";
193
- readonly terminalStepAttempt: true;
194
- readonly startedEventType: "stream_started";
195
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "streamId"];
196
- readonly identityFields: readonly ["stepId", "stepName", "streamId"];
197
- };
198
- readonly stream_failed: {
199
- readonly kind: "stream_failed";
200
- readonly category: "stream";
201
- readonly cleanup: true;
202
- readonly stepType: "stream";
203
- readonly stepAttempt: "single";
204
- readonly terminalStepAttempt: true;
205
- readonly startedEventType: "stream_started";
206
- readonly startedEventMatchFields: readonly ["stepId", "stepName", "streamId"];
207
- readonly identityFields: readonly ["stepId", "stepName", "streamId"];
208
- };
209
- readonly deterministic_value_recorded: {
210
- readonly kind: "deterministic_value_recorded";
211
- readonly category: "deterministic";
212
- readonly cleanup: true;
213
- readonly stepType: "deterministic";
214
- readonly stepAttempt: "single";
215
- readonly identityFields: readonly ["stepId", "stepName", "count"];
216
- readonly valueIdentityFields: readonly ["value"];
217
- };
218
- readonly metadata_set: {
219
- readonly kind: "metadata_set";
220
- readonly category: "metadata";
221
- readonly cleanup: false;
222
- readonly stepType: "metadata";
223
- readonly identityFields: readonly ["stepId", "stepName", "count"];
224
- readonly valueIdentityFields: readonly ["metadata"];
225
- };
226
- readonly attributes_set: {
227
- readonly kind: "attributes_set";
228
- readonly category: "metadata";
229
- readonly cleanup: false;
230
- readonly stepType: "attributes";
231
- readonly identityFields: readonly ["stepId", "stepName", "count"];
232
- readonly valueIdentityFields: readonly ["attributes"];
233
- };
234
- };
235
- declare function isEventKindForCleanup(kind: string): kind is EventKind;
236
- declare function isCleanupEventRecord(event: EventRecord): boolean;
237
- declare function isWorkflowRecordedStepEventKind(kind: string): kind is EventKind;
238
- declare function isWorkflowTerminalStepAttemptEvent(event: EventRecord): event is EventRecord & {
4
+ export declare function isCleanupEventRecord(event: EventRecord): boolean;
5
+ export declare function isWorkflowRecordedStepEventKind(kind: string): kind is EventKind;
6
+ export declare function isWorkflowTerminalStepAttemptEvent(event: EventRecord): event is EventRecord & {
239
7
  readonly stepId: StepId;
240
8
  };
241
- declare function getWorkflowEventStepAttempt(event: EventRecord): number | undefined;
242
- declare function getWorkflowEventStepAttemptKey(event: EventRecord): string | undefined;
243
- declare function getEventDescriptor(kind: EventKind): EventDescriptor;
9
+ export declare function getWorkflowEventStepAttempt(event: EventRecord): number | undefined;
10
+ export declare function getWorkflowEventStepAttemptKey(event: EventRecord): string | undefined;
11
+ export declare function getEventDescriptor(kind: EventKind): EventDescriptor;
12
+ /** Reads a descriptor-selected field from a durable event variant. */
13
+ export declare function getEventField(event: EventRecord, field: EventFieldName): EventFieldValue | undefined;
14
+ export declare function eventFieldsMatch(left: EventRecord, right: EventRecord, fields?: readonly EventFieldName[]): boolean;
244
15
  //#endregion
245
- export { type EventDescriptor, WORKFLOW_EVENT_DESCRIPTORS, getEventDescriptor, getWorkflowEventStepAttempt, getWorkflowEventStepAttemptKey, isCleanupEventRecord, isEventKindForCleanup, isWorkflowRecordedStepEventKind, isWorkflowTerminalStepAttemptEvent };
16
+ export type { EventDescriptor };
@@ -1,4 +1,4 @@
1
- import { makeWorkflowStepAttemptKey } from "../history/attempt-key.mjs";
1
+ import { stepAttemptKey } from "../store-keys.mjs";
2
2
  //#region src/events/descriptors.ts
3
3
  function defineEventDescriptors(descriptors) {
4
4
  return descriptors;
@@ -374,8 +374,8 @@ const WORKFLOW_EVENT_DESCRIPTORS = defineEventDescriptors({
374
374
  }
375
375
  });
376
376
  const WORKFLOW_EVENT_KINDS_FOR_CLEANUP = new Set(Object.values(WORKFLOW_EVENT_DESCRIPTORS).filter((descriptor) => descriptor.cleanup).map((descriptor) => descriptor.kind));
377
- const WORKFLOW_RECORDED_STEP_EVENT_KINDS = new Set(Object.values(WORKFLOW_EVENT_DESCRIPTORS).filter((descriptor) => descriptor.stepType !== void 0).map((descriptor) => descriptor.kind));
378
- const WORKFLOW_TERMINAL_STEP_EVENT_KINDS = new Set(Object.values(WORKFLOW_EVENT_DESCRIPTORS).filter((descriptor) => descriptor.terminalStepAttempt === true).map((descriptor) => descriptor.kind));
377
+ const WORKFLOW_RECORDED_STEP_EVENT_KINDS = new Set(Object.values(WORKFLOW_EVENT_DESCRIPTORS).filter((descriptor) => "stepType" in descriptor).map((descriptor) => descriptor.kind));
378
+ const WORKFLOW_TERMINAL_STEP_EVENT_KINDS = new Set(Object.values(WORKFLOW_EVENT_DESCRIPTORS).filter((descriptor) => "terminalStepAttempt" in descriptor && descriptor.terminalStepAttempt === true).map((descriptor) => descriptor.kind));
379
379
  function isEventKindForCleanup(kind) {
380
380
  return WORKFLOW_EVENT_KINDS_FOR_CLEANUP.has(kind);
381
381
  }
@@ -396,10 +396,17 @@ function getWorkflowEventStepAttempt(event) {
396
396
  function getWorkflowEventStepAttemptKey(event) {
397
397
  if (!("stepId" in event)) return;
398
398
  const attempt = getWorkflowEventStepAttempt(event);
399
- return attempt === void 0 ? void 0 : makeWorkflowStepAttemptKey(event.stepId, attempt);
399
+ return attempt === void 0 ? void 0 : stepAttemptKey(event.stepId, attempt);
400
400
  }
401
401
  function getEventDescriptor(kind) {
402
402
  return WORKFLOW_EVENT_DESCRIPTORS[kind];
403
403
  }
404
+ /** Reads a descriptor-selected field from a durable event variant. */
405
+ function getEventField(event, field) {
406
+ return event[field];
407
+ }
408
+ function eventFieldsMatch(left, right, fields = []) {
409
+ return fields.every((field) => getEventField(left, field) === getEventField(right, field));
410
+ }
404
411
  //#endregion
405
- export { WORKFLOW_EVENT_DESCRIPTORS, getEventDescriptor, getWorkflowEventStepAttempt, getWorkflowEventStepAttemptKey, isCleanupEventRecord, isEventKindForCleanup, isWorkflowRecordedStepEventKind, isWorkflowTerminalStepAttemptEvent };
412
+ export { eventFieldsMatch, getEventDescriptor, getEventField, getWorkflowEventStepAttempt, getWorkflowEventStepAttemptKey, isCleanupEventRecord, isWorkflowRecordedStepEventKind, isWorkflowTerminalStepAttemptEvent };
@@ -1,8 +1,6 @@
1
- import { RunId } from "../types/run-id.mjs";
2
- import { WorkflowStepAttemptRecord } from "../types/step-attempts.mjs";
3
- import "../types/run.mjs";
1
+ import { RunId } from "../types/ids.mjs";
2
+ import { StepAttemptRecord } from "../types/step-attempts.mjs";
4
3
  import { EventRecord } from "../types/events.mjs";
5
4
  //#region src/history/projection.d.ts
6
- declare function applyWorkflowStepAttemptEvent(runId: RunId, event: EventRecord, current: WorkflowStepAttemptRecord | undefined): WorkflowStepAttemptRecord | undefined;
7
- //#endregion
8
- export { applyWorkflowStepAttemptEvent };
5
+ export declare function applyStepAttemptEvent(runId: RunId, event: EventRecord, current: StepAttemptRecord | undefined): StepAttemptRecord | undefined;
6
+ //#endregion