@workflow/core 5.0.0-beta.5 → 5.0.0-beta.50

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 (310) hide show
  1. package/dist/attribute-changes.d.ts +5 -0
  2. package/dist/attribute-changes.d.ts.map +1 -0
  3. package/dist/attribute-changes.js +25 -0
  4. package/dist/capabilities.d.ts +35 -2
  5. package/dist/capabilities.d.ts.map +1 -1
  6. package/dist/capabilities.js +74 -5
  7. package/dist/capture-stack.d.ts +1 -1
  8. package/dist/capture-stack.js +2 -2
  9. package/dist/class-serialization.d.ts +32 -0
  10. package/dist/class-serialization.d.ts.map +1 -1
  11. package/dist/class-serialization.js +37 -1
  12. package/dist/classify-error.d.ts +19 -3
  13. package/dist/classify-error.d.ts.map +1 -1
  14. package/dist/classify-error.js +98 -6
  15. package/dist/context-violation-error.d.ts +5 -5
  16. package/dist/context-violation-error.d.ts.map +1 -1
  17. package/dist/context-violation-error.js +8 -6
  18. package/dist/create-hook.d.ts +72 -7
  19. package/dist/create-hook.d.ts.map +1 -1
  20. package/dist/create-hook.js +1 -1
  21. package/dist/define-hook.js +2 -2
  22. package/dist/describe-error.d.ts +7 -7
  23. package/dist/describe-error.d.ts.map +1 -1
  24. package/dist/describe-error.js +97 -12
  25. package/dist/encryption.d.ts +38 -4
  26. package/dist/encryption.d.ts.map +1 -1
  27. package/dist/encryption.js +96 -14
  28. package/dist/events-consumer.d.ts +271 -0
  29. package/dist/events-consumer.d.ts.map +1 -1
  30. package/dist/events-consumer.js +646 -42
  31. package/dist/flushable-stream.d.ts +56 -1
  32. package/dist/flushable-stream.d.ts.map +1 -1
  33. package/dist/flushable-stream.js +123 -11
  34. package/dist/global.d.ts +36 -2
  35. package/dist/global.d.ts.map +1 -1
  36. package/dist/global.js +21 -6
  37. package/dist/index.d.ts +2 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +3 -2
  40. package/dist/log-format.d.ts +2 -2
  41. package/dist/log-format.js +7 -7
  42. package/dist/logger.d.ts +1 -0
  43. package/dist/logger.d.ts.map +1 -1
  44. package/dist/logger.js +10 -6
  45. package/dist/private.d.ts +226 -9
  46. package/dist/private.d.ts.map +1 -1
  47. package/dist/private.js +626 -7
  48. package/dist/replay-payload-cache.d.ts +64 -0
  49. package/dist/replay-payload-cache.d.ts.map +1 -0
  50. package/dist/replay-payload-cache.js +158 -0
  51. package/dist/runtime/compute-instance.d.ts +13 -0
  52. package/dist/runtime/compute-instance.d.ts.map +1 -0
  53. package/dist/runtime/compute-instance.js +14 -0
  54. package/dist/runtime/constants.d.ts +315 -0
  55. package/dist/runtime/constants.d.ts.map +1 -1
  56. package/dist/runtime/constants.js +502 -16
  57. package/dist/runtime/count-step-started-events.d.ts +52 -0
  58. package/dist/runtime/count-step-started-events.d.ts.map +1 -0
  59. package/dist/runtime/count-step-started-events.js +72 -0
  60. package/dist/runtime/deployment-guard.d.ts +99 -0
  61. package/dist/runtime/deployment-guard.d.ts.map +1 -0
  62. package/dist/runtime/deployment-guard.js +154 -0
  63. package/dist/runtime/get-port-lazy.d.ts +15 -0
  64. package/dist/runtime/get-port-lazy.d.ts.map +1 -1
  65. package/dist/runtime/get-port-lazy.js +75 -6
  66. package/dist/runtime/get-world-lazy.d.ts +5 -14
  67. package/dist/runtime/get-world-lazy.d.ts.map +1 -1
  68. package/dist/runtime/get-world-lazy.js +19 -29
  69. package/dist/runtime/helpers.d.ts +341 -29
  70. package/dist/runtime/helpers.d.ts.map +1 -1
  71. package/dist/runtime/helpers.js +559 -57
  72. package/dist/runtime/quickjs-assets.generated.d.ts +14 -0
  73. package/dist/runtime/quickjs-assets.generated.d.ts.map +1 -0
  74. package/dist/runtime/quickjs-assets.generated.js +30 -0
  75. package/dist/runtime/quickjs-entrypoint.d.ts +136 -0
  76. package/dist/runtime/quickjs-entrypoint.d.ts.map +1 -0
  77. package/dist/runtime/quickjs-entrypoint.js +1686 -0
  78. package/dist/runtime/quickjs-runtime.d.ts +244 -0
  79. package/dist/runtime/quickjs-runtime.d.ts.map +1 -0
  80. package/dist/runtime/quickjs-runtime.js +2427 -0
  81. package/dist/runtime/quickjs-serde.d.ts +107 -0
  82. package/dist/runtime/quickjs-serde.d.ts.map +1 -0
  83. package/dist/runtime/quickjs-serde.js +2159 -0
  84. package/dist/runtime/replay-budget.d.ts +97 -0
  85. package/dist/runtime/replay-budget.d.ts.map +1 -0
  86. package/dist/runtime/replay-budget.js +139 -0
  87. package/dist/runtime/replay-recovery-reporter.d.ts +36 -0
  88. package/dist/runtime/replay-recovery-reporter.d.ts.map +1 -0
  89. package/dist/runtime/replay-recovery-reporter.js +64 -0
  90. package/dist/runtime/resume-hook.d.ts +91 -8
  91. package/dist/runtime/resume-hook.d.ts.map +1 -1
  92. package/dist/runtime/resume-hook.js +512 -89
  93. package/dist/runtime/resume-latency.d.ts +150 -0
  94. package/dist/runtime/resume-latency.d.ts.map +1 -0
  95. package/dist/runtime/resume-latency.js +155 -0
  96. package/dist/runtime/run-id-time.d.ts +19 -0
  97. package/dist/runtime/run-id-time.d.ts.map +1 -0
  98. package/dist/runtime/run-id-time.js +42 -0
  99. package/dist/runtime/run.d.ts +72 -7
  100. package/dist/runtime/run.d.ts.map +1 -1
  101. package/dist/runtime/run.js +280 -53
  102. package/dist/runtime/runs.d.ts +54 -3
  103. package/dist/runtime/runs.d.ts.map +1 -1
  104. package/dist/runtime/runs.js +126 -16
  105. package/dist/runtime/start.d.ts +101 -2
  106. package/dist/runtime/start.d.ts.map +1 -1
  107. package/dist/runtime/start.js +352 -61
  108. package/dist/runtime/step-executor.d.ts +205 -5
  109. package/dist/runtime/step-executor.d.ts.map +1 -1
  110. package/dist/runtime/step-executor.js +760 -127
  111. package/dist/runtime/step-latency.d.ts +220 -0
  112. package/dist/runtime/step-latency.d.ts.map +1 -0
  113. package/dist/runtime/step-latency.js +215 -0
  114. package/dist/runtime/step-ownership.d.ts +72 -0
  115. package/dist/runtime/step-ownership.d.ts.map +1 -0
  116. package/dist/runtime/step-ownership.js +114 -0
  117. package/dist/runtime/step-single-flight.d.ts +12 -0
  118. package/dist/runtime/step-single-flight.d.ts.map +1 -0
  119. package/dist/runtime/step-single-flight.js +75 -0
  120. package/dist/runtime/suspension-handler.d.ts +269 -7
  121. package/dist/runtime/suspension-handler.d.ts.map +1 -1
  122. package/dist/runtime/suspension-handler.js +1253 -125
  123. package/dist/runtime/unserializable-step.d.ts +34 -0
  124. package/dist/runtime/unserializable-step.d.ts.map +1 -0
  125. package/dist/runtime/unserializable-step.js +52 -0
  126. package/dist/runtime/vm-mode.d.ts +44 -0
  127. package/dist/runtime/vm-mode.d.ts.map +1 -0
  128. package/dist/runtime/vm-mode.js +62 -0
  129. package/dist/runtime/vm-serde-bundle.generated.d.ts +14 -0
  130. package/dist/runtime/vm-serde-bundle.generated.d.ts.map +1 -0
  131. package/dist/runtime/vm-serde-bundle.generated.js +16 -0
  132. package/dist/runtime/wait-continuation.d.ts +106 -0
  133. package/dist/runtime/wait-continuation.d.ts.map +1 -0
  134. package/dist/runtime/wait-continuation.js +136 -0
  135. package/dist/runtime/wait-until.d.ts +18 -0
  136. package/dist/runtime/wait-until.d.ts.map +1 -0
  137. package/dist/runtime/wait-until.js +42 -0
  138. package/dist/runtime/world-compatibility.d.ts +32 -0
  139. package/dist/runtime/world-compatibility.d.ts.map +1 -0
  140. package/dist/runtime/world-compatibility.js +44 -0
  141. package/dist/runtime/world-init.d.ts +17 -42
  142. package/dist/runtime/world-init.d.ts.map +1 -1
  143. package/dist/runtime/world-init.js +18 -43
  144. package/dist/runtime/world.d.ts +14 -2
  145. package/dist/runtime/world.d.ts.map +1 -1
  146. package/dist/runtime/world.js +75 -19
  147. package/dist/runtime.d.ts +10 -6
  148. package/dist/runtime.d.ts.map +1 -1
  149. package/dist/runtime.js +3741 -490
  150. package/dist/sealed-box.d.ts +167 -0
  151. package/dist/sealed-box.d.ts.map +1 -0
  152. package/dist/sealed-box.js +571 -0
  153. package/dist/serialization/client.d.ts +3 -3
  154. package/dist/serialization/client.d.ts.map +1 -1
  155. package/dist/serialization/client.js +8 -4
  156. package/dist/serialization/codec-devalue-vm.d.ts +16 -0
  157. package/dist/serialization/codec-devalue-vm.d.ts.map +1 -0
  158. package/dist/serialization/codec-devalue-vm.js +148 -0
  159. package/dist/serialization/codec-devalue.d.ts +1 -1
  160. package/dist/serialization/codec-devalue.d.ts.map +1 -1
  161. package/dist/serialization/codec-devalue.js +24 -6
  162. package/dist/serialization/codec.d.ts +37 -2
  163. package/dist/serialization/codec.d.ts.map +1 -1
  164. package/dist/serialization/codec.js +2 -2
  165. package/dist/serialization/compression.d.ts +105 -0
  166. package/dist/serialization/compression.d.ts.map +1 -0
  167. package/dist/serialization/compression.js +261 -0
  168. package/dist/serialization/encryption.d.ts +119 -17
  169. package/dist/serialization/encryption.d.ts.map +1 -1
  170. package/dist/serialization/encryption.js +152 -17
  171. package/dist/serialization/errors.d.ts +13 -0
  172. package/dist/serialization/errors.d.ts.map +1 -1
  173. package/dist/serialization/errors.js +20 -2
  174. package/dist/serialization/format.d.ts +6 -6
  175. package/dist/serialization/format.js +7 -7
  176. package/dist/serialization/hardened.d.ts +156 -0
  177. package/dist/serialization/hardened.d.ts.map +1 -0
  178. package/dist/serialization/hardened.js +538 -0
  179. package/dist/serialization/index.d.ts +10 -8
  180. package/dist/serialization/index.d.ts.map +1 -1
  181. package/dist/serialization/index.js +10 -8
  182. package/dist/serialization/reducers/class-vm.d.ts +20 -0
  183. package/dist/serialization/reducers/class-vm.d.ts.map +1 -0
  184. package/dist/serialization/reducers/class-vm.js +77 -0
  185. package/dist/serialization/reducers/class.d.ts.map +1 -1
  186. package/dist/serialization/reducers/class.js +11 -6
  187. package/dist/serialization/reducers/common-vm.d.ts +15 -0
  188. package/dist/serialization/reducers/common-vm.d.ts.map +1 -0
  189. package/dist/serialization/reducers/common-vm.js +616 -0
  190. package/dist/serialization/reducers/common.d.ts +1 -1
  191. package/dist/serialization/reducers/common.d.ts.map +1 -1
  192. package/dist/serialization/reducers/common.js +202 -62
  193. package/dist/serialization/reducers/step-function-vm.d.ts +44 -0
  194. package/dist/serialization/reducers/step-function-vm.d.ts.map +1 -0
  195. package/dist/serialization/reducers/step-function-vm.js +97 -0
  196. package/dist/serialization/reducers/step-function.d.ts.map +1 -1
  197. package/dist/serialization/reducers/step-function.js +25 -9
  198. package/dist/serialization/step.d.ts +4 -4
  199. package/dist/serialization/step.d.ts.map +1 -1
  200. package/dist/serialization/step.js +9 -5
  201. package/dist/serialization/types.d.ts +80 -1
  202. package/dist/serialization/types.d.ts.map +1 -1
  203. package/dist/serialization/types.js +15 -1
  204. package/dist/serialization/workflow-vm.d.ts +29 -0
  205. package/dist/serialization/workflow-vm.d.ts.map +1 -0
  206. package/dist/serialization/workflow-vm.js +74 -0
  207. package/dist/serialization-format.d.ts +64 -8
  208. package/dist/serialization-format.d.ts.map +1 -1
  209. package/dist/serialization-format.js +225 -73
  210. package/dist/serialization.d.ts +262 -34
  211. package/dist/serialization.d.ts.map +1 -1
  212. package/dist/serialization.js +1879 -274
  213. package/dist/set-attributes.d.ts +13 -0
  214. package/dist/set-attributes.d.ts.map +1 -0
  215. package/dist/set-attributes.js +60 -0
  216. package/dist/source-map.d.ts +25 -0
  217. package/dist/source-map.d.ts.map +1 -1
  218. package/dist/source-map.js +154 -10
  219. package/dist/step/context-storage.d.ts +61 -2
  220. package/dist/step/context-storage.d.ts.map +1 -1
  221. package/dist/step/context-storage.js +7 -5
  222. package/dist/step/writable-stream.d.ts +3 -3
  223. package/dist/step/writable-stream.d.ts.map +1 -1
  224. package/dist/step/writable-stream.js +72 -9
  225. package/dist/step.d.ts.map +1 -1
  226. package/dist/step.js +148 -27
  227. package/dist/symbols.d.ts +50 -0
  228. package/dist/symbols.d.ts.map +1 -1
  229. package/dist/symbols.js +51 -1
  230. package/dist/telemetry/semantic-conventions.d.ts +397 -2
  231. package/dist/telemetry/semantic-conventions.d.ts.map +1 -1
  232. package/dist/telemetry/semantic-conventions.js +297 -3
  233. package/dist/telemetry.d.ts +91 -0
  234. package/dist/telemetry.d.ts.map +1 -1
  235. package/dist/telemetry.js +244 -17
  236. package/dist/test-support/orchestrator-context.d.ts +25 -0
  237. package/dist/test-support/orchestrator-context.d.ts.map +1 -0
  238. package/dist/test-support/orchestrator-context.js +101 -0
  239. package/dist/types.d.ts +6 -0
  240. package/dist/types.d.ts.map +1 -1
  241. package/dist/types.js +23 -1
  242. package/dist/util.d.ts +0 -5
  243. package/dist/util.d.ts.map +1 -1
  244. package/dist/util.js +1 -15
  245. package/dist/version.d.ts +1 -1
  246. package/dist/version.d.ts.map +1 -1
  247. package/dist/version.js +2 -2
  248. package/dist/vm/index.d.ts.map +1 -1
  249. package/dist/vm/index.js +84 -14
  250. package/dist/vm/script-cache.d.ts +26 -0
  251. package/dist/vm/script-cache.d.ts.map +1 -0
  252. package/dist/vm/script-cache.js +131 -0
  253. package/dist/vm/uint8array-base64.js +1 -1
  254. package/dist/workflow/abort-controller.d.ts +2 -2
  255. package/dist/workflow/abort-controller.d.ts.map +1 -1
  256. package/dist/workflow/abort-controller.js +88 -21
  257. package/dist/workflow/attribute-dispatcher.d.ts +6 -0
  258. package/dist/workflow/attribute-dispatcher.d.ts.map +1 -0
  259. package/dist/workflow/attribute-dispatcher.js +45 -0
  260. package/dist/workflow/create-hook.d.ts.map +1 -1
  261. package/dist/workflow/create-hook.js +24 -3
  262. package/dist/workflow/get-workflow-metadata.js +2 -2
  263. package/dist/workflow/hook.d.ts.map +1 -1
  264. package/dist/workflow/hook.js +304 -47
  265. package/dist/workflow/index.d.ts +1 -0
  266. package/dist/workflow/index.d.ts.map +1 -1
  267. package/dist/workflow/index.js +2 -1
  268. package/dist/workflow/set-attributes.d.ts +68 -0
  269. package/dist/workflow/set-attributes.d.ts.map +1 -0
  270. package/dist/workflow/set-attributes.js +60 -0
  271. package/dist/workflow/sleep.d.ts.map +1 -1
  272. package/dist/workflow/sleep.js +58 -12
  273. package/dist/workflow/world-init-stub.d.ts +3 -3
  274. package/dist/workflow/world-init-stub.js +4 -4
  275. package/dist/workflow.d.ts +95 -3
  276. package/dist/workflow.d.ts.map +1 -1
  277. package/dist/workflow.js +895 -561
  278. package/docs/api-reference/create-hook.mdx +89 -10
  279. package/docs/api-reference/create-webhook.mdx +16 -15
  280. package/docs/api-reference/define-hook.mdx +35 -33
  281. package/docs/api-reference/fatal-error.mdx +30 -8
  282. package/docs/api-reference/fetch.mdx +14 -10
  283. package/docs/api-reference/get-step-metadata.mdx +2 -2
  284. package/docs/api-reference/get-workflow-metadata.mdx +3 -3
  285. package/docs/api-reference/get-writable.mdx +7 -7
  286. package/docs/api-reference/index.mdx +4 -1
  287. package/docs/api-reference/retryable-error.mdx +1 -1
  288. package/docs/api-reference/set-attributes.mdx +61 -0
  289. package/docs/api-reference/sleep.mdx +4 -4
  290. package/docs/foundations/cancellation.mdx +31 -32
  291. package/docs/foundations/errors-and-retries.mdx +42 -11
  292. package/docs/foundations/hooks.mdx +64 -35
  293. package/docs/foundations/idempotency.mdx +244 -12
  294. package/docs/foundations/index.mdx +1 -23
  295. package/docs/foundations/meta.json +2 -1
  296. package/docs/foundations/serialization.mdx +21 -22
  297. package/docs/foundations/starting-workflows.mdx +106 -30
  298. package/docs/foundations/streaming.mdx +107 -59
  299. package/docs/foundations/versioning.mdx +263 -0
  300. package/docs/foundations/workflows-and-steps.mdx +9 -9
  301. package/docs/how-it-works/cancellation.mdx +63 -63
  302. package/docs/how-it-works/code-transform.mdx +83 -67
  303. package/docs/how-it-works/encryption.mdx +30 -26
  304. package/docs/how-it-works/event-sourcing.mdx +98 -34
  305. package/docs/how-it-works/framework-integrations.mdx +96 -337
  306. package/docs/how-it-works/understanding-directives.mdx +22 -22
  307. package/package.json +24 -15
  308. package/dist/runtime/step-handler.d.ts +0 -2
  309. package/dist/runtime/step-handler.d.ts.map +0 -1
  310. package/dist/runtime/step-handler.js +0 -776
package/dist/symbols.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export declare const WORKFLOW_USE_STEP: unique symbol;
2
+ export declare const WORKFLOW_SET_ATTRIBUTES: unique symbol;
2
3
  export declare const WORKFLOW_CREATE_HOOK: unique symbol;
3
4
  export declare const WORKFLOW_SLEEP: unique symbol;
4
5
  export declare const WORKFLOW_CONTEXT: unique symbol;
@@ -6,6 +7,55 @@ export declare const WORKFLOW_GET_STREAM_ID: unique symbol;
6
7
  export declare const STABLE_ULID: unique symbol;
7
8
  export declare const STREAM_NAME_SYMBOL: unique symbol;
8
9
  export declare const STREAM_TYPE_SYMBOL: unique symbol;
10
+ export declare const STREAM_FRAMING_SYMBOL: unique symbol;
11
+ /**
12
+ * Stamped on a real `WritableStream` (the user-visible `serialize.writable`
13
+ * returned from a step-side reviver or step-context `getWritable()`) to
14
+ * record the `runId` of the workflow run that owns the underlying server
15
+ * stream. Used together with `STREAM_NAME_SYMBOL`.
16
+ *
17
+ * When `getExternalReducers.WritableStream` (the dehydration path used by
18
+ * `start()`) sees both symbols on a writable, it includes the `runId` in
19
+ * the descriptor it emits. The child run's step-side reviver then opens
20
+ * a server writable against the original `(runId, name)` and resolves
21
+ * that run's encryption key directly, so the child's writes land on
22
+ * the parent's stream as-is, with no client process in the loop. That
23
+ * keeps the forwarding alive for the full lifetime of the child run,
24
+ * not just for the parent step that initiated `start()`.
25
+ */
26
+ export declare const STREAM_SERVER_RUN_ID_SYMBOL: unique symbol;
27
+ /**
28
+ * Stamped alongside `STREAM_SERVER_RUN_ID_SYMBOL` when the deployment that
29
+ * owns a forwarded writable stream is known. Cross-deployment consumers use
30
+ * it to resolve the owning run's encryption key without loading the run first.
31
+ */
32
+ export declare const STREAM_SERVER_DEPLOYMENT_ID_SYMBOL: unique symbol;
33
+ /**
34
+ * Stamped alongside `STREAM_SERVER_RUN_ID_SYMBOL` with the owning run's
35
+ * X25519 public key (base64), when the run has one.
36
+ *
37
+ * This is what lets a forwarded writable be written to across a deployment
38
+ * boundary at zero cost. The owning run derives its own public key locally
39
+ * when it creates the stream, so the key travels inside the serialized
40
+ * descriptor; a child on another deployment can then seal frames immediately.
41
+ * Without it the child would have to either fetch the owning run or fetch its
42
+ * symmetric key from the API, the round trip this whole mechanism exists to
43
+ * avoid.
44
+ */
45
+ export declare const STREAM_SERVER_PUBLIC_KEY_SYMBOL: unique symbol;
46
+ /**
47
+ * Stamped on a `WorkflowServerWritableStream` instance to expose its
48
+ * durability barrier: `() => Promise<void>` that resolves once every accepted
49
+ * chunk has durably reached the server (nothing buffered, nothing in flight)
50
+ * and rejects if any dispatch failed.
51
+ *
52
+ * The sink acks `write()` on buffer entry (group-commit batching), so
53
+ * durability tracking lives here instead: `flushablePipe` feature-detects
54
+ * this and awaits it before resolving its lock-release completion, keeping
55
+ * the invariant that a step cannot complete while stream data is still
56
+ * client-side. Sinks without it are fully durable per `write()` already.
57
+ */
58
+ export declare const STREAM_DRAIN_SYMBOL: unique symbol;
9
59
  export declare const BODY_INIT_SYMBOL: unique symbol;
10
60
  export declare const WEBHOOK_RESPONSE_WRITABLE: unique symbol;
11
61
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"symbols.d.ts","sourceRoot":"","sources":["../src/symbols.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,eAAkC,CAAC;AACjE,eAAO,MAAM,oBAAoB,eAAqC,CAAC;AACvE,eAAO,MAAM,cAAc,eAA+B,CAAC;AAC3D,eAAO,MAAM,gBAAgB,eAAiC,CAAC;AAC/D,eAAO,MAAM,sBAAsB,eAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,eAAqC,CAAC;AAC9D,eAAO,MAAM,kBAAkB,eAAqC,CAAC;AACrE,eAAO,MAAM,kBAAkB,eAAqC,CAAC;AACrE,eAAO,MAAM,gBAAgB,eAA0B,CAAC;AACxD,eAAO,MAAM,yBAAyB,eAErC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAwC,CAAC;AAE7E,eAAO,MAAM,iBAAiB,eAA2C,CAAC;AAC1E,eAAO,MAAM,gBAAgB,eAA0C,CAAC;AACxE,eAAO,MAAM,uBAAuB,eAEnC,CAAC;AACF,eAAO,MAAM,mBAAmB,eAA6C,CAAC"}
1
+ {"version":3,"file":"symbols.d.ts","sourceRoot":"","sources":["../src/symbols.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,eAAkC,CAAC;AACjE,eAAO,MAAM,uBAAuB,eAAwC,CAAC;AAC7E,eAAO,MAAM,oBAAoB,eAAqC,CAAC;AACvE,eAAO,MAAM,cAAc,eAA+B,CAAC;AAC3D,eAAO,MAAM,gBAAgB,eAAiC,CAAC;AAC/D,eAAO,MAAM,sBAAsB,eAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,eAAqC,CAAC;AAC9D,eAAO,MAAM,kBAAkB,eAAqC,CAAC;AACrE,eAAO,MAAM,kBAAkB,eAAqC,CAAC;AACrE,eAAO,MAAM,qBAAqB,eAAwC,CAAC;AAC3E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,2BAA2B,eAEvC,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,eAE9C,CAAC;AACF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,+BAA+B,eAE3C,CAAC;AACF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,eAAsC,CAAC;AAEvE,eAAO,MAAM,gBAAgB,eAA0B,CAAC;AACxD,eAAO,MAAM,yBAAyB,eAErC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAwC,CAAC;AAE7E,eAAO,MAAM,iBAAiB,eAA2C,CAAC;AAC1E,eAAO,MAAM,gBAAgB,eAA0C,CAAC;AACxE,eAAO,MAAM,uBAAuB,eAEnC,CAAC;AACF,eAAO,MAAM,mBAAmB,eAA6C,CAAC"}
package/dist/symbols.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export const WORKFLOW_USE_STEP = Symbol.for('WORKFLOW_USE_STEP');
2
+ export const WORKFLOW_SET_ATTRIBUTES = Symbol.for('WORKFLOW_SET_ATTRIBUTES');
2
3
  export const WORKFLOW_CREATE_HOOK = Symbol.for('WORKFLOW_CREATE_HOOK');
3
4
  export const WORKFLOW_SLEEP = Symbol.for('WORKFLOW_SLEEP');
4
5
  export const WORKFLOW_CONTEXT = Symbol.for('WORKFLOW_CONTEXT');
@@ -6,6 +7,55 @@ export const WORKFLOW_GET_STREAM_ID = Symbol.for('WORKFLOW_GET_STREAM_ID');
6
7
  export const STABLE_ULID = Symbol.for('WORKFLOW_STABLE_ULID');
7
8
  export const STREAM_NAME_SYMBOL = Symbol.for('WORKFLOW_STREAM_NAME');
8
9
  export const STREAM_TYPE_SYMBOL = Symbol.for('WORKFLOW_STREAM_TYPE');
10
+ export const STREAM_FRAMING_SYMBOL = Symbol.for('WORKFLOW_STREAM_FRAMING');
11
+ /**
12
+ * Stamped on a real `WritableStream` (the user-visible `serialize.writable`
13
+ * returned from a step-side reviver or step-context `getWritable()`) to
14
+ * record the `runId` of the workflow run that owns the underlying server
15
+ * stream. Used together with `STREAM_NAME_SYMBOL`.
16
+ *
17
+ * When `getExternalReducers.WritableStream` (the dehydration path used by
18
+ * `start()`) sees both symbols on a writable, it includes the `runId` in
19
+ * the descriptor it emits. The child run's step-side reviver then opens
20
+ * a server writable against the original `(runId, name)` and resolves
21
+ * that run's encryption key directly, so the child's writes land on
22
+ * the parent's stream as-is, with no client process in the loop. That
23
+ * keeps the forwarding alive for the full lifetime of the child run,
24
+ * not just for the parent step that initiated `start()`.
25
+ */
26
+ export const STREAM_SERVER_RUN_ID_SYMBOL = Symbol.for('WORKFLOW_STREAM_SERVER_RUN_ID');
27
+ /**
28
+ * Stamped alongside `STREAM_SERVER_RUN_ID_SYMBOL` when the deployment that
29
+ * owns a forwarded writable stream is known. Cross-deployment consumers use
30
+ * it to resolve the owning run's encryption key without loading the run first.
31
+ */
32
+ export const STREAM_SERVER_DEPLOYMENT_ID_SYMBOL = Symbol.for('WORKFLOW_STREAM_SERVER_DEPLOYMENT_ID');
33
+ /**
34
+ * Stamped alongside `STREAM_SERVER_RUN_ID_SYMBOL` with the owning run's
35
+ * X25519 public key (base64), when the run has one.
36
+ *
37
+ * This is what lets a forwarded writable be written to across a deployment
38
+ * boundary at zero cost. The owning run derives its own public key locally
39
+ * when it creates the stream, so the key travels inside the serialized
40
+ * descriptor; a child on another deployment can then seal frames immediately.
41
+ * Without it the child would have to either fetch the owning run or fetch its
42
+ * symmetric key from the API, the round trip this whole mechanism exists to
43
+ * avoid.
44
+ */
45
+ export const STREAM_SERVER_PUBLIC_KEY_SYMBOL = Symbol.for('WORKFLOW_STREAM_SERVER_PUBLIC_KEY');
46
+ /**
47
+ * Stamped on a `WorkflowServerWritableStream` instance to expose its
48
+ * durability barrier: `() => Promise<void>` that resolves once every accepted
49
+ * chunk has durably reached the server (nothing buffered, nothing in flight)
50
+ * and rejects if any dispatch failed.
51
+ *
52
+ * The sink acks `write()` on buffer entry (group-commit batching), so
53
+ * durability tracking lives here instead: `flushablePipe` feature-detects
54
+ * this and awaits it before resolving its lock-release completion, keeping
55
+ * the invariant that a step cannot complete while stream data is still
56
+ * client-side. Sinks without it are fully durable per `write()` already.
57
+ */
58
+ export const STREAM_DRAIN_SYMBOL = Symbol.for('WORKFLOW_STREAM_DRAIN');
9
59
  export const BODY_INIT_SYMBOL = Symbol.for('BODY_INIT');
10
60
  export const WEBHOOK_RESPONSE_WRITABLE = Symbol.for('WEBHOOK_RESPONSE_WRITABLE');
11
61
  /**
@@ -17,4 +67,4 @@ export const ABORT_STREAM_NAME = Symbol.for('WORKFLOW_ABORT_STREAM_NAME');
17
67
  export const ABORT_HOOK_TOKEN = Symbol.for('WORKFLOW_ABORT_HOOK_TOKEN');
18
68
  export const ABORT_LISTENER_ATTACHED = Symbol.for('WORKFLOW_ABORT_LISTENER_ATTACHED');
19
69
  export const ABORT_READER_CANCEL = Symbol.for('WORKFLOW_ABORT_READER_CANCEL');
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUNqRSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDdkUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUMzRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDL0QsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQzNFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQ3JFLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUNyRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3hELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQ2pELDJCQUEyQixDQUM1QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsNEJBQTRCLENBQUMsQ0FBQztBQUMxRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDJCQUEyQixDQUFDLENBQUM7QUFDeEUsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FDL0Msa0NBQWtDLENBQ25DLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgV09SS0ZMT1dfVVNFX1NURVAgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19VU0VfU1RFUCcpO1xuZXhwb3J0IGNvbnN0IFdPUktGTE9XX0NSRUFURV9IT09LID0gU3ltYm9sLmZvcignV09SS0ZMT1dfQ1JFQVRFX0hPT0snKTtcbmV4cG9ydCBjb25zdCBXT1JLRkxPV19TTEVFUCA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX1NMRUVQJyk7XG5leHBvcnQgY29uc3QgV09SS0ZMT1dfQ09OVEVYVCA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX0NPTlRFWFQnKTtcbmV4cG9ydCBjb25zdCBXT1JLRkxPV19HRVRfU1RSRUFNX0lEID0gU3ltYm9sLmZvcignV09SS0ZMT1dfR0VUX1NUUkVBTV9JRCcpO1xuZXhwb3J0IGNvbnN0IFNUQUJMRV9VTElEID0gU3ltYm9sLmZvcignV09SS0ZMT1dfU1RBQkxFX1VMSUQnKTtcbmV4cG9ydCBjb25zdCBTVFJFQU1fTkFNRV9TWU1CT0wgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19TVFJFQU1fTkFNRScpO1xuZXhwb3J0IGNvbnN0IFNUUkVBTV9UWVBFX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX1NUUkVBTV9UWVBFJyk7XG5leHBvcnQgY29uc3QgQk9EWV9JTklUX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ0JPRFlfSU5JVCcpO1xuZXhwb3J0IGNvbnN0IFdFQkhPT0tfUkVTUE9OU0VfV1JJVEFCTEUgPSBTeW1ib2wuZm9yKFxuICAnV0VCSE9PS19SRVNQT05TRV9XUklUQUJMRSdcbik7XG5cbi8qKlxuICogU3ltYm9sIHVzZWQgdG8gc3RvcmUgdGhlIGNsYXNzIHJlZ2lzdHJ5IG9uIGdsb2JhbFRoaXMgaW4gd29ya2Zsb3cgbW9kZS5cbiAqIFRoaXMgYWxsb3dzIHRoZSBkZXNlcmlhbGl6ZXIgdG8gZmluZCBjbGFzc2VzIGJ5IGNsYXNzSWQgaW4gdGhlIFZNIGNvbnRleHQuXG4gKi9cbmV4cG9ydCBjb25zdCBXT1JLRkxPV19DTEFTU19SRUdJU1RSWSA9IFN5bWJvbC5mb3IoJ3dvcmtmbG93LWNsYXNzLXJlZ2lzdHJ5Jyk7XG5cbmV4cG9ydCBjb25zdCBBQk9SVF9TVFJFQU1fTkFNRSA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX0FCT1JUX1NUUkVBTV9OQU1FJyk7XG5leHBvcnQgY29uc3QgQUJPUlRfSE9PS19UT0tFTiA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX0FCT1JUX0hPT0tfVE9LRU4nKTtcbmV4cG9ydCBjb25zdCBBQk9SVF9MSVNURU5FUl9BVFRBQ0hFRCA9IFN5bWJvbC5mb3IoXG4gICdXT1JLRkxPV19BQk9SVF9MSVNURU5FUl9BVFRBQ0hFRCdcbik7XG5leHBvcnQgY29uc3QgQUJPUlRfUkVBREVSX0NBTkNFTCA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX0FCT1JUX1JFQURFUl9DQU5DRUwnKTtcbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUNqRSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDN0UsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDM0QsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQy9ELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsQ0FBQztBQUMzRSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQzlELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUNyRSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDckUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0FBQzNFOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FDbkQsK0JBQStCLENBQ2hDLENBQUM7QUFDRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FDMUQsc0NBQXNDLENBQ3ZDLENBQUM7QUFDRjs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQ3ZELG1DQUFtQyxDQUNwQyxDQUFDO0FBQ0Y7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUFFdkUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUNqRCwyQkFBMkIsQ0FDNUIsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQztBQUU3RSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUM7QUFDMUUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0FBQ3hFLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQy9DLGtDQUFrQyxDQUNuQyxDQUFDO0FBQ0YsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFdPUktGTE9XX1VTRV9TVEVQID0gU3ltYm9sLmZvcignV09SS0ZMT1dfVVNFX1NURVAnKTtcbmV4cG9ydCBjb25zdCBXT1JLRkxPV19TRVRfQVRUUklCVVRFUyA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX1NFVF9BVFRSSUJVVEVTJyk7XG5leHBvcnQgY29uc3QgV09SS0ZMT1dfQ1JFQVRFX0hPT0sgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19DUkVBVEVfSE9PSycpO1xuZXhwb3J0IGNvbnN0IFdPUktGTE9XX1NMRUVQID0gU3ltYm9sLmZvcignV09SS0ZMT1dfU0xFRVAnKTtcbmV4cG9ydCBjb25zdCBXT1JLRkxPV19DT05URVhUID0gU3ltYm9sLmZvcignV09SS0ZMT1dfQ09OVEVYVCcpO1xuZXhwb3J0IGNvbnN0IFdPUktGTE9XX0dFVF9TVFJFQU1fSUQgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19HRVRfU1RSRUFNX0lEJyk7XG5leHBvcnQgY29uc3QgU1RBQkxFX1VMSUQgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19TVEFCTEVfVUxJRCcpO1xuZXhwb3J0IGNvbnN0IFNUUkVBTV9OQU1FX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ1dPUktGTE9XX1NUUkVBTV9OQU1FJyk7XG5leHBvcnQgY29uc3QgU1RSRUFNX1RZUEVfU1lNQk9MID0gU3ltYm9sLmZvcignV09SS0ZMT1dfU1RSRUFNX1RZUEUnKTtcbmV4cG9ydCBjb25zdCBTVFJFQU1fRlJBTUlOR19TWU1CT0wgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19TVFJFQU1fRlJBTUlORycpO1xuLyoqXG4gKiBTdGFtcGVkIG9uIGEgcmVhbCBgV3JpdGFibGVTdHJlYW1gICh0aGUgdXNlci12aXNpYmxlIGBzZXJpYWxpemUud3JpdGFibGVgXG4gKiByZXR1cm5lZCBmcm9tIGEgc3RlcC1zaWRlIHJldml2ZXIgb3Igc3RlcC1jb250ZXh0IGBnZXRXcml0YWJsZSgpYCkgdG9cbiAqIHJlY29yZCB0aGUgYHJ1bklkYCBvZiB0aGUgd29ya2Zsb3cgcnVuIHRoYXQgb3ducyB0aGUgdW5kZXJseWluZyBzZXJ2ZXJcbiAqIHN0cmVhbS4gVXNlZCB0b2dldGhlciB3aXRoIGBTVFJFQU1fTkFNRV9TWU1CT0xgLlxuICpcbiAqIFdoZW4gYGdldEV4dGVybmFsUmVkdWNlcnMuV3JpdGFibGVTdHJlYW1gICh0aGUgZGVoeWRyYXRpb24gcGF0aCB1c2VkIGJ5XG4gKiBgc3RhcnQoKWApIHNlZXMgYm90aCBzeW1ib2xzIG9uIGEgd3JpdGFibGUsIGl0IGluY2x1ZGVzIHRoZSBgcnVuSWRgIGluXG4gKiB0aGUgZGVzY3JpcHRvciBpdCBlbWl0cy4gVGhlIGNoaWxkIHJ1bidzIHN0ZXAtc2lkZSByZXZpdmVyIHRoZW4gb3BlbnNcbiAqIGEgc2VydmVyIHdyaXRhYmxlIGFnYWluc3QgdGhlIG9yaWdpbmFsIGAocnVuSWQsIG5hbWUpYCBhbmQgcmVzb2x2ZXNcbiAqIHRoYXQgcnVuJ3MgZW5jcnlwdGlvbiBrZXkgZGlyZWN0bHksIHNvIHRoZSBjaGlsZCdzIHdyaXRlcyBsYW5kIG9uXG4gKiB0aGUgcGFyZW50J3Mgc3RyZWFtIGFzLWlzLCB3aXRoIG5vIGNsaWVudCBwcm9jZXNzIGluIHRoZSBsb29wLiBUaGF0XG4gKiBrZWVwcyB0aGUgZm9yd2FyZGluZyBhbGl2ZSBmb3IgdGhlIGZ1bGwgbGlmZXRpbWUgb2YgdGhlIGNoaWxkIHJ1bixcbiAqIG5vdCBqdXN0IGZvciB0aGUgcGFyZW50IHN0ZXAgdGhhdCBpbml0aWF0ZWQgYHN0YXJ0KClgLlxuICovXG5leHBvcnQgY29uc3QgU1RSRUFNX1NFUlZFUl9SVU5fSURfU1lNQk9MID0gU3ltYm9sLmZvcihcbiAgJ1dPUktGTE9XX1NUUkVBTV9TRVJWRVJfUlVOX0lEJ1xuKTtcbi8qKlxuICogU3RhbXBlZCBhbG9uZ3NpZGUgYFNUUkVBTV9TRVJWRVJfUlVOX0lEX1NZTUJPTGAgd2hlbiB0aGUgZGVwbG95bWVudCB0aGF0XG4gKiBvd25zIGEgZm9yd2FyZGVkIHdyaXRhYmxlIHN0cmVhbSBpcyBrbm93bi4gQ3Jvc3MtZGVwbG95bWVudCBjb25zdW1lcnMgdXNlXG4gKiBpdCB0byByZXNvbHZlIHRoZSBvd25pbmcgcnVuJ3MgZW5jcnlwdGlvbiBrZXkgd2l0aG91dCBsb2FkaW5nIHRoZSBydW4gZmlyc3QuXG4gKi9cbmV4cG9ydCBjb25zdCBTVFJFQU1fU0VSVkVSX0RFUExPWU1FTlRfSURfU1lNQk9MID0gU3ltYm9sLmZvcihcbiAgJ1dPUktGTE9XX1NUUkVBTV9TRVJWRVJfREVQTE9ZTUVOVF9JRCdcbik7XG4vKipcbiAqIFN0YW1wZWQgYWxvbmdzaWRlIGBTVFJFQU1fU0VSVkVSX1JVTl9JRF9TWU1CT0xgIHdpdGggdGhlIG93bmluZyBydW4nc1xuICogWDI1NTE5IHB1YmxpYyBrZXkgKGJhc2U2NCksIHdoZW4gdGhlIHJ1biBoYXMgb25lLlxuICpcbiAqIFRoaXMgaXMgd2hhdCBsZXRzIGEgZm9yd2FyZGVkIHdyaXRhYmxlIGJlIHdyaXR0ZW4gdG8gYWNyb3NzIGEgZGVwbG95bWVudFxuICogYm91bmRhcnkgYXQgemVybyBjb3N0LiBUaGUgb3duaW5nIHJ1biBkZXJpdmVzIGl0cyBvd24gcHVibGljIGtleSBsb2NhbGx5XG4gKiB3aGVuIGl0IGNyZWF0ZXMgdGhlIHN0cmVhbSwgc28gdGhlIGtleSB0cmF2ZWxzIGluc2lkZSB0aGUgc2VyaWFsaXplZFxuICogZGVzY3JpcHRvcjsgYSBjaGlsZCBvbiBhbm90aGVyIGRlcGxveW1lbnQgY2FuIHRoZW4gc2VhbCBmcmFtZXMgaW1tZWRpYXRlbHkuXG4gKiBXaXRob3V0IGl0IHRoZSBjaGlsZCB3b3VsZCBoYXZlIHRvIGVpdGhlciBmZXRjaCB0aGUgb3duaW5nIHJ1biBvciBmZXRjaCBpdHNcbiAqIHN5bW1ldHJpYyBrZXkgZnJvbSB0aGUgQVBJLCB0aGUgcm91bmQgdHJpcCB0aGlzIHdob2xlIG1lY2hhbmlzbSBleGlzdHMgdG9cbiAqIGF2b2lkLlxuICovXG5leHBvcnQgY29uc3QgU1RSRUFNX1NFUlZFUl9QVUJMSUNfS0VZX1NZTUJPTCA9IFN5bWJvbC5mb3IoXG4gICdXT1JLRkxPV19TVFJFQU1fU0VSVkVSX1BVQkxJQ19LRVknXG4pO1xuLyoqXG4gKiBTdGFtcGVkIG9uIGEgYFdvcmtmbG93U2VydmVyV3JpdGFibGVTdHJlYW1gIGluc3RhbmNlIHRvIGV4cG9zZSBpdHNcbiAqIGR1cmFiaWxpdHkgYmFycmllcjogYCgpID0+IFByb21pc2U8dm9pZD5gIHRoYXQgcmVzb2x2ZXMgb25jZSBldmVyeSBhY2NlcHRlZFxuICogY2h1bmsgaGFzIGR1cmFibHkgcmVhY2hlZCB0aGUgc2VydmVyIChub3RoaW5nIGJ1ZmZlcmVkLCBub3RoaW5nIGluIGZsaWdodClcbiAqIGFuZCByZWplY3RzIGlmIGFueSBkaXNwYXRjaCBmYWlsZWQuXG4gKlxuICogVGhlIHNpbmsgYWNrcyBgd3JpdGUoKWAgb24gYnVmZmVyIGVudHJ5IChncm91cC1jb21taXQgYmF0Y2hpbmcpLCBzb1xuICogZHVyYWJpbGl0eSB0cmFja2luZyBsaXZlcyBoZXJlIGluc3RlYWQ6IGBmbHVzaGFibGVQaXBlYCBmZWF0dXJlLWRldGVjdHNcbiAqIHRoaXMgYW5kIGF3YWl0cyBpdCBiZWZvcmUgcmVzb2x2aW5nIGl0cyBsb2NrLXJlbGVhc2UgY29tcGxldGlvbiwga2VlcGluZ1xuICogdGhlIGludmFyaWFudCB0aGF0IGEgc3RlcCBjYW5ub3QgY29tcGxldGUgd2hpbGUgc3RyZWFtIGRhdGEgaXMgc3RpbGxcbiAqIGNsaWVudC1zaWRlLiBTaW5rcyB3aXRob3V0IGl0IGFyZSBmdWxseSBkdXJhYmxlIHBlciBgd3JpdGUoKWAgYWxyZWFkeS5cbiAqL1xuZXhwb3J0IGNvbnN0IFNUUkVBTV9EUkFJTl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19TVFJFQU1fRFJBSU4nKTtcblxuZXhwb3J0IGNvbnN0IEJPRFlfSU5JVF9TWU1CT0wgPSBTeW1ib2wuZm9yKCdCT0RZX0lOSVQnKTtcbmV4cG9ydCBjb25zdCBXRUJIT09LX1JFU1BPTlNFX1dSSVRBQkxFID0gU3ltYm9sLmZvcihcbiAgJ1dFQkhPT0tfUkVTUE9OU0VfV1JJVEFCTEUnXG4pO1xuXG4vKipcbiAqIFN5bWJvbCB1c2VkIHRvIHN0b3JlIHRoZSBjbGFzcyByZWdpc3RyeSBvbiBnbG9iYWxUaGlzIGluIHdvcmtmbG93IG1vZGUuXG4gKiBUaGlzIGFsbG93cyB0aGUgZGVzZXJpYWxpemVyIHRvIGZpbmQgY2xhc3NlcyBieSBjbGFzc0lkIGluIHRoZSBWTSBjb250ZXh0LlxuICovXG5leHBvcnQgY29uc3QgV09SS0ZMT1dfQ0xBU1NfUkVHSVNUUlkgPSBTeW1ib2wuZm9yKCd3b3JrZmxvdy1jbGFzcy1yZWdpc3RyeScpO1xuXG5leHBvcnQgY29uc3QgQUJPUlRfU1RSRUFNX05BTUUgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19BQk9SVF9TVFJFQU1fTkFNRScpO1xuZXhwb3J0IGNvbnN0IEFCT1JUX0hPT0tfVE9LRU4gPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19BQk9SVF9IT09LX1RPS0VOJyk7XG5leHBvcnQgY29uc3QgQUJPUlRfTElTVEVORVJfQVRUQUNIRUQgPSBTeW1ib2wuZm9yKFxuICAnV09SS0ZMT1dfQUJPUlRfTElTVEVORVJfQVRUQUNIRUQnXG4pO1xuZXhwb3J0IGNvbnN0IEFCT1JUX1JFQURFUl9DQU5DRUwgPSBTeW1ib2wuZm9yKCdXT1JLRkxPV19BQk9SVF9SRUFERVJfQ0FOQ0VMJyk7XG4iXX0=
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * This module provides standardized telemetry attributes following OpenTelemetry semantic conventions
5
5
  * for instrumenting workflow execution, step processing, and related operations. Each exported function
6
- * creates a properly formatted attribute object that can be used with OpenTelemetry spans.
6
+ * creates a properly formatted attribute object for use with OpenTelemetry spans.
7
7
  *
8
8
  * The semantic conventions are organized into several categories:
9
9
  * - **Workflow attributes**: Track workflow lifecycle, status, and metadata
@@ -11,7 +11,7 @@
11
11
  * - **Queue attributes**: Instrument message queue operations
12
12
  * - **Deployment attributes**: Capture deployment environment information
13
13
  *
14
- * All attribute functions are type-safe and leverage existing backend types to ensure
14
+ * All attribute functions are type-safe and use existing backend types to ensure
15
15
  * consistency between telemetry data and actual system state.
16
16
  *
17
17
  * @example
@@ -60,6 +60,42 @@ export declare const WorkflowStartedAt: (value: number) => {
60
60
  export declare const WorkflowEventsCount: (value: number) => {
61
61
  [k: string]: number;
62
62
  };
63
+ /** Whether workflow execution starts with replay or resumes a retained VM */
64
+ export declare const WorkflowExecutionMode: (value: "replay" | "retained") => {
65
+ [k: string]: "replay" | "retained";
66
+ };
67
+ /** Whether the compiled application workflow bundle was cached. */
68
+ export declare const WorkflowBundleCompileCacheHit: (value: boolean) => {
69
+ [k: string]: boolean;
70
+ };
71
+ /** Operation that supplied events to the current replay. */
72
+ export type WorkflowReplayLoadSource = 'run_started' | 'hook_preload' | 'events_list' | 'events_list_incremental';
73
+ export declare const WorkflowReplayLoadSource: (value: WorkflowReplayLoadSource) => {
74
+ [k: string]: WorkflowReplayLoadSource;
75
+ };
76
+ /**
77
+ * Events the replay walked past that no consumer claimed, still held when the
78
+ * replay stopped.
79
+ *
80
+ * A non-zero count on a suspension is ordinary: an out-of-band delivery that
81
+ * landed ahead of the code that reads it waits for the replay that gets there.
82
+ * From inside one replay that is indistinguishable from an event no replay will
83
+ * ever claim, because the two differ only in what the next replay does. So the
84
+ * count goes on the span instead of failing the run, and the case worth acting
85
+ * on is a query across a run's spans: the same
86
+ * {@link WorkflowParkedEventId} held on suspension after suspension.
87
+ */
88
+ export declare const WorkflowParkedEventsCount: (value: number) => {
89
+ [k: string]: number;
90
+ };
91
+ /** Oldest event still held unclaimed when the replay stopped. */
92
+ export declare const WorkflowParkedEventId: (value: string) => {
93
+ [k: string]: string;
94
+ };
95
+ /** Type of the oldest event still held unclaimed when the replay stopped. */
96
+ export declare const WorkflowParkedEventType: (value: string) => {
97
+ [k: string]: string;
98
+ };
63
99
  /** Number of arguments passed to the workflow */
64
100
  export declare const WorkflowArgumentsCount: (value: number) => {
65
101
  [k: string]: number;
@@ -72,6 +108,42 @@ export declare const WorkflowResultType: (value: string) => {
72
108
  export declare const WorkflowTracePropagated: (value: boolean) => {
73
109
  [k: string]: boolean;
74
110
  };
111
+ /** The VM engine executing the workflow function for this invocation */
112
+ export declare const WorkflowVm: (value: "node" | "quickjs") => {
113
+ [k: string]: "node" | "quickjs";
114
+ };
115
+ /** Outcome of a QuickJS VM workflow invocation */
116
+ export declare const QuickJSOutcome: (value: "completed" | "failed" | "suspended") => {
117
+ [k: string]: "completed" | "failed" | "suspended";
118
+ };
119
+ /** Whether preloaded events from `events.create('run_started')` were used */
120
+ export declare const QuickJSEventsPreloaded: (value: boolean) => {
121
+ [k: string]: boolean;
122
+ };
123
+ /** Total number of events fetched from the world for this invocation */
124
+ export declare const QuickJSEventsFetchedCount: (value: number) => {
125
+ [k: string]: number;
126
+ };
127
+ /** Number of pages required to fetch all events */
128
+ export declare const QuickJSEventsFetchedPages: (value: number) => {
129
+ [k: string]: number;
130
+ };
131
+ /** Number of pending VM operations captured at suspension */
132
+ export declare const QuickJSPendingOpsCount: (value: number) => {
133
+ [k: string]: number;
134
+ };
135
+ /** Number of steps executed inline (live-VM continuation) this invocation */
136
+ export declare const QuickJSInlineSteps: (value: number) => {
137
+ [k: string]: number;
138
+ };
139
+ /** Active trace-correlation mode for this invocation (linked or continuous) */
140
+ export declare const WorkflowTraceMode: (value: "linked" | "continuous") => {
141
+ [k: string]: "linked" | "continuous";
142
+ };
143
+ /** Whether this workflow invocation is using the turbo first-delivery path */
144
+ export declare const WorkflowTurbo: (value: boolean) => {
145
+ [k: string]: boolean;
146
+ };
75
147
  /** Name of the error that caused workflow failure */
76
148
  export declare const WorkflowErrorName: (value: string) => {
77
149
  [k: string]: string;
@@ -96,6 +168,59 @@ export declare const WorkflowHooksCreated: (value: number) => {
96
168
  export declare const WorkflowWaitsCreated: (value: number) => {
97
169
  [k: string]: number;
98
170
  };
171
+ /**
172
+ * Number of steps this suspension finalized as failed because their
173
+ * arguments refused to serialize (step_created placeholder + step_failed
174
+ * carrying the SerializationError; see finalizeUnserializableStep).
175
+ */
176
+ export declare const WorkflowStepsFailedSerialization: (value: number) => {
177
+ [k: string]: number;
178
+ };
179
+ /**
180
+ * Number of inline-owned steps this invocation re-executed because it is a
181
+ * redelivery of their owning queue message (crash recovery for inline
182
+ * steps; see the inline step ownership changelog, workflow#2780).
183
+ */
184
+ export declare const WorkflowOwnedRecoverySteps: (value: number) => {
185
+ [k: string]: number;
186
+ };
187
+ /**
188
+ * Number of pending steps for which this replay suppressed the immediate
189
+ * requeue (another invocation inline-owns them under a live lease) and
190
+ * ensured a delayed backstop wake instead.
191
+ */
192
+ export declare const WorkflowBackstopWakesArmed: (value: number) => {
193
+ [k: string]: number;
194
+ };
195
+ /** The workflow runtime route being handled */
196
+ export declare const WorkflowRouteType: (value: "flow") => {
197
+ [k: string]: "flow";
198
+ };
199
+ /** Whether this route invocation reused an already-created request handler */
200
+ export declare const WorkflowRouteHandlerCached: (value: boolean) => {
201
+ [k: string]: boolean;
202
+ };
203
+ /** Number of times this in-memory route handler has been invoked */
204
+ export declare const WorkflowRouteInvocationCount: (value: number) => {
205
+ [k: string]: number;
206
+ };
207
+ /** Time since this route entrypoint was constructed, in milliseconds */
208
+ export declare const WorkflowRouteEntrypointAgeMs: (value: number) => {
209
+ [k: string]: number;
210
+ };
211
+ /** Time spent evaluating the generated route module body before creating the entrypoint */
212
+ export declare const WorkflowRouteModuleBodyInitMs: (value: number) => {
213
+ [k: string]: number;
214
+ };
215
+ /**
216
+ * Compute instance handling this route: the synthesized `COMPUTE_INSTANCE_ID`.
217
+ * Uses OTEL `faas.instance` (execution-environment id, reused across
218
+ * invocations to the same function):
219
+ * https://opentelemetry.io/docs/specs/semconv/attributes-registry/faas/
220
+ */
221
+ export declare const FaasInstance: (value: string) => {
222
+ [k: string]: string;
223
+ };
99
224
  /** Name of the step function being executed */
100
225
  export declare const StepName: (value: string) => {
101
226
  [k: string]: string;
@@ -120,6 +245,55 @@ export declare const StepMaxRetries: (value: number) => {
120
245
  export declare const StepTracePropagated: (value: boolean) => {
121
246
  [k: string]: boolean;
122
247
  };
248
+ /**
249
+ * Client-measured time-to-first-step latency in milliseconds: run creation →
250
+ * this step's body beginning to execute, minus pre-step hook-creation time.
251
+ * Only present on the run's first step execution when it qualified for
252
+ * measurement (see runtime/step-latency.ts).
253
+ */
254
+ export declare const StepTtfsMs: (value: number) => {
255
+ [k: string]: number;
256
+ };
257
+ /**
258
+ * Client-measured step-to-step overhead in milliseconds: the previous step's
259
+ * terminal event → this step's body beginning to execute. Only present when
260
+ * the two steps ran back-to-back.
261
+ */
262
+ export declare const StepStsoMs: (value: number) => {
263
+ [k: string]: number;
264
+ };
265
+ /**
266
+ * Client-measured run_started-to-first-step latency in milliseconds: the
267
+ * `run_started` response landing (or, under turbo, the local run synthesis
268
+ * instant) → this step's start POST being issued. A sub-window of ttfs that
269
+ * isolates replay overhead from the run-creation queue hop. Only present on
270
+ * the run's first step execution when it qualified for measurement (see
271
+ * runtime/step-latency.ts).
272
+ */
273
+ export declare const StepRsfsMs: (value: number) => {
274
+ [k: string]: number;
275
+ };
276
+ /**
277
+ * Client-measured synchronous workflow-function replay duration in
278
+ * milliseconds, excluding awaited network I/O, of only the FINAL replay pass
279
+ * within the rsfs window: the pass that reached and scheduled the first
280
+ * step. Not accumulated across earlier pre-first-step passes (e.g. a
281
+ * workflow-body `setAttributes()` detour replays more than once, and a
282
+ * redelivery omits earlier invocations' work entirely), so this must not be
283
+ * read as "the replay portion of rsfs"; step.rsfs_ms covers the whole
284
+ * window. Only present alongside step.rsfs_ms and only for the run's first
285
+ * step (see runtime/step-latency.ts).
286
+ */
287
+ export declare const StepFinalSchedulingReplayMs: (value: number) => {
288
+ [k: string]: number;
289
+ };
290
+ /**
291
+ * Runtime startup-latency optimizations active for the ttfs/stso measurement
292
+ * (e.g. 'turbo', 'lazyStepStart', 'optimisticStart').
293
+ */
294
+ export declare const StepLatencyOptimizations: (value: string[]) => {
295
+ [k: string]: string[];
296
+ };
123
297
  /** Whether the step was skipped during execution */
124
298
  export declare const StepSkipped: (value: boolean) => {
125
299
  [k: string]: boolean;
@@ -184,6 +358,18 @@ export declare const QueueOverheadMs: (value: number) => {
184
358
  export declare const DeploymentId: (value: string) => {
185
359
  [k: string]: string;
186
360
  };
361
+ /** The deployment a run is pinned to, set only on a misrouted delivery. */
362
+ export declare const WorkflowRunPinnedDeploymentId: (value: string) => {
363
+ [k: string]: string;
364
+ };
365
+ /** Re-route attempts for this misrouted delivery, including this one. */
366
+ export declare const WorkflowDeploymentMismatchRetryCount: (value: number) => {
367
+ [k: string]: number;
368
+ };
369
+ /** Whether the misrouted delivery was re-routed instead of failing the run. */
370
+ export declare const WorkflowDeploymentMismatchRecovered: (value: boolean) => {
371
+ [k: string]: boolean;
372
+ };
187
373
  /** Token identifying a specific hook */
188
374
  export declare const HookToken: (value: string) => {
189
375
  [k: string]: string;
@@ -196,6 +382,173 @@ export declare const HookId: (value: string) => {
196
382
  export declare const HookFound: (value: boolean) => {
197
383
  [k: string]: boolean;
198
384
  };
385
+ /**
386
+ * Producer-side signal (on the `hook.resume` span) that the direct
387
+ * `hook_received` write failed transiently but the queue dispatch succeeded, so
388
+ * the resume is recovered via the consumer's re-ensure. Corresponds to
389
+ * `ResumedHook.resilientResume === true`.
390
+ *
391
+ * No longer emitted: current producers require the durable event write to
392
+ * succeed. Retained so dashboards and queries built on the attribute keep
393
+ * resolving while older producers are still deployed.
394
+ */
395
+ export declare const HookResilientResume: (value: boolean) => {
396
+ [k: string]: boolean;
397
+ };
398
+ /**
399
+ * Producer-side signal (on the `hook.resume` span) that the durable
400
+ * `hook_received` write COMMITTED. Stamped after the write resolves, so it
401
+ * distinguishes a committed resume from an attempted one — an entry-time
402
+ * attribute cannot, because a span that later records an exception may have
403
+ * failed either before or after the commit.
404
+ */
405
+ export declare const HookResumeCommitted: (value: boolean) => {
406
+ [k: string]: boolean;
407
+ };
408
+ /**
409
+ * Producer-side signal (on the `hook.resume` span) that the workflow wake was
410
+ * ACCEPTED by the queue, stamped after the publish resolves.
411
+ *
412
+ * Together with {@link HookResumeCommitted} this makes stranded resumes
413
+ * queryable: `resume_committed=true` with `wake_published` absent is a resume
414
+ * whose durable event exists but whose wake publish failed (the caller was
415
+ * told, but nothing re-drives it), and `resume_committed=true` +
416
+ * `wake_published=true` with no subsequent workflow execution for the run is
417
+ * a wake the queue accepted but never delivered. Both are detection-only
418
+ * signals — nothing recovers such a run automatically today beyond a later
419
+ * wake from any other source.
420
+ */
421
+ export declare const HookWakePublished: (value: boolean) => {
422
+ [k: string]: boolean;
423
+ };
424
+ /**
425
+ * Consumer-side signal (on the workflow execution span) that this replay
426
+ * materialized the `hook_received` event from the queue message's `hookInput`
427
+ * because no committed event was found, which completes the recovery path
428
+ * {@link HookResilientResume} began.
429
+ *
430
+ * Legacy / non-atomic re-ensure signal only. Legacy atomic lazy resumes
431
+ * (resumeId + digest) go through the hoisted preload write instead, whose
432
+ * response cannot tell whether the producer or the consumer won the
433
+ * `(runId, resumeId)` claim, so this attribute is deliberately NOT emitted
434
+ * for them (emitting `true` unconditionally would count every producer-won
435
+ * resume as a recovery). The producer-begin ({@link HookResilientResume}) /
436
+ * consumer-materialized pairing is therefore no longer complete for atomic
437
+ * lazy resumptions; use {@link HookResumeSetupSource} to observe that path.
438
+ */
439
+ export declare const HookResilientResumeMaterialized: (value: boolean) => {
440
+ [k: string]: boolean;
441
+ };
442
+ /**
443
+ * Consumer-side signal (on the workflow execution span) of how a lazy hook
444
+ * resume initialized its replay state:
445
+ *
446
+ * - `hook_received_stream`: the hoisted `hook_received` write returned a
447
+ * usable replay preload (run + complete event log), so the invocation
448
+ * skipped both the `run_started` write and the initial `events.list`.
449
+ * - `hook_received_fallback`: the hoisted write succeeded but returned no
450
+ * usable preload (a CBOR response from an older server, a World that
451
+ * ignored the opt-in, a bounded `hasMore` page, or a preload that failed
452
+ * validation); the invocation fell back to the `run_started` setup without
453
+ * re-posting the hook.
454
+ *
455
+ * Absent on legacy hook deliveries (no resumeId/digest) and on every other
456
+ * delivery kind, which take the `run_started` setup unconditionally.
457
+ *
458
+ * This is a latency/setup-path signal: it says which requests initialized
459
+ * the invocation, NOT that this consumer created the `hook_received` event
460
+ * (the hoisted write may equally have converged on the producer's, since
461
+ * claim ownership is not observable client-side; cf.
462
+ * {@link HookResilientResumeMaterialized}).
463
+ */
464
+ export declare const HookResumeSetupSource: (value: string) => {
465
+ [k: string]: string;
466
+ };
467
+ /**
468
+ * Producer-side signal (on the suspension span) counting steps whose direct
469
+ * `step_created` write failed transiently while their `stepInput`-carrying
470
+ * queue publish succeeded, so step creation is recovered via the consumer's
471
+ * re-ensure. Mirrors {@link HookResilientResume}.
472
+ */
473
+ export declare const StepResilientDispatchRecovered: (value: number) => {
474
+ [k: string]: number;
475
+ };
476
+ /**
477
+ * Consumer-side signal (on the workflow execution span) that this delivery
478
+ * materialized the `step_created` event from the queue message's `stepInput`
479
+ * because the producer's direct write had not landed, which completes the
480
+ * recovery path {@link StepResilientDispatchRecovered} began.
481
+ */
482
+ export declare const StepResilientDispatchMaterialized: (value: boolean) => {
483
+ [k: string]: boolean;
484
+ };
485
+ /** Total TTR: entry into `resumeHook()` → immediately before `stepFn.apply()`. */
486
+ export declare const ResumeTotalMs: (value: number) => {
487
+ [k: string]: number;
488
+ };
489
+ /** Phase: `resumeHook()` entry → the queue publish being requested. */
490
+ export declare const ResumeProducerPrepMs: (value: number) => {
491
+ [k: string]: number;
492
+ };
493
+ /** Phase: queue publish requested → the final consumer's handler being entered. */
494
+ export declare const ResumeQueueDeliveryMs: (value: number) => {
495
+ [k: string]: number;
496
+ };
497
+ /** Phase: consumer entry → replay beginning. */
498
+ export declare const ResumeSetupMs: (value: number) => {
499
+ [k: string]: number;
500
+ };
501
+ /** Phase: replay beginning → the next durable step being encountered. */
502
+ export declare const ResumeReplayMs: (value: number) => {
503
+ [k: string]: number;
504
+ };
505
+ /** Phase: step encountered → the `step_started` request beginning. */
506
+ export declare const ResumeStepDispatchMs: (value: number) => {
507
+ [k: string]: number;
508
+ };
509
+ /**
510
+ * Phase: `step_started` request beginning → its response returning. Omitted
511
+ * under optimistic inline start, where the claim is not awaited before the
512
+ * body runs and therefore has no completion instant at that point; the time
513
+ * is then reported entirely as {@link ResumeStepPrepareMs}.
514
+ */
515
+ export declare const ResumeStepClaimMs: (value: number) => {
516
+ [k: string]: number;
517
+ };
518
+ /**
519
+ * Phase: claim returning → immediately before `stepFn.apply()`. Deliberately
520
+ * includes encryption-key resolution, argument hydration, and step-context
521
+ * setup; `workflow.queue.deserialize_time_ms` still isolates hydration.
522
+ */
523
+ export declare const ResumeStepPrepareMs: (value: number) => {
524
+ [k: string]: number;
525
+ };
526
+ /** What triggered the measured resumption. */
527
+ export declare const ResumeTrigger: (value: "hook") => {
528
+ [k: string]: "hook";
529
+ };
530
+ /**
531
+ * Which `resumeHook()` dispatch path produced this resume. `parallel` only
532
+ * appears for messages published by an older producer, which wrote
533
+ * `hook_received` itself in parallel with the publish.
534
+ */
535
+ export declare const ResumeStrategy: (value: "lazy" | "parallel" | "sequential") => {
536
+ [k: string]: "lazy" | "parallel" | "sequential";
537
+ };
538
+ /**
539
+ * How the consuming invocation initialized replay state. Distinct from the
540
+ * pre-existing {@link HookResumeSetupSource} (`workflow.resume_setup_source`,
541
+ * on the workflow execution span), which reports the finer-grained
542
+ * hoisted-write outcome; this one is the TTR dimension and shares the metric's
543
+ * three-value vocabulary.
544
+ */
545
+ export declare const ResumeSetupSource: (value: "run_started" | "hook_preload" | "event_load") => {
546
+ [k: string]: "run_started" | "hook_preload" | "event_load";
547
+ };
548
+ /** Whether the measured step ran in the resuming invocation or a queued one. */
549
+ export declare const ResumeStepExecution: (value: "inline" | "dispatched") => {
550
+ [k: string]: "inline" | "dispatched";
551
+ };
199
552
  /** Number of webhook handlers triggered */
200
553
  export declare const WebhookHandlersTriggered: (value: number) => {
201
554
  [k: string]: number;
@@ -216,6 +569,10 @@ export declare const WorkflowSuspensionWaitCount: (value: number) => {
216
569
  export declare const HttpRequestMethod: (value: string) => {
217
570
  [k: string]: string;
218
571
  };
572
+ /** Route pattern for the request (standard OTEL: http.route) */
573
+ export declare const HttpRoute: (value: string) => {
574
+ [k: string]: string;
575
+ };
219
576
  /** Full URL of the request (standard OTEL: url.full) */
220
577
  export declare const UrlFull: (value: string) => {
221
578
  [k: string]: string;
@@ -256,6 +613,44 @@ export declare const QueueExecutionTimeMs: (value: number) => {
256
613
  export declare const QueueSerializeTimeMs: (value: number) => {
257
614
  [k: string]: number;
258
615
  };
616
+ /** Whether this serialize/deserialize was a write or read. */
617
+ export declare const SerializationOperation: (value: "serialize" | "deserialize") => {
618
+ [k: string]: "serialize" | "deserialize";
619
+ };
620
+ /** Whether a compression codec was applied (write) / present (read). */
621
+ export declare const SerializationCompressed: (value: boolean) => {
622
+ [k: string]: boolean;
623
+ };
624
+ /** Which compression codec applied / was present (`zstd`, `gzip`, or `none`). */
625
+ export declare const SerializationCodec: (value: "zstd" | "gzip" | "none") => {
626
+ [k: string]: "zstd" | "gzip" | "none";
627
+ };
628
+ /** Logical (uncompressed, devalue-prefixed) payload size in bytes. */
629
+ export declare const SerializationUncompressedBytes: (value: number) => {
630
+ [k: string]: number;
631
+ };
632
+ /** Stored (post-compression, pre-encryption) payload size in bytes. */
633
+ export declare const SerializationStoredBytes: (value: number) => {
634
+ [k: string]: number;
635
+ };
636
+ /** Fraction of bytes saved by compression (0..1); set only when compressed. */
637
+ export declare const SerializationCompressionRatio: (value: number) => {
638
+ [k: string]: number;
639
+ };
640
+ /**
641
+ * Number of workflow (guest) code executions serialization could not avoid
642
+ * (getters, proxies, custom serializers); set only when non-zero.
643
+ */
644
+ export declare const SerializationGuestCodeExecutions: (value: number) => {
645
+ [k: string]: number;
646
+ };
647
+ /**
648
+ * Deduplicated `kind (detail)` descriptions of the guest-code executions;
649
+ * set only when non-zero.
650
+ */
651
+ export declare const SerializationGuestCodeDetails: (value: string[]) => {
652
+ [k: string]: string[];
653
+ };
259
654
  /** The remote service name for Datadog service maps (Datadog-specific: peer.service) */
260
655
  export declare const PeerService: (value: string) => {
261
656
  [k: string]: string;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-conventions.d.ts","sourceRoot":"","sources":["../../src/telemetry/semantic-conventions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-conventions.d.ts","sourceRoot":"","sources":["../../src/telemetry/semantic-conventions.ts"],"names":[],"mappings":"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"}