@temelj/workflow 0.0.0-alpha.3 → 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 +119 -280
  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,138 +0,0 @@
1
- import { greatestOptionalNumber, isScheduledWorkflowRunStatus, isWorkflowRunStatus } from "../../utility.mjs";
2
- import { optionalProperty, optionalSortedStringSetProperty, sortedStringSet } from "../../collection.mjs";
3
- import { latestOptionalTimestamp } from "../../temporal.mjs";
4
- import { createWorkflowRunRetryReasonCounts, createWorkflowRunStatusCounts } from "./run-metrics.mjs";
5
- //#region src/engine/summary/child-workflow-runs.ts
6
- async function getChildRunsForAttempts(store, parentRunId, attempts) {
7
- const childRunIds = [...new Set(attempts.flatMap((attempt) => attempt.childRunId === void 0 ? [] : [attempt.childRunId]))];
8
- return (await Promise.all(childRunIds.map(async (runId) => await store.getRun(runId)))).filter((run) => run !== void 0 && attempts.some((attempt) => isChildRunForWorkflowStepAttempt(run, parentRunId, attempt)));
9
- }
10
- /** Creates a reducer for child workflow run state embedded in active child workflow waits. */
11
- function createWorkflowChildWorkflowRunSummaryReducer() {
12
- const childStatus = createWorkflowRunStatusCounts();
13
- const retry = createWorkflowChildWorkflowRunRetryAccumulator();
14
- const failure = createWorkflowChildWorkflowRunFailureAccumulator();
15
- const failedChildRunIds = /* @__PURE__ */ new Set();
16
- const canceledChildRunIds = /* @__PURE__ */ new Set();
17
- return {
18
- addRun(run) {
19
- if (!isWorkflowRunStatus(run.status)) return;
20
- const runStatus = run.status;
21
- childStatus[runStatus]++;
22
- addWorkflowChildWorkflowRunRetry(retry, run, runStatus);
23
- if (runStatus === "failed") {
24
- addWorkflowChildWorkflowRunFailure(failure, run);
25
- failedChildRunIds.add(run.id);
26
- }
27
- if (runStatus === "canceled") canceledChildRunIds.add(run.id);
28
- },
29
- finish() {
30
- return {
31
- childStatus,
32
- ...optionalSortedStringSetProperty("retryChildRunIds", retry.retryRunIds),
33
- ...optionalSortedStringSetProperty("failedChildRunIds", failedChildRunIds),
34
- ...optionalSortedStringSetProperty("canceledChildRunIds", canceledChildRunIds),
35
- ...finishWorkflowChildWorkflowRunRetrySummary(retry),
36
- ...finishWorkflowChildWorkflowRunFailureSummary(failure)
37
- };
38
- }
39
- };
40
- }
41
- function summarizeChildWorkflowRuns(runs) {
42
- const reducer = createWorkflowChildWorkflowRunSummaryReducer();
43
- for (const run of runs) reducer.addRun(run);
44
- return reducer.finish();
45
- }
46
- function isChildRunForWorkflowStepAttempt(run, parentRunId, attempt) {
47
- return run.parentRunId === parentRunId && run.parentStepId === attempt.stepId && run.parentStepName === attempt.stepName && run.parentStepAttempt === attempt.attempt && attempt.childRunId === run.id && attempt.workflowName === run.workflowName && attempt.workflowVersion === run.workflowVersion;
48
- }
49
- function createWorkflowChildWorkflowRunRetryAccumulator() {
50
- return {
51
- total: 0,
52
- reason: createWorkflowRunRetryReasonCounts(),
53
- retryRunIds: /* @__PURE__ */ new Set(),
54
- retryStepIds: /* @__PURE__ */ new Set(),
55
- retryStepNames: /* @__PURE__ */ new Set()
56
- };
57
- }
58
- function createWorkflowChildWorkflowRunFailureAccumulator() {
59
- return {
60
- total: 0,
61
- errors: /* @__PURE__ */ new Map(),
62
- failedRunIds: /* @__PURE__ */ new Set()
63
- };
64
- }
65
- function addWorkflowChildWorkflowRunRetry(retry, run, runStatus) {
66
- const retryReason = workflowChildWorkflowRunRetryReason(run);
67
- if (!isScheduledWorkflowRunStatus(runStatus) || retryReason === void 0) return;
68
- retry.total++;
69
- retry.retryRunIds.add(run.id);
70
- addWorkflowChildWorkflowRunRetryMetadata(retry, run);
71
- retry.reason[retryReason]++;
72
- setWorkflowChildWorkflowRunHighestAttempt(retry, run);
73
- setWorkflowChildWorkflowRunNextRetry(retry, run);
74
- }
75
- function setWorkflowChildWorkflowRunHighestAttempt(retry, run) {
76
- retry.highestAttempt = greatestOptionalNumber(retry.highestAttempt, run.retryAttempt);
77
- }
78
- function addWorkflowChildWorkflowRunRetryMetadata(retry, run) {
79
- if (run.retryStepId !== void 0) retry.retryStepIds.add(run.retryStepId);
80
- if (run.retryStepName !== void 0) retry.retryStepNames.add(run.retryStepName);
81
- }
82
- function setWorkflowChildWorkflowRunNextRetry(retry, run) {
83
- if (run.retryAt === void 0 || retry.nextRetryAt !== void 0 && Temporal.Instant.compare(run.retryAt, retry.nextRetryAt) >= 0) return;
84
- retry.nextRetryAt = run.retryAt;
85
- retry.nextRetryRunId = run.id;
86
- }
87
- function workflowChildWorkflowRunRetryReason(run) {
88
- return run.retryReason === "workflow" || run.retryReason === "step" || run.retryReason === "missing_implementation" ? run.retryReason : void 0;
89
- }
90
- function addWorkflowChildWorkflowRunFailure(failure, run) {
91
- failure.total++;
92
- failure.failedRunIds.add(run.id);
93
- failure.latestFailedAt = latestOptionalTimestamp(failure.latestFailedAt, run.finishedAt);
94
- addWorkflowChildWorkflowRunFailureError(failure, run);
95
- }
96
- function addWorkflowChildWorkflowRunFailureError(failure, run) {
97
- const errorName = run.error?.name ?? "Error";
98
- const current = failure.errors.get(errorName) ?? {
99
- count: 0,
100
- failedRunIds: /* @__PURE__ */ new Set()
101
- };
102
- current.count++;
103
- current.failedRunIds.add(run.id);
104
- current.latestFailedAt = latestOptionalTimestamp(current.latestFailedAt, run.finishedAt);
105
- failure.errors.set(errorName, current);
106
- }
107
- function finishWorkflowChildWorkflowRunRetrySummary(retry) {
108
- return retry.total === 0 ? {} : { childRetry: {
109
- total: retry.total,
110
- retryRunIds: sortedStringSet(retry.retryRunIds),
111
- retryStepIds: sortedStringSet(retry.retryStepIds),
112
- retryStepNames: sortedStringSet(retry.retryStepNames),
113
- reason: retry.reason,
114
- ...retry.nextRetryAt === void 0 ? {} : {
115
- nextRetryAt: retry.nextRetryAt,
116
- ...optionalProperty("nextRetryRunId", retry.nextRetryRunId)
117
- },
118
- ...optionalProperty("highestAttempt", retry.highestAttempt)
119
- } };
120
- }
121
- function finishWorkflowChildWorkflowRunFailureSummary(failure) {
122
- return failure.total === 0 ? {} : { childFailure: {
123
- total: failure.total,
124
- failedRunIds: sortedStringSet(failure.failedRunIds),
125
- errors: finishWorkflowChildWorkflowRunFailureErrors(failure.errors),
126
- ...optionalProperty("latestFailedAt", failure.latestFailedAt)
127
- } };
128
- }
129
- function finishWorkflowChildWorkflowRunFailureErrors(errors) {
130
- return [...errors.entries()].sort(([left], [right]) => left.localeCompare(right)).map(([name, summary]) => ({
131
- name,
132
- count: summary.count,
133
- failedRunIds: sortedStringSet(summary.failedRunIds),
134
- ...optionalProperty("latestFailedAt", summary.latestFailedAt)
135
- }));
136
- }
137
- //#endregion
138
- export { createWorkflowChildWorkflowRunSummaryReducer, getChildRunsForAttempts, summarizeChildWorkflowRuns };
@@ -1,21 +0,0 @@
1
- import { RunId } from "../../types/run-id.mjs";
2
- import { WorkflowRunChildWorkflowSummary } from "../../types/summary.mjs";
3
- import { WorkflowStepAttemptRecord } from "../../types/step-attempts.mjs";
4
- import { WorkflowRunRecord } from "../../types/run.mjs";
5
- //#region src/engine/summary/child-workflow-waits.d.ts
6
- interface WorkflowRunChildWorkflowWaitInput {
7
- readonly runId: RunId;
8
- readonly attempts: readonly WorkflowStepAttemptRecord[];
9
- readonly childRuns: readonly WorkflowRunRecord[];
10
- }
11
- interface WorkflowRunChildWorkflowWaitSummary {
12
- readonly childWorkflow?: WorkflowRunChildWorkflowSummary;
13
- }
14
- interface WorkflowRunChildWorkflowWaitSummaryReducer {
15
- addChildWorkflowAttempts(runId: RunId, attempts: readonly WorkflowStepAttemptRecord[], childRuns: readonly WorkflowRunRecord[]): void;
16
- finish(): WorkflowRunChildWorkflowWaitSummary;
17
- }
18
- /** Creates a reducer for active child workflow waits across workflow runs. */
19
- declare function createWorkflowRunChildWorkflowWaitSummaryReducer(): WorkflowRunChildWorkflowWaitSummaryReducer;
20
- //#endregion
21
- export { WorkflowRunChildWorkflowWaitInput, WorkflowRunChildWorkflowWaitSummaryReducer, createWorkflowRunChildWorkflowWaitSummaryReducer };
@@ -1,67 +0,0 @@
1
- import { makeWorkflowRunStepAttemptKey } from "../../utility.mjs";
2
- import { optionalProperty, sortedStringSet } from "../../collection.mjs";
3
- import { earliestOptionalTimestamp, shouldReplaceWorkflowEarliestDefinedInstant } from "../../temporal.mjs";
4
- import { summarizeChildWorkflowRuns } from "./child-workflow-runs.mjs";
5
- //#region src/engine/summary/child-workflow-waits.ts
6
- /** Creates a reducer for active child workflow waits across workflow runs. */
7
- function createWorkflowRunChildWorkflowWaitSummaryReducer() {
8
- const waits = createWorkflowRunChildWorkflowWaitAccumulator();
9
- return {
10
- addChildWorkflowAttempts(runId, attempts, childRuns) {
11
- for (const attempt of attempts) addWorkflowRunChildWorkflowWaitAttempt(waits, runId, attempt);
12
- for (const childRun of childRuns) waits.childRunRecords.set(childRun.id, childRun);
13
- },
14
- finish() {
15
- return finishWorkflowRunChildWorkflowWaitSummary(waits);
16
- }
17
- };
18
- }
19
- function createWorkflowRunChildWorkflowWaitAccumulator() {
20
- return {
21
- total: 0,
22
- attemptKeys: /* @__PURE__ */ new Set(),
23
- childRunIds: /* @__PURE__ */ new Set(),
24
- childRunRecords: /* @__PURE__ */ new Map(),
25
- runIds: /* @__PURE__ */ new Set(),
26
- stepIds: /* @__PURE__ */ new Set(),
27
- workflows: /* @__PURE__ */ new Set()
28
- };
29
- }
30
- function addWorkflowRunChildWorkflowWaitAttempt(waits, runId, attempt) {
31
- const attemptKey = makeWorkflowRunStepAttemptKey(runId, attempt);
32
- waits.total++;
33
- waits.runIds.add(runId);
34
- waits.stepIds.add(attempt.stepId);
35
- waits.attemptKeys.add(attemptKey);
36
- waits.oldestStartedAt = earliestOptionalTimestamp(waits.oldestStartedAt, attempt.startedAt);
37
- if (shouldReplaceWorkflowEarliestDefinedInstant(waits.nextTimeoutAt, attempt.timeoutAt)) setWorkflowRunChildWorkflowWaitNextTimeout(waits, runId, attempt, attemptKey);
38
- if (attempt.childRunId !== void 0) waits.childRunIds.add(attempt.childRunId);
39
- if (attempt.workflowName !== void 0) waits.workflows.add(attempt.workflowVersion === void 0 ? attempt.workflowName : `${attempt.workflowName}@${attempt.workflowVersion}`);
40
- }
41
- function setWorkflowRunChildWorkflowWaitNextTimeout(waits, runId, attempt, attemptKey) {
42
- waits.nextTimeoutAt = attempt.timeoutAt;
43
- waits.nextTimeoutRunId = runId;
44
- waits.nextTimeoutStepId = attempt.stepId;
45
- waits.nextTimeoutAttemptKey = attemptKey;
46
- }
47
- function finishWorkflowRunChildWorkflowWaitSummary(waits) {
48
- return waits.total === 0 ? {} : { childWorkflow: {
49
- activeWaits: waits.total,
50
- activeWaitRuns: waits.runIds.size,
51
- waitRunIds: sortedStringSet(waits.runIds),
52
- waitStepIds: sortedStringSet(waits.stepIds),
53
- waitAttemptKeys: sortedStringSet(waits.attemptKeys),
54
- childRunIds: sortedStringSet(waits.childRunIds),
55
- workflows: sortedStringSet(waits.workflows),
56
- ...summarizeChildWorkflowRuns([...waits.childRunRecords.values()]),
57
- ...optionalProperty("oldestWaitStartedAt", waits.oldestStartedAt),
58
- ...waits.nextTimeoutAt === void 0 ? {} : {
59
- nextWaitTimeoutAt: waits.nextTimeoutAt,
60
- ...optionalProperty("nextWaitTimeoutRunId", waits.nextTimeoutRunId),
61
- ...optionalProperty("nextWaitTimeoutStepId", waits.nextTimeoutStepId),
62
- ...optionalProperty("nextWaitTimeoutAttemptKey", waits.nextTimeoutAttemptKey)
63
- }
64
- } };
65
- }
66
- //#endregion
67
- export { createWorkflowRunChildWorkflowWaitSummaryReducer };
@@ -1,11 +0,0 @@
1
- import { WorkflowRecoveryChildWorkflowWaitSummary } from "../../types/summary.mjs";
2
- import { WorkflowStepAttemptRecord } from "../../types/step-attempts.mjs";
3
- import { WorkflowRunRecord } from "../../types/run.mjs";
4
- //#region src/engine/summary/recovery-child-workflow-waits.d.ts
5
- interface WorkflowRecoveryChildWorkflowWaitSummaryReducer {
6
- addAttempts(attempts: readonly WorkflowStepAttemptRecord[]): void;
7
- finish(): WorkflowRecoveryChildWorkflowWaitSummary;
8
- }
9
- declare function createWorkflowRecoveryChildWorkflowWaitSummaryReducer(childRuns: readonly WorkflowRunRecord[], now: Temporal.Instant): WorkflowRecoveryChildWorkflowWaitSummaryReducer;
10
- //#endregion
11
- export { WorkflowRecoveryChildWorkflowWaitSummaryReducer, createWorkflowRecoveryChildWorkflowWaitSummaryReducer };
@@ -1,89 +0,0 @@
1
- import { earliestWorkflowRecoveryTimestamp } from "./recovery-run-timestamps.mjs";
2
- //#region src/engine/summary/recovery-child-workflow-waits.ts
3
- function createWorkflowRecoveryChildWorkflowWaitSummaryReducer(childRuns, now) {
4
- const childWorkflow = createWorkflowChildWorkflowWaitAccumulator();
5
- const childByRunId = new Map(childRuns.map((run) => [run.id, run]));
6
- return {
7
- addAttempts(attempts) {
8
- for (const attempt of attempts) addWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, childByRunId, now);
9
- },
10
- finish() {
11
- return finishWorkflowChildWorkflowWaitSummary(childWorkflow);
12
- }
13
- };
14
- }
15
- function createWorkflowChildWorkflowWaitAccumulator() {
16
- return {
17
- runIds: /* @__PURE__ */ new Set(),
18
- terminalRunIds: /* @__PURE__ */ new Set(),
19
- missingRunIds: /* @__PURE__ */ new Set(),
20
- timedOutRunIds: /* @__PURE__ */ new Set(),
21
- terminalStepIds: /* @__PURE__ */ new Set(),
22
- missingStepIds: /* @__PURE__ */ new Set(),
23
- timedOutStepIds: /* @__PURE__ */ new Set(),
24
- childRunIds: /* @__PURE__ */ new Set(),
25
- completedChildRunIds: /* @__PURE__ */ new Set(),
26
- failedChildRunIds: /* @__PURE__ */ new Set(),
27
- canceledChildRunIds: /* @__PURE__ */ new Set()
28
- };
29
- }
30
- function addWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, childByRunId, now) {
31
- if (attempt.status !== "running" || attempt.kind !== "workflow") return;
32
- childWorkflow.runIds.add(attempt.runId);
33
- if (!addResolvedWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, childByRunId)) addTimedOutWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, now);
34
- }
35
- function addResolvedWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, childByRunId) {
36
- if (attempt.childRunId === void 0) {
37
- addMissingWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt);
38
- return true;
39
- }
40
- childWorkflow.childRunIds.add(attempt.childRunId);
41
- const child = childByRunId.get(attempt.childRunId);
42
- if (child === void 0) {
43
- addMissingWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt);
44
- return true;
45
- }
46
- if (child.status !== "completed" && child.status !== "failed" && child.status !== "canceled") return false;
47
- childWorkflow.terminalRunIds.add(attempt.runId);
48
- childWorkflow.terminalStepIds.add(attempt.stepId);
49
- if (child.status === "completed") childWorkflow.completedChildRunIds.add(child.id);
50
- else if (child.status === "failed") childWorkflow.failedChildRunIds.add(child.id);
51
- else childWorkflow.canceledChildRunIds.add(child.id);
52
- return true;
53
- }
54
- function addMissingWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt) {
55
- childWorkflow.missingRunIds.add(attempt.runId);
56
- childWorkflow.missingStepIds.add(attempt.stepId);
57
- }
58
- function addTimedOutWorkflowChildWorkflowWaitAttempt(childWorkflow, attempt, now) {
59
- if (attempt.timeoutAt === void 0) return;
60
- if (Temporal.Instant.compare(attempt.timeoutAt, now) <= 0) {
61
- childWorkflow.timedOutRunIds.add(attempt.runId);
62
- childWorkflow.timedOutStepIds.add(attempt.stepId);
63
- return;
64
- }
65
- childWorkflow.nextTimeout = earliestWorkflowRecoveryTimestamp(childWorkflow.nextTimeout, attempt.runId, attempt.timeoutAt);
66
- }
67
- function finishWorkflowChildWorkflowWaitSummary(childWorkflow) {
68
- return {
69
- active: childWorkflow.runIds.size,
70
- terminal: childWorkflow.terminalRunIds.size,
71
- missing: childWorkflow.missingRunIds.size,
72
- timedOut: childWorkflow.timedOutRunIds.size,
73
- runIds: [...childWorkflow.runIds].sort(),
74
- terminalRunIds: [...childWorkflow.terminalRunIds].sort(),
75
- missingRunIds: [...childWorkflow.missingRunIds].sort(),
76
- timedOutRunIds: [...childWorkflow.timedOutRunIds].sort(),
77
- terminalStepIds: [...childWorkflow.terminalStepIds].sort(),
78
- missingStepIds: [...childWorkflow.missingStepIds].sort(),
79
- timedOutStepIds: [...childWorkflow.timedOutStepIds].sort(),
80
- childRunIds: [...childWorkflow.childRunIds].sort(),
81
- completedChildRunIds: [...childWorkflow.completedChildRunIds].sort(),
82
- failedChildRunIds: [...childWorkflow.failedChildRunIds].sort(),
83
- canceledChildRunIds: [...childWorkflow.canceledChildRunIds].sort(),
84
- ...childWorkflow.nextTimeout === void 0 ? {} : { nextTimeoutAt: childWorkflow.nextTimeout.timestamp },
85
- ...childWorkflow.nextTimeout === void 0 ? {} : { nextTimeoutRunId: childWorkflow.nextTimeout.runId }
86
- };
87
- }
88
- //#endregion
89
- export { createWorkflowRecoveryChildWorkflowWaitSummaryReducer };
@@ -1,16 +0,0 @@
1
- import { WorkflowRecoveryDueSummary } from "../../types/summary.mjs";
2
- import { WorkflowRunRecord } from "../../types/run.mjs";
3
- import { WorkflowRecoveryTimestamp } from "./recovery-run-timestamps.mjs";
4
- //#region src/engine/summary/recovery-due-runs.d.ts
5
- interface WorkflowRecoveryDueRunSummaryParts {
6
- readonly due: WorkflowRecoveryDueSummary;
7
- readonly dueRunIds: readonly string[];
8
- readonly nextAvailable?: WorkflowRecoveryTimestamp;
9
- }
10
- interface WorkflowRecoveryDueRunSummaryReducer {
11
- addRun(run: WorkflowRunRecord): void;
12
- finish(): WorkflowRecoveryDueRunSummaryParts;
13
- }
14
- declare function createWorkflowRecoveryDueRunSummaryReducer(now: Temporal.Instant): WorkflowRecoveryDueRunSummaryReducer;
15
- //#endregion
16
- export { WorkflowRecoveryDueRunSummaryParts, WorkflowRecoveryDueRunSummaryReducer, createWorkflowRecoveryDueRunSummaryReducer };
@@ -1,52 +0,0 @@
1
- import { isScheduledWorkflowRunStatus } from "../../utility.mjs";
2
- import { earliestWorkflowRecoveryTimestamp, isWorkflowRecoveryRunDueAt } from "./recovery-run-timestamps.mjs";
3
- //#region src/engine/summary/recovery-due-runs.ts
4
- function createWorkflowRecoveryDueRunSummaryReducer(now) {
5
- const due = createWorkflowRecoveryDueRunAccumulator();
6
- return {
7
- addRun(run) {
8
- addWorkflowRecoveryDueRun(due, run, now);
9
- },
10
- finish() {
11
- return {
12
- due: finishWorkflowRecoveryDueSummary(due),
13
- dueRunIds: [...due.runIds].sort(),
14
- ...due.nextAvailable === void 0 ? {} : { nextAvailable: due.nextAvailable }
15
- };
16
- }
17
- };
18
- }
19
- function createWorkflowRecoveryDueRunAccumulator() {
20
- return {
21
- runIds: /* @__PURE__ */ new Set(),
22
- pendingRunIds: /* @__PURE__ */ new Set(),
23
- waitingRunIds: /* @__PURE__ */ new Set(),
24
- invalidScheduleRunIds: /* @__PURE__ */ new Set()
25
- };
26
- }
27
- function addWorkflowRecoveryDueRun(due, run, now) {
28
- if (!isScheduledWorkflowRunStatus(run.status)) return;
29
- const availableAt = run.availableAt;
30
- if (isWorkflowRecoveryRunDueAt(availableAt, now)) {
31
- due.runIds.add(run.id);
32
- if (run.status === "pending") due.pendingRunIds.add(run.id);
33
- else due.waitingRunIds.add(run.id);
34
- return;
35
- }
36
- if (availableAt !== void 0) due.nextAvailable = earliestWorkflowRecoveryTimestamp(due.nextAvailable, run.id, availableAt);
37
- }
38
- function finishWorkflowRecoveryDueSummary(due) {
39
- return {
40
- total: due.runIds.size,
41
- runIds: [...due.runIds].sort(),
42
- pendingRunIds: [...due.pendingRunIds].sort(),
43
- waitingRunIds: [...due.waitingRunIds].sort(),
44
- invalidScheduleRunIds: [...due.invalidScheduleRunIds].sort(),
45
- ...due.nextAvailable === void 0 ? {} : {
46
- nextAvailableAt: due.nextAvailable.timestamp,
47
- nextAvailableRunId: due.nextAvailable.runId
48
- }
49
- };
50
- }
51
- //#endregion
52
- export { createWorkflowRecoveryDueRunSummaryReducer };
@@ -1,14 +0,0 @@
1
- import { WorkflowRecoveryFailedSummary } from "../../types/summary.mjs";
2
- import { WorkflowRunRecord } from "../../types/run.mjs";
3
- //#region src/engine/summary/recovery-failed-runs.d.ts
4
- interface WorkflowRecoveryFailedRunSummaryParts {
5
- readonly failed: WorkflowRecoveryFailedSummary;
6
- readonly failedRunIds: readonly string[];
7
- }
8
- interface WorkflowRecoveryFailedRunSummaryReducer {
9
- addRun(run: WorkflowRunRecord): void;
10
- finish(): WorkflowRecoveryFailedRunSummaryParts;
11
- }
12
- declare function createWorkflowRecoveryFailedRunSummaryReducer(): WorkflowRecoveryFailedRunSummaryReducer;
13
- //#endregion
14
- export { WorkflowRecoveryFailedRunSummaryParts, WorkflowRecoveryFailedRunSummaryReducer, createWorkflowRecoveryFailedRunSummaryReducer };
@@ -1,33 +0,0 @@
1
- import { latestOptionalWorkflowRecoveryInstant } from "./recovery-run-timestamps.mjs";
2
- //#region src/engine/summary/recovery-failed-runs.ts
3
- function createWorkflowRecoveryFailedRunSummaryReducer() {
4
- const failed = createWorkflowRecoveryFailedRunAccumulator();
5
- return {
6
- addRun(run) {
7
- addWorkflowRecoveryFailedRun(failed, run);
8
- },
9
- finish() {
10
- return {
11
- failed: finishWorkflowRecoveryFailedSummary(failed),
12
- failedRunIds: [...failed.runIds].sort()
13
- };
14
- }
15
- };
16
- }
17
- function createWorkflowRecoveryFailedRunAccumulator() {
18
- return { runIds: /* @__PURE__ */ new Set() };
19
- }
20
- function addWorkflowRecoveryFailedRun(failed, run) {
21
- if (run.status !== "failed") return;
22
- failed.runIds.add(run.id);
23
- failed.latestFailedAt = latestOptionalWorkflowRecoveryInstant(failed.latestFailedAt, run.finishedAt);
24
- }
25
- function finishWorkflowRecoveryFailedSummary(failed) {
26
- return {
27
- total: failed.runIds.size,
28
- runIds: [...failed.runIds].sort(),
29
- ...failed.latestFailedAt === void 0 ? {} : { latestFailedAt: failed.latestFailedAt }
30
- };
31
- }
32
- //#endregion
33
- export { createWorkflowRecoveryFailedRunSummaryReducer };
@@ -1,16 +0,0 @@
1
- import { WorkflowRecoveryLeaseSummary } from "../../types/summary.mjs";
2
- import { WorkflowRunRecord } from "../../types/run.mjs";
3
- import { WorkflowRecoveryTimestamp } from "./recovery-run-timestamps.mjs";
4
- //#region src/engine/summary/recovery-lease-runs.d.ts
5
- interface WorkflowRecoveryLeaseRunSummaryParts {
6
- readonly lease: WorkflowRecoveryLeaseSummary;
7
- readonly staleRunIds: readonly string[];
8
- readonly nextLeaseExpires?: WorkflowRecoveryTimestamp;
9
- }
10
- interface WorkflowRecoveryLeaseRunSummaryReducer {
11
- addRun(run: WorkflowRunRecord): void;
12
- finish(): WorkflowRecoveryLeaseRunSummaryParts;
13
- }
14
- declare function createWorkflowRecoveryLeaseRunSummaryReducer(now: Temporal.Instant): WorkflowRecoveryLeaseRunSummaryReducer;
15
- //#endregion
16
- export { WorkflowRecoveryLeaseRunSummaryParts, WorkflowRecoveryLeaseRunSummaryReducer, createWorkflowRecoveryLeaseRunSummaryReducer };
@@ -1,69 +0,0 @@
1
- import { earliestWorkflowRecoveryInstant, earliestWorkflowRecoveryTimestamp } from "./recovery-run-timestamps.mjs";
2
- //#region src/engine/summary/recovery-lease-runs.ts
3
- function createWorkflowRecoveryLeaseRunSummaryReducer(now) {
4
- const lease = createWorkflowRecoveryLeaseRunAccumulator();
5
- return {
6
- addRun(run) {
7
- addWorkflowRecoveryLeaseRun(lease, run, now);
8
- },
9
- finish() {
10
- return {
11
- lease: finishWorkflowRecoveryLeaseSummary(lease),
12
- staleRunIds: [...lease.staleRunIds].sort(),
13
- ...lease.nextExpires === void 0 ? {} : { nextLeaseExpires: lease.nextExpires }
14
- };
15
- }
16
- };
17
- }
18
- function createWorkflowRecoveryLeaseRunAccumulator() {
19
- return {
20
- runIds: /* @__PURE__ */ new Set(),
21
- staleRunIds: /* @__PURE__ */ new Set(),
22
- ownerlessRunIds: /* @__PURE__ */ new Set(),
23
- missingExpiresAtRunIds: /* @__PURE__ */ new Set(),
24
- invalidExpiresAtRunIds: /* @__PURE__ */ new Set(),
25
- expiredRunIds: /* @__PURE__ */ new Set(),
26
- workerIds: /* @__PURE__ */ new Set()
27
- };
28
- }
29
- function addWorkflowRecoveryLeaseRun(lease, run, now) {
30
- if (run.status !== "running") return;
31
- lease.runIds.add(run.id);
32
- if (run.workerId !== void 0) lease.workerIds.add(run.workerId);
33
- else {
34
- lease.staleRunIds.add(run.id);
35
- lease.ownerlessRunIds.add(run.id);
36
- }
37
- if (run.leaseExpiresAt === void 0) {
38
- lease.staleRunIds.add(run.id);
39
- lease.missingExpiresAtRunIds.add(run.id);
40
- return;
41
- }
42
- if (Temporal.Instant.compare(run.leaseExpiresAt, now) <= 0) {
43
- lease.staleRunIds.add(run.id);
44
- lease.expiredRunIds.add(run.id);
45
- lease.oldestStaleAt = earliestWorkflowRecoveryInstant(lease.oldestStaleAt, run.leaseExpiresAt);
46
- return;
47
- }
48
- if (run.workerId !== void 0) lease.nextExpires = earliestWorkflowRecoveryTimestamp(lease.nextExpires, run.id, run.leaseExpiresAt);
49
- }
50
- function finishWorkflowRecoveryLeaseSummary(lease) {
51
- return {
52
- total: lease.runIds.size,
53
- stale: lease.staleRunIds.size,
54
- runIds: [...lease.runIds].sort(),
55
- staleRunIds: [...lease.staleRunIds].sort(),
56
- ownerlessRunIds: [...lease.ownerlessRunIds].sort(),
57
- missingExpiresAtRunIds: [...lease.missingExpiresAtRunIds].sort(),
58
- invalidExpiresAtRunIds: [...lease.invalidExpiresAtRunIds].sort(),
59
- expiredRunIds: [...lease.expiredRunIds].sort(),
60
- workerIds: [...lease.workerIds].sort(),
61
- ...lease.nextExpires === void 0 ? {} : {
62
- nextExpiresAt: lease.nextExpires.timestamp,
63
- nextExpiringRunId: lease.nextExpires.runId
64
- },
65
- ...lease.oldestStaleAt === void 0 ? {} : { oldestStaleAt: lease.oldestStaleAt }
66
- };
67
- }
68
- //#endregion
69
- export { createWorkflowRecoveryLeaseRunSummaryReducer };
@@ -1,18 +0,0 @@
1
- import { LockRecord } from "../../types/lock.mjs";
2
- import { WorkflowRecoveryLockSummary } from "../../types/summary.mjs";
3
- import { WorkflowStepAttemptRecord } from "../../types/step-attempts.mjs";
4
- import { WorkflowRunRecord } from "../../types/run.mjs";
5
- //#region src/engine/summary/recovery-locks.d.ts
6
- interface WorkflowRecoveryLockWaitDetails {
7
- readonly key: string;
8
- readonly waitDeadlineAt?: Temporal.Instant;
9
- }
10
- interface WorkflowRecoveryLockSummaryReducer {
11
- addLock(lock: LockRecord): void;
12
- addLockWaitAttempt(attempt: WorkflowStepAttemptRecord): void;
13
- finish(): WorkflowRecoveryLockSummary;
14
- }
15
- declare function createWorkflowRecoveryLockSummaryReducer(runs: readonly WorkflowRunRecord[], now: Temporal.Instant): WorkflowRecoveryLockSummaryReducer;
16
- declare function workflowRecoveryLockWaitDetails(attempt: WorkflowStepAttemptRecord): WorkflowRecoveryLockWaitDetails | undefined;
17
- //#endregion
18
- export { WorkflowRecoveryLockSummaryReducer, WorkflowRecoveryLockWaitDetails, createWorkflowRecoveryLockSummaryReducer, workflowRecoveryLockWaitDetails };
@@ -1,100 +0,0 @@
1
- import { WorkflowRetryableError } from "../../errors/failures.mjs";
2
- import "../../errors/mod.mjs";
3
- import { earliestWorkflowRecoveryInstant, earliestWorkflowRecoveryTimestamp } from "./recovery-run-timestamps.mjs";
4
- //#region src/engine/summary/recovery-locks.ts
5
- function createWorkflowRecoveryLockSummaryReducer(runs, now) {
6
- const locks = createWorkflowRecoveryLockAccumulator();
7
- const runById = new Map(runs.map((run) => [run.id, run]));
8
- return {
9
- addLock(lock) {
10
- addWorkflowRecoveryLock(locks, lock, now);
11
- },
12
- addLockWaitAttempt(attempt) {
13
- addWorkflowRecoveryLockWaitAttempt(locks, attempt, runById, now);
14
- },
15
- finish() {
16
- return finishWorkflowRecoveryLockSummary(locks);
17
- }
18
- };
19
- }
20
- function createWorkflowRecoveryLockAccumulator() {
21
- return {
22
- dueWaitingRunIds: /* @__PURE__ */ new Set(),
23
- holderIds: /* @__PURE__ */ new Set(),
24
- keys: /* @__PURE__ */ new Set(),
25
- staleKeys: /* @__PURE__ */ new Set(),
26
- waitingKeys: /* @__PURE__ */ new Set(),
27
- waitingRunIds: /* @__PURE__ */ new Set(),
28
- waitingStepIds: /* @__PURE__ */ new Set()
29
- };
30
- }
31
- function addWorkflowRecoveryLock(locks, lock, now) {
32
- if (lock.releasedAt !== void 0) return;
33
- locks.keys.add(lock.key);
34
- if (lock.holderId !== void 0) locks.holderIds.add(lock.holderId);
35
- if (Temporal.Instant.compare(lock.leaseExpiresAt, now) <= 0) {
36
- locks.staleKeys.add(lock.key);
37
- locks.oldestStaleAt = earliestWorkflowRecoveryInstant(locks.oldestStaleAt, lock.leaseExpiresAt);
38
- return;
39
- }
40
- locks.nextExpires = earliestWorkflowRecoveryLockExpiration(locks.nextExpires, lock.key, lock.leaseExpiresAt);
41
- }
42
- function addWorkflowRecoveryLockWaitAttempt(locks, attempt, runById, now) {
43
- const details = workflowRecoveryLockWaitDetails(attempt);
44
- if (details === void 0) return;
45
- const run = runById.get(attempt.runId);
46
- if (run === void 0 || run.status !== "waiting" || run.retryReason !== "step") return;
47
- locks.waitingRunIds.add(attempt.runId);
48
- locks.waitingStepIds.add(attempt.stepId);
49
- locks.waitingKeys.add(details.key);
50
- if (run.retryAt === void 0 || Temporal.Instant.compare(run.retryAt, now) <= 0) locks.dueWaitingRunIds.add(attempt.runId);
51
- if (details.waitDeadlineAt !== void 0 && Temporal.Instant.compare(details.waitDeadlineAt, now) > 0) locks.nextWaitDeadline = earliestWorkflowRecoveryTimestamp(locks.nextWaitDeadline, attempt.runId, details.waitDeadlineAt);
52
- }
53
- function finishWorkflowRecoveryLockSummary(locks) {
54
- return {
55
- total: locks.keys.size,
56
- stale: locks.staleKeys.size,
57
- keys: [...locks.keys].sort(),
58
- staleKeys: [...locks.staleKeys].sort(),
59
- holderIds: [...locks.holderIds].sort(),
60
- waitingRunIds: [...locks.waitingRunIds].sort(),
61
- dueWaitingRunIds: [...locks.dueWaitingRunIds].sort(),
62
- waitingStepIds: [...locks.waitingStepIds].sort(),
63
- waitingKeys: [...locks.waitingKeys].sort(),
64
- ...locks.nextExpires === void 0 ? {} : {
65
- nextExpiresAt: locks.nextExpires.timestamp,
66
- nextExpiringKey: locks.nextExpires.key
67
- },
68
- ...locks.oldestStaleAt === void 0 ? {} : { oldestStaleAt: locks.oldestStaleAt },
69
- ...locks.nextWaitDeadline === void 0 ? {} : {
70
- nextWaitDeadlineAt: locks.nextWaitDeadline.timestamp,
71
- nextWaitDeadlineRunId: locks.nextWaitDeadline.runId
72
- }
73
- };
74
- }
75
- function workflowRecoveryLockWaitDetails(attempt) {
76
- const error = attempt.error;
77
- if (!(attempt.status === "failed" && attempt.kind === "run" && error !== void 0 && WorkflowRetryableError.isLockAlreadyHeld(error) && typeof error.details?.key === "string" && error.details.key.trim() !== "")) return;
78
- const waitDeadlineAt = workflowLockWaitDeadline(attempt);
79
- return {
80
- key: error.details.key,
81
- ...waitDeadlineAt === void 0 ? {} : { waitDeadlineAt }
82
- };
83
- }
84
- function workflowLockWaitDeadline(attempt) {
85
- const deadline = attempt.error?.details?.waitDeadlineAt;
86
- if (!(typeof deadline === "string" && deadline.trim() !== "")) return;
87
- try {
88
- return Temporal.Instant.from(deadline);
89
- } catch {
90
- return;
91
- }
92
- }
93
- function earliestWorkflowRecoveryLockExpiration(current, key, timestamp) {
94
- return current === void 0 || Temporal.Instant.compare(timestamp, current.timestamp) < 0 ? {
95
- key,
96
- timestamp
97
- } : current;
98
- }
99
- //#endregion
100
- export { createWorkflowRecoveryLockSummaryReducer, workflowRecoveryLockWaitDetails };
@@ -1,11 +0,0 @@
1
- import { WorkflowRecoveryMessageWaitSummary } from "../../types/summary.mjs";
2
- import { WorkflowStepAttemptRecord } from "../../types/step-attempts.mjs";
3
- import { EventRecord } from "../../types/events.mjs";
4
- //#region src/engine/summary/recovery-message-waits.d.ts
5
- interface WorkflowRecoveryMessageWaitSummaryReducer {
6
- addAttempts(attempts: readonly WorkflowStepAttemptRecord[]): void;
7
- finish(): WorkflowRecoveryMessageWaitSummary;
8
- }
9
- declare function createWorkflowRecoveryMessageWaitSummaryReducer(eventsByRunId: ReadonlyMap<string, readonly EventRecord[]>, now: Temporal.Instant): WorkflowRecoveryMessageWaitSummaryReducer;
10
- //#endregion
11
- export { WorkflowRecoveryMessageWaitSummaryReducer, createWorkflowRecoveryMessageWaitSummaryReducer };