@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,283 +1 @@
1
- import { nonBlankStringListSchema, nonBlankStringSchema, nonNegativeSafeIntegerSchema, positiveSafeIntegerSchema, temporalInstantSchema, temporalNonNegativeDurationSchema } from "./common.mjs";
2
- import { workflowErrorRecordSchema } from "./error.mjs";
3
- import { runIdSchema } from "./run-id.mjs";
4
- import { stepIdSchema } from "./step-id.mjs";
5
- import { workflowTelemetryContextSchema } from "./telemetry.mjs";
6
- import { workflowAttributeValueSchema, workflowPersistedValueSchema } from "./run.mjs";
7
- import { messageIdSchema } from "./message-id.mjs";
8
- import { workflowChildWorkflowCancellationPolicySchema } from "./step.mjs";
9
- import { streamIdSchema } from "./stream-id.mjs";
10
- import { z } from "zod";
11
- //#region src/types/events.ts
12
- const workflowMessageWaitSourceSchema = z.enum(["hook", "webhook"]);
13
- const workflowRunEventKindSchema = z.enum([
14
- "workflow_started",
15
- "workflow_completed",
16
- "workflow_failed"
17
- ]);
18
- const workflowStepEventKindSchema = z.enum([
19
- "step_started",
20
- "step_completed",
21
- "step_failed"
22
- ]);
23
- const workflowSleepEventKindSchema = z.enum(["sleep_started", "sleep_completed"]);
24
- const workflowChildWorkflowEventKindSchema = z.enum([
25
- "child_workflow_started",
26
- "child_workflow_completed",
27
- "child_workflow_failed"
28
- ]);
29
- const workflowMessageEventKindSchema = z.enum([
30
- "message_sent",
31
- "message_send_started",
32
- "message_send_completed",
33
- "message_send_failed",
34
- "message_wait_started",
35
- "message_wait_completed",
36
- "message_wait_failed"
37
- ]);
38
- const workflowStreamEventKindSchema = z.enum([
39
- "stream_started",
40
- "stream_chunk",
41
- "stream_closed",
42
- "stream_failed"
43
- ]);
44
- const workflowDataEventKindSchema = z.enum(["metadata_set", "attributes_set"]);
45
- const workflowDeterministicEventKindSchema = z.literal("deterministic_value_recorded");
46
- const workflowEventKindSchema = z.union([
47
- workflowRunEventKindSchema,
48
- workflowStepEventKindSchema,
49
- workflowSleepEventKindSchema,
50
- workflowChildWorkflowEventKindSchema,
51
- workflowMessageEventKindSchema,
52
- workflowStreamEventKindSchema,
53
- workflowDataEventKindSchema,
54
- workflowDeterministicEventKindSchema
55
- ]);
56
- const persistedValueSchema = workflowPersistedValueSchema;
57
- const runAttributesSchema = z.record(z.string(), workflowAttributeValueSchema);
58
- const eventBaseShape = { timestamp: temporalInstantSchema };
59
- const stepIdentityShape = {
60
- stepId: stepIdSchema,
61
- stepName: nonBlankStringSchema
62
- };
63
- const countShape = { count: positiveSafeIntegerSchema };
64
- const attemptShape = { attempt: positiveSafeIntegerSchema };
65
- const workflowMessageWaiterStepIdsSchema = nonBlankStringListSchema.refine((items) => new Set(items).size === items.length, { error: "Expected unique step ids" });
66
- const workflowStartedEventSchema = z.object({
67
- ...eventBaseShape,
68
- kind: z.literal("workflow_started")
69
- });
70
- const workflowCompletedEventSchema = z.object({
71
- ...eventBaseShape,
72
- kind: z.literal("workflow_completed")
73
- });
74
- const workflowFailedEventSchema = z.object({
75
- ...eventBaseShape,
76
- kind: z.literal("workflow_failed")
77
- });
78
- const workflowStepStartedEventSchema = z.object({
79
- ...eventBaseShape,
80
- ...stepIdentityShape,
81
- ...countShape,
82
- ...attemptShape,
83
- kind: z.literal("step_started"),
84
- timeoutAt: temporalInstantSchema.optional()
85
- });
86
- const workflowStepCompletedEventSchema = z.object({
87
- ...eventBaseShape,
88
- ...stepIdentityShape,
89
- ...attemptShape,
90
- kind: z.literal("step_completed"),
91
- result: persistedValueSchema.optional()
92
- });
93
- const workflowStepFailedEventSchema = z.object({
94
- ...eventBaseShape,
95
- ...stepIdentityShape,
96
- ...attemptShape,
97
- kind: z.literal("step_failed"),
98
- error: workflowErrorRecordSchema
99
- });
100
- const workflowSleepStartedEventSchema = z.object({
101
- ...eventBaseShape,
102
- ...stepIdentityShape,
103
- ...countShape,
104
- kind: z.literal("sleep_started"),
105
- until: temporalInstantSchema,
106
- duration: temporalNonNegativeDurationSchema.optional()
107
- });
108
- const workflowSleepCompletedEventSchema = z.object({
109
- ...eventBaseShape,
110
- ...stepIdentityShape,
111
- kind: z.literal("sleep_completed")
112
- });
113
- const workflowChildWorkflowStartedEventSchema = z.object({
114
- ...eventBaseShape,
115
- ...stepIdentityShape,
116
- ...countShape,
117
- ...attemptShape,
118
- kind: z.literal("child_workflow_started"),
119
- childRunId: runIdSchema,
120
- workflowName: nonBlankStringSchema,
121
- workflowVersion: nonBlankStringSchema.optional(),
122
- cancellation: workflowChildWorkflowCancellationPolicySchema.optional(),
123
- input: persistedValueSchema.optional(),
124
- idempotencyKey: nonBlankStringSchema.optional(),
125
- timeoutAt: temporalInstantSchema.optional()
126
- });
127
- const workflowChildWorkflowCompletedEventSchema = z.object({
128
- ...eventBaseShape,
129
- ...stepIdentityShape,
130
- ...attemptShape,
131
- kind: z.literal("child_workflow_completed"),
132
- childRunId: runIdSchema,
133
- result: persistedValueSchema.optional()
134
- });
135
- const workflowChildWorkflowFailedEventSchema = z.object({
136
- ...eventBaseShape,
137
- ...stepIdentityShape,
138
- ...attemptShape,
139
- kind: z.literal("child_workflow_failed"),
140
- childRunId: runIdSchema,
141
- error: workflowErrorRecordSchema
142
- });
143
- const workflowMessageSentEventSchema = z.object({
144
- ...eventBaseShape,
145
- kind: z.literal("message_sent"),
146
- messageId: messageIdSchema,
147
- payload: persistedValueSchema.optional(),
148
- waiterStepIds: workflowMessageWaiterStepIdsSchema.optional(),
149
- idempotencyKey: nonBlankStringSchema.optional(),
150
- telemetryContext: workflowTelemetryContextSchema.optional()
151
- });
152
- const workflowMessageSendStartedEventSchema = z.object({
153
- ...eventBaseShape,
154
- ...stepIdentityShape,
155
- ...countShape,
156
- kind: z.literal("message_send_started"),
157
- targetRunId: runIdSchema,
158
- messageId: messageIdSchema,
159
- payload: persistedValueSchema.optional(),
160
- idempotencyKey: nonBlankStringSchema.optional()
161
- });
162
- const workflowMessageSendCompletedEventSchema = z.object({
163
- ...eventBaseShape,
164
- ...stepIdentityShape,
165
- kind: z.literal("message_send_completed"),
166
- targetRunId: runIdSchema,
167
- messageId: messageIdSchema
168
- });
169
- const workflowMessageSendFailedEventSchema = z.object({
170
- ...eventBaseShape,
171
- ...stepIdentityShape,
172
- kind: z.literal("message_send_failed"),
173
- targetRunId: runIdSchema,
174
- messageId: messageIdSchema,
175
- error: workflowErrorRecordSchema
176
- });
177
- const workflowMessageWaitStartedEventSchema = z.object({
178
- ...eventBaseShape,
179
- ...stepIdentityShape,
180
- ...countShape,
181
- kind: z.literal("message_wait_started"),
182
- messageId: messageIdSchema,
183
- source: workflowMessageWaitSourceSchema.optional(),
184
- timeoutAt: temporalInstantSchema.optional()
185
- });
186
- const workflowMessageWaitCompletedEventSchema = z.object({
187
- ...eventBaseShape,
188
- ...stepIdentityShape,
189
- kind: z.literal("message_wait_completed"),
190
- messageId: messageIdSchema,
191
- payload: persistedValueSchema.optional(),
192
- messageTimestamp: temporalInstantSchema,
193
- telemetryContext: workflowTelemetryContextSchema.optional()
194
- });
195
- const workflowMessageWaitFailedEventSchema = z.object({
196
- ...eventBaseShape,
197
- ...stepIdentityShape,
198
- kind: z.literal("message_wait_failed"),
199
- messageId: messageIdSchema,
200
- error: workflowErrorRecordSchema
201
- });
202
- const workflowMetadataSetEventSchema = z.object({
203
- ...eventBaseShape,
204
- ...stepIdentityShape,
205
- ...countShape,
206
- kind: z.literal("metadata_set"),
207
- metadata: persistedValueSchema
208
- });
209
- const workflowAttributesSetEventSchema = z.object({
210
- ...eventBaseShape,
211
- ...stepIdentityShape,
212
- ...countShape,
213
- kind: z.literal("attributes_set"),
214
- attributes: runAttributesSchema.optional(),
215
- removeAttributes: z.array(nonBlankStringSchema).readonly().optional()
216
- });
217
- const workflowStreamStartedEventSchema = z.object({
218
- ...eventBaseShape,
219
- ...stepIdentityShape,
220
- ...countShape,
221
- kind: z.literal("stream_started"),
222
- streamId: streamIdSchema,
223
- contentType: nonBlankStringSchema.optional(),
224
- metadata: persistedValueSchema.optional()
225
- });
226
- const workflowStreamChunkEventSchema = z.object({
227
- ...eventBaseShape,
228
- ...stepIdentityShape,
229
- kind: z.literal("stream_chunk"),
230
- streamId: streamIdSchema,
231
- index: nonNegativeSafeIntegerSchema,
232
- chunk: persistedValueSchema.optional()
233
- });
234
- const workflowStreamClosedEventSchema = z.object({
235
- ...eventBaseShape,
236
- ...stepIdentityShape,
237
- kind: z.literal("stream_closed"),
238
- streamId: streamIdSchema
239
- });
240
- const workflowStreamFailedEventSchema = z.object({
241
- ...eventBaseShape,
242
- ...stepIdentityShape,
243
- kind: z.literal("stream_failed"),
244
- streamId: streamIdSchema,
245
- error: workflowErrorRecordSchema
246
- });
247
- const workflowDeterministicValueRecordedEventSchema = z.object({
248
- ...eventBaseShape,
249
- ...stepIdentityShape,
250
- ...countShape,
251
- kind: z.literal("deterministic_value_recorded"),
252
- value: persistedValueSchema
253
- });
254
- const workflowEventRecordSchema = z.discriminatedUnion("kind", [
255
- workflowStartedEventSchema,
256
- workflowCompletedEventSchema,
257
- workflowFailedEventSchema,
258
- workflowStepStartedEventSchema,
259
- workflowStepCompletedEventSchema,
260
- workflowStepFailedEventSchema,
261
- workflowSleepStartedEventSchema,
262
- workflowSleepCompletedEventSchema,
263
- workflowChildWorkflowStartedEventSchema,
264
- workflowChildWorkflowCompletedEventSchema,
265
- workflowChildWorkflowFailedEventSchema,
266
- workflowMessageSentEventSchema,
267
- workflowMessageSendStartedEventSchema,
268
- workflowMessageSendCompletedEventSchema,
269
- workflowMessageSendFailedEventSchema,
270
- workflowMessageWaitStartedEventSchema,
271
- workflowMessageWaitCompletedEventSchema,
272
- workflowMessageWaitFailedEventSchema,
273
- workflowMetadataSetEventSchema,
274
- workflowAttributesSetEventSchema,
275
- workflowStreamStartedEventSchema,
276
- workflowStreamChunkEventSchema,
277
- workflowStreamClosedEventSchema,
278
- workflowStreamFailedEventSchema,
279
- workflowDeterministicValueRecordedEventSchema
280
- ]);
281
- const workflowEventRecordListSchema = z.array(workflowEventRecordSchema);
282
- //#endregion
283
- export { workflowAttributesSetEventSchema, workflowChildWorkflowCompletedEventSchema, workflowChildWorkflowEventKindSchema, workflowChildWorkflowFailedEventSchema, workflowChildWorkflowStartedEventSchema, workflowCompletedEventSchema, workflowDataEventKindSchema, workflowDeterministicEventKindSchema, workflowDeterministicValueRecordedEventSchema, workflowEventKindSchema, workflowEventRecordListSchema, workflowEventRecordSchema, workflowFailedEventSchema, workflowMessageEventKindSchema, workflowMessageSendCompletedEventSchema, workflowMessageSendFailedEventSchema, workflowMessageSendStartedEventSchema, workflowMessageSentEventSchema, workflowMessageWaitCompletedEventSchema, workflowMessageWaitFailedEventSchema, workflowMessageWaitSourceSchema, workflowMessageWaitStartedEventSchema, workflowMessageWaiterStepIdsSchema, workflowMetadataSetEventSchema, workflowRunEventKindSchema, workflowSleepCompletedEventSchema, workflowSleepEventKindSchema, workflowSleepStartedEventSchema, workflowStartedEventSchema, workflowStepCompletedEventSchema, workflowStepEventKindSchema, workflowStepFailedEventSchema, workflowStepStartedEventSchema, workflowStreamChunkEventSchema, workflowStreamClosedEventSchema, workflowStreamEventKindSchema, workflowStreamFailedEventSchema, workflowStreamStartedEventSchema };
1
+ export {};
@@ -1,50 +1,10 @@
1
- import { MessageId } from "./message-id.mjs";
2
- import { RunId } from "./run-id.mjs";
3
- import "./run.mjs";
1
+ import { MessageId, RunId } from "./ids.mjs";
4
2
  import { WorkflowErrorRecord } from "./error.mjs";
5
- import { z } from "zod";
6
3
  import { Schema, SchemaOutput } from "@temelj/standard-schema";
4
+ import { StorageValue } from "@temelj/storage";
7
5
  //#region src/types/hook.d.ts
8
- declare const WORKFLOW_HOOK_TOKEN_PREFIX = "temelj-hook:";
9
- declare const WORKFLOW_HOOK_TOKEN_VERSION = "v1";
10
- declare const workflowHookKindSchema: z.ZodEnum<{
11
- hook: "hook";
12
- webhook: "webhook";
13
- }>;
14
- declare const workflowHookTokenPayloadSchema: z.ZodObject<{
15
- v: z.ZodOptional<z.ZodLiteral<1>>;
16
- runId: z.ZodString;
17
- name: z.ZodString;
18
- messageId: z.ZodString;
19
- kind: z.ZodOptional<z.ZodEnum<{
20
- hook: "hook";
21
- webhook: "webhook";
22
- }>>;
23
- metadata: z.ZodOptional<z.ZodType<import("@temelj/storage").StorageValue, unknown, z.core.$ZodTypeInternals<import("@temelj/storage").StorageValue, unknown>>>;
24
- }, z.core.$strip>;
25
- declare const workflowHookTokenSchema: z.ZodString;
26
- /** Decoded fields carried by a workflow webhook resume token. */
27
- declare const parsedWorkflowWebhookTokenSchema: z.ZodObject<{
28
- runId: z.ZodString;
29
- name: z.ZodString;
30
- messageId: z.ZodString;
31
- }, z.core.$strip>;
32
- declare const parsedWorkflowHookTokenSchema: z.ZodObject<{
33
- runId: z.ZodString;
34
- name: z.ZodString;
35
- messageId: z.ZodString;
36
- kind: z.ZodEnum<{
37
- hook: "hook";
38
- webhook: "webhook";
39
- }>;
40
- metadata: z.ZodOptional<z.ZodType<import("@temelj/storage").StorageValue, unknown, z.core.$ZodTypeInternals<import("@temelj/storage").StorageValue, unknown>>>;
41
- }, z.core.$strip>;
42
- /** Parses a workflow hook token and throws WorkflowHookError when it is invalid. */
43
- declare function parseHookToken(token: string): ParsedWorkflowHookToken;
44
- /** Parses a workflow webhook token and throws a webhook-specific options error when invalid. */
45
- declare function parseWebhookToken(token: string): ParsedWorkflowHookToken;
46
6
  /** Promise-like handle for a message-backed workflow hook created by workflow code. */
47
- interface Hook<TPayload = unknown> extends PromiseLike<TPayload> {
7
+ export interface Hook<TPayload = unknown> extends PromiseLike<TPayload> {
48
8
  /** Opaque token used by external code to resume or dispose the hook. */
49
9
  readonly token: string;
50
10
  /** Run ID that owns the waiting hook. */
@@ -57,7 +17,7 @@ interface Hook<TPayload = unknown> extends PromiseLike<TPayload> {
57
17
  wait(): Promise<TPayload>;
58
18
  }
59
19
  /** Promise-like handle for a webhook-backed workflow hook created by workflow code. */
60
- interface Webhook<TPayload = unknown> extends PromiseLike<TPayload> {
20
+ export interface Webhook<TPayload = unknown> extends PromiseLike<TPayload> {
61
21
  /** Opaque token used by external code to resume or dispose the webhook hook. */
62
22
  readonly token: string;
63
23
  /** Run ID that owns the waiting webhook hook. */
@@ -67,12 +27,12 @@ interface Webhook<TPayload = unknown> extends PromiseLike<TPayload> {
67
27
  /** Message ID that will resume the webhook hook. */
68
28
  readonly messageId: MessageId;
69
29
  /** Optional persisted metadata encoded into the webhook token. */
70
- readonly metadata?: unknown;
30
+ readonly metadata?: StorageValue;
71
31
  /** Waits until the webhook hook receives a payload, fails, expires, or is disposed. */
72
32
  wait(): Promise<TPayload>;
73
33
  }
74
34
  /** Options for creating a message-backed external resume hook. */
75
- interface CreateHookOptions<TSchema extends Schema | undefined = undefined> {
35
+ export interface CreateHookOptions<TSchema extends Schema | undefined = undefined> {
76
36
  readonly commandId?: string;
77
37
  readonly name: string;
78
38
  readonly messageId?: MessageId;
@@ -80,33 +40,27 @@ interface CreateHookOptions<TSchema extends Schema | undefined = undefined> {
80
40
  readonly schema?: TSchema;
81
41
  }
82
42
  /** Options for creating a webhook-labeled external resume hook. */
83
- interface CreateWebhookOptions<TSchema extends Schema | undefined = undefined> extends CreateHookOptions<TSchema> {
84
- readonly metadata?: unknown;
43
+ export interface CreateWebhookOptions<TSchema extends Schema | undefined = undefined> extends CreateHookOptions<TSchema> {
44
+ readonly metadata?: StorageValue;
85
45
  }
86
- /** Options for completing an external resume hook. */
87
- interface ResumeHookOptions {
46
+ export interface ResumeHookOptions {
88
47
  readonly payload?: unknown;
89
48
  readonly idempotencyKey?: string;
90
49
  }
91
- /** Options for completing a webhook-labeled external resume hook. */
92
- type ResumeWebhookOptions = ResumeHookOptions;
93
50
  /** Kind of external resume token represented in hook inspection data. */
94
- type HookKind = "hook" | "webhook";
51
+ export type HookKind = "hook" | "webhook";
95
52
  /** Payload encoded into a workflow hook token before it is given to external systems. */
96
- interface HookTokenPayload {
97
- readonly v?: 1;
53
+ export interface HookTokenPayload {
98
54
  readonly runId: RunId;
99
55
  readonly name: string;
100
56
  readonly messageId: MessageId;
101
- readonly kind?: HookKind;
102
- readonly metadata?: unknown;
57
+ readonly kind: HookKind;
58
+ readonly metadata?: StorageValue;
103
59
  }
104
- /** Opaque token string used to resume or dispose an external workflow hook. */
105
- type HookToken = string;
106
60
  /** Observed lifecycle status of an external resume token. */
107
- type HookInspectionStatus = "waiting" | "completed" | "failed" | "disposed" | "expired" | "run-terminal" | "not-found";
61
+ export type HookInspectionStatus = "waiting" | "completed" | "failed" | "disposed" | "expired" | "run-terminal" | "not-found";
108
62
  /** Inspection record for an external resume token and its recorded outcome. */
109
- interface HookInspection {
63
+ export interface HookInspection {
110
64
  readonly token: string;
111
65
  readonly runId: RunId;
112
66
  readonly name: string;
@@ -115,35 +69,23 @@ interface HookInspection {
115
69
  readonly status: HookInspectionStatus;
116
70
  readonly stepId?: string;
117
71
  readonly timeoutAt?: Temporal.Instant;
118
- readonly metadata?: unknown;
119
- readonly payload?: unknown;
72
+ readonly metadata?: StorageValue;
73
+ readonly payload?: StorageValue;
120
74
  readonly error?: WorkflowErrorRecord;
121
75
  }
122
- /** Decoded fields carried by a workflow webhook resume token. */
123
- interface ParsedWorkflowWebhookToken {
124
- readonly runId: RunId;
125
- readonly name: string;
126
- readonly messageId: MessageId;
127
- }
128
- /** Decoded fields carried by any workflow hook token, including webhook tokens. */
129
- interface ParsedWorkflowHookToken extends ParsedWorkflowWebhookToken {
130
- readonly kind: HookKind;
131
- readonly metadata?: unknown;
132
- }
133
- /** Alias for message-backed hook handles. */
134
- type HookCreator<TPayload = unknown> = Hook<TPayload>;
135
- /** Alias for webhook-backed hook handles. */
136
- type WebhookCreator<TPayload = unknown> = Webhook<TPayload>;
137
76
  /** Minimal hook creation surface exposed on the workflow step API. */
138
- interface WorkflowStepHookCreateApi {
77
+ export interface StepHookCreateApi {
139
78
  /** Creates a message-backed external resume hook. */
140
- create<TPayload = unknown>(options: CreateHookOptions): Hook<TPayload>;
79
+ create(options: CreateHookOptions): Hook<StorageValue | undefined>;
141
80
  /** Creates a message-backed external resume hook with schema-validated payloads. */
142
- create<const TSchema extends Schema>(options: CreateHookOptions<TSchema>): Hook<SchemaOutput<TSchema>>;
81
+ create<const TSchema extends Schema>(options: CreateHookOptions<TSchema> & {
82
+ readonly schema: TSchema;
83
+ }): Hook<SchemaOutput<TSchema>>;
143
84
  /** Creates a webhook-labeled external resume hook. */
144
- createWebhook<TPayload = unknown>(options: CreateWebhookOptions): Webhook<TPayload>;
85
+ createWebhook(options: CreateWebhookOptions): Webhook<StorageValue | undefined>;
145
86
  /** Creates a webhook-labeled external resume hook with schema-validated payloads. */
146
- createWebhook<const TSchema extends Schema>(options: CreateWebhookOptions<TSchema>): Webhook<SchemaOutput<TSchema>>;
87
+ createWebhook<const TSchema extends Schema>(options: CreateWebhookOptions<TSchema> & {
88
+ readonly schema: TSchema;
89
+ }): Webhook<SchemaOutput<TSchema>>;
147
90
  }
148
- //#endregion
149
- export { CreateHookOptions, CreateWebhookOptions, Hook, HookCreator, HookInspection, HookInspectionStatus, HookKind, HookToken, HookTokenPayload, ParsedWorkflowHookToken, ParsedWorkflowWebhookToken, ResumeHookOptions, ResumeWebhookOptions, WORKFLOW_HOOK_TOKEN_PREFIX, WORKFLOW_HOOK_TOKEN_VERSION, Webhook, WebhookCreator, WorkflowStepHookCreateApi, parseHookToken, parseWebhookToken, parsedWorkflowHookTokenSchema, parsedWorkflowWebhookTokenSchema, workflowHookKindSchema, workflowHookTokenPayloadSchema, workflowHookTokenSchema };
91
+ //#endregion
@@ -1,66 +1 @@
1
- import { nonBlankStringSchema } from "./common.mjs";
2
- import { runIdSchema } from "./run-id.mjs";
3
- import { workflowPersistedValueSchema } from "./run.mjs";
4
- import { WorkflowHookError } from "../errors/hook.mjs";
5
- import "../errors/mod.mjs";
6
- import { messageIdSchema } from "./message-id.mjs";
7
- import { z } from "zod";
8
- import { decodeBase64UrlString } from "@temelj/string";
9
- //#region src/types/hook.ts
10
- const WORKFLOW_HOOK_TOKEN_PREFIX = "temelj-hook:";
11
- const WORKFLOW_HOOK_TOKEN_VERSION = "v1";
12
- const workflowHookKindSchema = z.enum(["hook", "webhook"]);
13
- const workflowHookTokenPayloadSchema = z.object({
14
- v: z.literal(1).optional(),
15
- runId: runIdSchema,
16
- name: nonBlankStringSchema,
17
- messageId: messageIdSchema,
18
- kind: workflowHookKindSchema.optional(),
19
- metadata: workflowPersistedValueSchema.optional()
20
- });
21
- const workflowHookTokenSchema = nonBlankStringSchema.refine((token) => token.startsWith(WORKFLOW_HOOK_TOKEN_PREFIX), { error: "Workflow hook token is invalid" });
22
- /** Decoded fields carried by a workflow webhook resume token. */
23
- const parsedWorkflowWebhookTokenSchema = z.object({
24
- runId: runIdSchema,
25
- name: nonBlankStringSchema,
26
- messageId: messageIdSchema
27
- });
28
- const parsedWorkflowHookTokenSchema = parsedWorkflowWebhookTokenSchema.extend({
29
- kind: workflowHookKindSchema,
30
- metadata: workflowPersistedValueSchema.optional()
31
- });
32
- /** Parses a workflow hook token and throws WorkflowHookError when it is invalid. */
33
- function parseHookToken(token) {
34
- const parsedToken = workflowHookTokenSchema.safeParse(token);
35
- if (!parsedToken.success) WorkflowHookError.tokenInvalid();
36
- const body = parsedToken.data.slice(12);
37
- if (body.startsWith(`v1:`)) try {
38
- const payload = JSON.parse(decodeBase64UrlString(body.slice(3)));
39
- const hook = workflowHookTokenPayloadSchema.safeParse(payload);
40
- if (!hook.success) WorkflowHookError.tokenInvalid();
41
- const parsedHook = parsedWorkflowHookTokenSchema.safeParse({
42
- runId: hook.data.runId,
43
- name: hook.data.name,
44
- messageId: hook.data.messageId,
45
- kind: hook.data.kind ?? "hook",
46
- ...hook.data.metadata === void 0 ? {} : { metadata: hook.data.metadata }
47
- });
48
- if (!parsedHook.success) WorkflowHookError.tokenInvalid();
49
- return parsedHook.data;
50
- } catch (error) {
51
- if (!(error instanceof WorkflowHookError)) WorkflowHookError.tokenInvalid();
52
- WorkflowHookError.tokenInvalid();
53
- }
54
- WorkflowHookError.tokenInvalid();
55
- }
56
- /** Parses a workflow webhook token and throws a webhook-specific options error when invalid. */
57
- function parseWebhookToken(token) {
58
- try {
59
- return parseHookToken(token);
60
- } catch (error) {
61
- if (error instanceof WorkflowHookError) WorkflowHookError.webhookTokenInvalid();
62
- throw error;
63
- }
64
- }
65
- //#endregion
66
- export { WORKFLOW_HOOK_TOKEN_PREFIX, WORKFLOW_HOOK_TOKEN_VERSION, parseHookToken, parseWebhookToken, parsedWorkflowHookTokenSchema, parsedWorkflowWebhookTokenSchema, workflowHookKindSchema, workflowHookTokenPayloadSchema, workflowHookTokenSchema };
1
+ export {};
@@ -0,0 +1,9 @@
1
+ //#region src/types/ids.d.ts
2
+ export type RunId = string;
3
+ export type StepId = string;
4
+ export type MessageId = string;
5
+ export type WorkerId = string;
6
+ export type StreamId = string;
7
+ /** A stream ID, or a stream name that resolves to the ID within one run. */
8
+ export type StreamIdOrName = string;
9
+ //#endregion
@@ -0,0 +1 @@
1
+ export {};
@@ -1,21 +1,7 @@
1
- import { RunId } from "./run-id.mjs";
2
- import { StepId } from "./step-id.mjs";
3
- import "./run.mjs";
4
- import { z } from "zod";
1
+ import { RunId, StepId } from "./ids.mjs";
5
2
  //#region src/types/lock.d.ts
6
- declare const workflowLockRecordSchema: z.ZodObject<{
7
- key: z.ZodString;
8
- namespace: z.ZodString;
9
- holderId: z.ZodString;
10
- holderRunId: z.ZodOptional<z.ZodString>;
11
- holderStepId: z.ZodOptional<z.ZodString>;
12
- fencingToken: z.ZodNumber;
13
- acquiredAt: z.ZodCustom<Temporal.Instant, Temporal.Instant>;
14
- leaseExpiresAt: z.ZodCustom<Temporal.Instant, Temporal.Instant>;
15
- releasedAt: z.ZodOptional<z.ZodCustom<Temporal.Instant, Temporal.Instant>>;
16
- }, z.core.$strip>;
17
3
  /** Stored lease-backed workflow lock state. */
18
- interface LockRecord {
4
+ export interface LockRecord {
19
5
  readonly key: string;
20
6
  readonly namespace: string;
21
7
  readonly holderId: string;
@@ -26,8 +12,7 @@ interface LockRecord {
26
12
  readonly leaseExpiresAt: Temporal.Instant;
27
13
  readonly releasedAt?: Temporal.Instant;
28
14
  }
29
- /** Options for acquiring a workflow lock. */
30
- interface AcquireLockOptions {
15
+ export interface AcquireLockOptions {
31
16
  readonly holderId: string;
32
17
  readonly holderRunId?: RunId;
33
18
  readonly holderStepId?: StepId;
@@ -37,27 +22,24 @@ interface AcquireLockOptions {
37
22
  readonly waitDeadlineAt?: Temporal.Instant;
38
23
  readonly now?: Temporal.Instant;
39
24
  }
40
- /** Options for acquiring a workflow lock from a durable step. */
41
- interface WorkflowStepAcquireLockOptions {
25
+ export interface StepAcquireLockOptions {
42
26
  readonly holderId?: string;
43
27
  readonly leaseDuration: Temporal.Duration;
44
28
  readonly wait?: boolean;
45
29
  readonly waitTimeout?: Temporal.Duration;
46
30
  readonly now?: Temporal.Instant;
47
31
  }
48
- /** Options for releasing a workflow lock from a durable step. */
49
- interface WorkflowStepReleaseLockOptions {
32
+ export interface StepReleaseLockOptions {
50
33
  readonly holderId?: string;
51
34
  readonly now?: Temporal.Instant;
52
35
  }
53
36
  /** Options for releasing a workflow lock outside workflow step execution. */
54
- interface ReleaseLockOptions {
37
+ export interface ReleaseLockOptions {
55
38
  readonly holderId: string;
56
39
  readonly now?: Temporal.Instant;
57
40
  }
58
41
  /** Options for releasing a workflow lock whose lease has expired. */
59
- interface ReleaseStaleLockOptions {
42
+ export interface ReleaseStaleLockOptions {
60
43
  readonly now?: Temporal.Instant;
61
44
  }
62
- //#endregion
63
- export { AcquireLockOptions, LockRecord, ReleaseLockOptions, ReleaseStaleLockOptions, WorkflowStepAcquireLockOptions, WorkflowStepReleaseLockOptions, workflowLockRecordSchema };
45
+ //#endregion
@@ -1,18 +1 @@
1
- import { nonBlankStringSchema, positiveSafeIntegerSchema, temporalInstantSchema } from "./common.mjs";
2
- import { runIdSchema } from "./run-id.mjs";
3
- import { stepIdSchema } from "./step-id.mjs";
4
- import { z } from "zod";
5
- //#region src/types/lock.ts
6
- const workflowLockRecordSchema = z.object({
7
- key: nonBlankStringSchema,
8
- namespace: nonBlankStringSchema,
9
- holderId: nonBlankStringSchema,
10
- holderRunId: runIdSchema.optional(),
11
- holderStepId: stepIdSchema.optional(),
12
- fencingToken: positiveSafeIntegerSchema,
13
- acquiredAt: temporalInstantSchema,
14
- leaseExpiresAt: temporalInstantSchema,
15
- releasedAt: temporalInstantSchema.optional()
16
- });
17
- //#endregion
18
- export { workflowLockRecordSchema };
1
+ export {};