workflow 4.3.1 → 4.5.0

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 (114) hide show
  1. package/docs/api-reference/index.mdx +24 -0
  2. package/docs/api-reference/meta.json +8 -0
  3. package/docs/api-reference/vitest/index.mdx +0 -6
  4. package/docs/api-reference/workflow/create-hook.mdx +32 -0
  5. package/docs/api-reference/workflow/create-webhook.mdx +1 -0
  6. package/docs/api-reference/workflow-api/index.mdx +6 -8
  7. package/docs/api-reference/workflow-errors/meta.json +5 -0
  8. package/docs/api-reference/workflow-serde/index.mdx +0 -1
  9. package/docs/api-reference/workflow-serde/workflow-deserialize.mdx +1 -2
  10. package/docs/api-reference/workflow-serde/workflow-serialize.mdx +1 -2
  11. package/docs/deploying/building-a-world.mdx +1 -1
  12. package/docs/deploying/world/vercel-world.mdx +2 -0
  13. package/docs/errors/hook-conflict.mdx +56 -4
  14. package/docs/errors/index.mdx +6 -0
  15. package/docs/foundations/hooks.mdx +29 -0
  16. package/docs/foundations/streaming.mdx +7 -1
  17. package/docs/foundations/versioning.mdx +1 -1
  18. package/docs/how-it-works/encryption.mdx +2 -2
  19. package/docs/how-it-works/event-sourcing.mdx +2 -2
  20. package/docs/v4/api-reference/workflow-astro/index.mdx +18 -0
  21. package/docs/v4/api-reference/workflow-astro/meta.json +4 -0
  22. package/docs/v4/api-reference/workflow-astro/workflow.mdx +37 -0
  23. package/docs/v4/api-reference/workflow-errors/hook-conflict-error.mdx +60 -0
  24. package/docs/v4/api-reference/workflow-errors/run-not-supported-error.mdx +58 -0
  25. package/docs/v4/api-reference/workflow-errors/workflow-error.mdx +52 -0
  26. package/docs/v4/api-reference/workflow-errors/workflow-run-not-completed-error.mdx +58 -0
  27. package/docs/v4/api-reference/workflow-errors/workflow-runtime-error.mdx +58 -0
  28. package/docs/v4/api-reference/workflow-nest/configure-workflow-controller.mdx +33 -0
  29. package/docs/v4/api-reference/workflow-nest/index.mdx +31 -0
  30. package/docs/v4/api-reference/workflow-nest/meta.json +9 -0
  31. package/docs/v4/api-reference/workflow-nest/nest-local-builder.mdx +63 -0
  32. package/docs/v4/api-reference/workflow-nest/workflow-controller.mdx +40 -0
  33. package/docs/v4/api-reference/workflow-nest/workflow-module.mdx +73 -0
  34. package/docs/v4/api-reference/workflow-nitro/index.mdx +57 -0
  35. package/docs/v4/api-reference/workflow-nuxt/index.mdx +47 -0
  36. package/docs/v4/api-reference/workflow-observability/hydrate-data.mdx +35 -0
  37. package/docs/v4/api-reference/workflow-observability/hydrate-resource-io.mdx +62 -0
  38. package/docs/v4/api-reference/workflow-observability/index.mdx +64 -0
  39. package/docs/v4/api-reference/workflow-observability/meta.json +11 -0
  40. package/docs/v4/api-reference/workflow-observability/observability-revivers.mdx +50 -0
  41. package/docs/v4/api-reference/workflow-observability/parse-class-name.mdx +41 -0
  42. package/docs/v4/api-reference/workflow-observability/parse-step-name.mdx +40 -0
  43. package/docs/v4/api-reference/workflow-observability/parse-workflow-name.mdx +55 -0
  44. package/docs/v4/api-reference/workflow-runtime/create-world.mdx +43 -0
  45. package/docs/v4/api-reference/workflow-runtime/get-world-handlers.mdx +44 -0
  46. package/docs/v4/api-reference/workflow-runtime/get-world.mdx +124 -0
  47. package/docs/v4/api-reference/workflow-runtime/health-check.mdx +50 -0
  48. package/docs/v4/api-reference/workflow-runtime/index.mdx +46 -0
  49. package/docs/v4/api-reference/workflow-runtime/meta.json +13 -0
  50. package/docs/v4/api-reference/workflow-runtime/set-world.mdx +49 -0
  51. package/docs/v4/api-reference/workflow-runtime/step-entrypoint.mdx +39 -0
  52. package/docs/v4/api-reference/workflow-runtime/workflow-entrypoint.mdx +42 -0
  53. package/docs/{api-reference/workflow-api → v4/api-reference/workflow-runtime}/world/index.mdx +5 -8
  54. package/docs/v4/api-reference/workflow-runtime/world/meta.json +4 -0
  55. package/docs/v4/api-reference/workflow-runtime/world/queue.mdx +86 -0
  56. package/docs/{api-reference/workflow-api → v4/api-reference/workflow-runtime}/world/storage.mdx +4 -4
  57. package/docs/v4/api-reference/workflow-runtime/world/streams.mdx +216 -0
  58. package/docs/v4/api-reference/workflow-sveltekit/index.mdx +18 -0
  59. package/docs/v4/api-reference/workflow-sveltekit/meta.json +4 -0
  60. package/docs/v4/api-reference/workflow-sveltekit/workflow-plugin.mdx +34 -0
  61. package/docs/v4/api-reference/workflow-vite/index.mdx +18 -0
  62. package/docs/v4/api-reference/workflow-vite/meta.json +4 -0
  63. package/docs/v4/api-reference/workflow-vite/workflow.mdx +47 -0
  64. package/docs/v4/errors/runtime-decryption-failed.mdx +77 -0
  65. package/docs/v4/errors/step-executed-multiple-times.mdx +23 -0
  66. package/docs/v5/api-reference/workflow-astro/index.mdx +18 -0
  67. package/docs/v5/api-reference/workflow-astro/meta.json +4 -0
  68. package/docs/v5/api-reference/workflow-astro/workflow.mdx +45 -0
  69. package/docs/v5/api-reference/workflow-errors/hook-conflict-error.mdx +60 -0
  70. package/docs/v5/api-reference/workflow-errors/run-not-supported-error.mdx +58 -0
  71. package/docs/v5/api-reference/workflow-errors/workflow-error.mdx +52 -0
  72. package/docs/v5/api-reference/workflow-errors/workflow-run-not-completed-error.mdx +58 -0
  73. package/docs/v5/api-reference/workflow-errors/workflow-runtime-error.mdx +58 -0
  74. package/docs/v5/api-reference/workflow-nest/configure-workflow-controller.mdx +33 -0
  75. package/docs/v5/api-reference/workflow-nest/index.mdx +31 -0
  76. package/docs/v5/api-reference/workflow-nest/meta.json +9 -0
  77. package/docs/v5/api-reference/workflow-nest/nest-local-builder.mdx +64 -0
  78. package/docs/v5/api-reference/workflow-nest/workflow-controller.mdx +40 -0
  79. package/docs/v5/api-reference/workflow-nest/workflow-module.mdx +74 -0
  80. package/docs/v5/api-reference/workflow-nitro/index.mdx +59 -0
  81. package/docs/v5/api-reference/workflow-nuxt/index.mdx +47 -0
  82. package/docs/v5/api-reference/workflow-observability/hydrate-data.mdx +35 -0
  83. package/docs/v5/api-reference/workflow-observability/hydrate-resource-io.mdx +62 -0
  84. package/docs/v5/api-reference/workflow-observability/index.mdx +64 -0
  85. package/docs/v5/api-reference/workflow-observability/meta.json +11 -0
  86. package/docs/v5/api-reference/workflow-observability/observability-revivers.mdx +50 -0
  87. package/docs/v5/api-reference/workflow-observability/parse-class-name.mdx +41 -0
  88. package/docs/v5/api-reference/workflow-observability/parse-step-name.mdx +40 -0
  89. package/docs/v5/api-reference/workflow-observability/parse-workflow-name.mdx +55 -0
  90. package/docs/v5/api-reference/workflow-runtime/create-world.mdx +39 -0
  91. package/docs/v5/api-reference/workflow-runtime/get-world-handlers.mdx +44 -0
  92. package/docs/{api-reference/workflow-api → v5/api-reference/workflow-runtime}/get-world.mdx +7 -10
  93. package/docs/v5/api-reference/workflow-runtime/health-check.mdx +50 -0
  94. package/docs/v5/api-reference/workflow-runtime/index.mdx +43 -0
  95. package/docs/v5/api-reference/workflow-runtime/meta.json +12 -0
  96. package/docs/v5/api-reference/workflow-runtime/set-world.mdx +49 -0
  97. package/docs/v5/api-reference/workflow-runtime/workflow-entrypoint.mdx +42 -0
  98. package/docs/v5/api-reference/workflow-runtime/world/index.mdx +55 -0
  99. package/docs/v5/api-reference/workflow-runtime/world/meta.json +4 -0
  100. package/docs/{api-reference/workflow-api → v5/api-reference/workflow-runtime}/world/queue.mdx +2 -2
  101. package/docs/v5/api-reference/workflow-runtime/world/storage.mdx +409 -0
  102. package/docs/{api-reference/workflow-api → v5/api-reference/workflow-runtime}/world/streams.mdx +2 -2
  103. package/docs/v5/api-reference/workflow-sveltekit/index.mdx +18 -0
  104. package/docs/v5/api-reference/workflow-sveltekit/meta.json +4 -0
  105. package/docs/v5/api-reference/workflow-sveltekit/workflow-plugin.mdx +42 -0
  106. package/docs/v5/api-reference/workflow-vite/index.mdx +18 -0
  107. package/docs/v5/api-reference/workflow-vite/meta.json +4 -0
  108. package/docs/v5/api-reference/workflow-vite/workflow.mdx +48 -0
  109. package/docs/v5/errors/index.mdx +59 -0
  110. package/docs/v5/errors/runtime-decryption-failed.mdx +77 -0
  111. package/docs/v5/errors/step-executed-multiple-times.mdx +23 -0
  112. package/package.json +13 -13
  113. package/docs/api-reference/workflow-api/world/meta.json +0 -4
  114. package/docs/api-reference/workflow-api/world/observability.mdx +0 -164
@@ -36,21 +36,18 @@ showSections={["returns"]}
36
36
 
37
37
  ## World SDK
38
38
 
39
- The World object provides access to several entity interfaces. See the [World SDK](/docs/api-reference/workflow-api/world) reference for complete documentation:
39
+ The World object provides access to several entity interfaces. See the [World SDK](/docs/api-reference/workflow-runtime/world) reference for complete documentation:
40
40
 
41
41
  <Cards>
42
- <Card href="/docs/api-reference/workflow-api/world/storage" title="Storage">
42
+ <Card href="/docs/api-reference/workflow-runtime/world/storage" title="Storage">
43
43
  Query runs, steps, hooks, and the underlying event log.
44
44
  </Card>
45
- <Card href="/docs/api-reference/workflow-api/world/streams" title="Streams">
45
+ <Card href="/docs/api-reference/workflow-runtime/world/streams" title="Streams">
46
46
  Read, write, and manage data streams.
47
47
  </Card>
48
- <Card href="/docs/api-reference/workflow-api/world/queue" title="Queue">
48
+ <Card href="/docs/api-reference/workflow-runtime/world/queue" title="Queue">
49
49
  Low-level queue dispatch (internal SDK infrastructure).
50
50
  </Card>
51
- <Card href="/docs/api-reference/workflow-api/world/observability" title="Observability">
52
- Hydrate step I/O, parse display names, decrypt data.
53
- </Card>
54
51
  </Cards>
55
52
 
56
53
  ## Data Hydration
@@ -64,7 +61,7 @@ const step = await world.steps.get(runId, stepId);
64
61
  const hydrated = hydrateResourceIO(step, observabilityRevivers); // [!code highlight]
65
62
  ```
66
63
 
67
- See [Observability Utilities](/docs/api-reference/workflow-api/world/observability) for the full hydration, parsing, and encryption API.
64
+ See [`workflow/observability`](/docs/api-reference/workflow-observability) for the full hydration and parsing API.
68
65
 
69
66
  ### List Workflow Runs (Display Names)
70
67
 
@@ -72,7 +69,7 @@ List workflow runs and derive human-readable names from the `workflowName` field
72
69
 
73
70
  ```typescript lineNumbers
74
71
  import { getWorld } from "workflow/runtime";
75
- import { parseWorkflowName } from "@workflow/utils/parse-name"; // [!code highlight]
72
+ import { parseWorkflowName } from "workflow/observability"; // [!code highlight]
76
73
 
77
74
  export async function GET(req: Request) {
78
75
  const url = new URL(req.url);
@@ -113,7 +110,7 @@ export async function GET(req: Request) {
113
110
 
114
111
  <Callout type="info">
115
112
  The `workflowName` field contains a machine-readable identifier like `workflow//./src/workflows/order//processOrder`.
116
- Use `parseWorkflowName()` from `@workflow/utils/parse-name` to extract the `shortName` (e.g., `"processOrder"`)
113
+ Use [`parseWorkflowName()`](/docs/api-reference/workflow-observability/parse-workflow-name) to extract the `shortName` (e.g., `"processOrder"`)
117
114
  and `moduleSpecifier` for display in your UI.
118
115
  </Callout>
119
116
 
@@ -0,0 +1,50 @@
1
+ ---
2
+ title: healthCheck
3
+ description: Verify a deployment's workflow infrastructure by sending a message through the queue pipeline.
4
+ type: reference
5
+ summary: Use healthCheck to verify the workflow endpoint of a deployment processes queue messages end-to-end.
6
+ prerequisites:
7
+ - /docs/api-reference/workflow-runtime/get-world
8
+ ---
9
+
10
+ Performs an end-to-end health check of a deployment's workflow infrastructure by sending a message through the queue pipeline and verifying it is processed by the workflow endpoint. Because it goes through the queue rather than direct HTTP, it works even when the deployment is behind Deployment Protection on Vercel.
11
+
12
+ ```typescript lineNumbers
13
+ import { getWorld, healthCheck } from "workflow/runtime";
14
+
15
+ const world = await getWorld();
16
+ const result = await healthCheck(world, "workflow"); // [!code highlight]
17
+
18
+ if (!result.healthy) {
19
+ console.error("Workflow infrastructure unhealthy:", result.error);
20
+ }
21
+ ```
22
+
23
+ ## API Signature
24
+
25
+ ### Parameters
26
+
27
+ | Parameter | Type | Description |
28
+ |-----------|------|-------------|
29
+ | `world` | `World` | The World instance to send the health check through |
30
+ | `endpoint` | `"workflow" \| "step"` | Which endpoint to check |
31
+ | `options` | `HealthCheckOptions & { namespace?: string }` | Optional configuration |
32
+
33
+ Where `HealthCheckOptions` is:
34
+
35
+ | Option | Type | Description |
36
+ |--------|------|-------------|
37
+ | `timeout` | `number` | Milliseconds to wait for the health check response. Default: `30000`. |
38
+ | `deploymentId` | `string` | Deployment to target. Falls back to `process.env.VERCEL_DEPLOYMENT_ID`. |
39
+
40
+ ### Returns
41
+
42
+ Returns a `Promise<HealthCheckResult>`:
43
+
44
+ | Property | Type | Description |
45
+ |----------|------|-------------|
46
+ | `healthy` | `boolean` | Whether the endpoint processed the health check message |
47
+ | `error` | `string \| undefined` | Error message when the check failed |
48
+ | `latencyMs` | `number \| undefined` | Round-trip latency when the check succeeded |
49
+ | `specVersion` | `number \| undefined` | Workflow spec version of the responding deployment |
50
+ | `workflowCoreVersion` | `string \| undefined` | `@workflow/core` version of the responding deployment |
@@ -0,0 +1,43 @@
1
+ ---
2
+ title: "workflow/runtime"
3
+ description: Runtime functions for accessing the World instance and wiring up workflow infrastructure.
4
+ type: overview
5
+ summary: Explore runtime functions for resolving the World instance and configuring workflow infrastructure.
6
+ ---
7
+
8
+ API reference for runtime functions from the `workflow/runtime` package.
9
+
10
+ The runtime package provides low-level access to the workflow runtime — resolving the [World](/docs/api-reference/workflow-runtime/world) instance that backs storage, queuing, and streaming, and wiring up workflow infrastructure in custom server environments.
11
+
12
+ ## Functions
13
+
14
+ <Cards>
15
+ <Card href="/docs/api-reference/workflow-runtime/get-world" title="getWorld()">
16
+ Async: resolve the World instance for storage, queuing, and streaming backends.
17
+ </Card>
18
+ <Card href="/docs/api-reference/workflow-runtime/world" title="World SDK">
19
+ Low-level API for inspecting runs, steps, events, hooks, streams, and queues.
20
+ </Card>
21
+ </Cards>
22
+
23
+ ## Infrastructure Functions
24
+
25
+ These functions are primarily used by framework adapters and custom world setups, and are rarely needed in application code:
26
+
27
+ <Cards>
28
+ <Card href="/docs/api-reference/workflow-runtime/create-world" title="createWorld()">
29
+ Create a World instance from environment configuration.
30
+ </Card>
31
+ <Card href="/docs/api-reference/workflow-runtime/set-world" title="setWorld()">
32
+ Override the cached World instance with a custom World.
33
+ </Card>
34
+ <Card href="/docs/api-reference/workflow-runtime/get-world-handlers" title="getWorldHandlers()">
35
+ Build-time-safe access to the World's queue handlers.
36
+ </Card>
37
+ <Card href="/docs/api-reference/workflow-runtime/workflow-entrypoint" title="workflowEntrypoint()">
38
+ Create the HTTP route handler that executes workflow runs.
39
+ </Card>
40
+ <Card href="/docs/api-reference/workflow-runtime/health-check" title="healthCheck()">
41
+ Check the health of a deployment's workflow infrastructure.
42
+ </Card>
43
+ </Cards>
@@ -0,0 +1,12 @@
1
+ {
2
+ "title": "workflow/runtime",
3
+ "pages": [
4
+ "get-world",
5
+ "world",
6
+ "create-world",
7
+ "set-world",
8
+ "get-world-handlers",
9
+ "workflow-entrypoint",
10
+ "health-check"
11
+ ]
12
+ }
@@ -0,0 +1,49 @@
1
+ ---
2
+ title: setWorld
3
+ description: Override or reset the cached World instance used by the workflow runtime.
4
+ type: reference
5
+ summary: Use setWorld to inject a custom World instance or reset the cache after environment configuration changes.
6
+ prerequisites:
7
+ - /docs/api-reference/workflow-runtime/get-world
8
+ related:
9
+ - /docs/api-reference/workflow-runtime/create-world
10
+ ---
11
+
12
+ Overrides the cached [World](/docs/api-reference/workflow-runtime/world) instance that [`getWorld()`](/docs/api-reference/workflow-runtime/get-world) returns. Use it to inject a World constructed with explicit configuration (rather than environment variables), or pass `undefined` to clear the cache so the next `getWorld()` call reinitializes from the current environment.
13
+
14
+ ```typescript lineNumbers
15
+ import { setWorld, getWorld } from "workflow/runtime";
16
+ import type { World } from "@workflow/world";
17
+ declare const customWorld: World; // @setup
18
+
19
+ setWorld(customWorld); // [!code highlight]
20
+ const world = await getWorld(); // resolves customWorld
21
+ ```
22
+
23
+ ## API Signature
24
+
25
+ ### Parameters
26
+
27
+ | Parameter | Type | Description |
28
+ |-----------|------|-------------|
29
+ | `world` | `World \| undefined` | The World instance to use, or `undefined` to reset the cache and reinitialize from environment variables on next access |
30
+
31
+ ### Returns
32
+
33
+ This function does not return a value.
34
+
35
+ ## Example: Reset After Environment Changes
36
+
37
+ ```typescript lineNumbers
38
+ import { setWorld, getWorld } from "workflow/runtime";
39
+
40
+ process.env.WORKFLOW_TARGET_WORLD = "@workflow/world-local";
41
+ setWorld(undefined); // clear the cached instance // [!code highlight]
42
+
43
+ const world = await getWorld(); // reinitialized with new configuration
44
+ ```
45
+
46
+ ## Related Functions
47
+
48
+ - [`getWorld()`](/docs/api-reference/workflow-runtime/get-world) - Resolve the cached World instance.
49
+ - [`createWorld()`](/docs/api-reference/workflow-runtime/create-world) - Construct a fresh World from environment configuration.
@@ -0,0 +1,42 @@
1
+ ---
2
+ title: workflowEntrypoint
3
+ description: Create the HTTP route handler that executes workflow runs from a workflow bundle.
4
+ type: reference
5
+ summary: Use workflowEntrypoint to wire a compiled workflow bundle into an HTTP route in custom server environments.
6
+ prerequisites:
7
+ - /docs/how-it-works/code-transform
8
+ related:
9
+ - /docs/api-reference/workflow-runtime/health-check
10
+ ---
11
+
12
+ Creates the HTTP route handler that executes workflow runs. The handler receives queue messages, replays the workflow from its event log, executes steps inline where possible, and suspends when the workflow waits on sleeps or hooks.
13
+
14
+ Framework adapters (Next.js, Nitro, SvelteKit, etc.) call this for you and mount the result at `/.well-known/workflow/v1/flow` — you only need it when wiring workflow support into a custom server environment.
15
+
16
+ ```typescript lineNumbers
17
+ import { workflowEntrypoint } from "workflow/runtime";
18
+ declare const workflowBundleCode: string; // @setup
19
+
20
+ const handler = workflowEntrypoint(workflowBundleCode); // [!code highlight]
21
+
22
+ // Mount on your server, e.g. a fetch-style route:
23
+ export const POST = (req: Request) => handler(req);
24
+ ```
25
+
26
+ ## API Signature
27
+
28
+ ### Parameters
29
+
30
+ | Parameter | Type | Description |
31
+ |-----------|------|-------------|
32
+ | `workflowCode` | `string` | The compiled workflow bundle code containing all workflow functions |
33
+ | `options` | `{ namespace?: string }` | Optional. `namespace` scopes the queue topics this handler consumes. |
34
+
35
+ ### Returns
36
+
37
+ Returns a fetch-style request handler: `(req: Request) => Promise<Response>`.
38
+
39
+ ## Related Functions
40
+
41
+ - [`getWorldHandlers()`](/docs/api-reference/workflow-runtime/get-world-handlers) - The build-time World access this handler is built on.
42
+ - [`healthCheck()`](/docs/api-reference/workflow-runtime/health-check) - Verify the entrypoint processes queue messages end-to-end.
@@ -0,0 +1,55 @@
1
+ ---
2
+ title: World SDK
3
+ description: Low-level API for inspecting and managing workflow runs, steps, events, hooks, streams, and queues.
4
+ type: overview
5
+ summary: Access workflow infrastructure via await getWorld() for building observability dashboards, admin tools, and custom integrations.
6
+ prerequisites:
7
+ - /docs/api-reference/workflow-runtime/get-world
8
+ keywords:
9
+ - getWorld
10
+ - World SDK
11
+ - workflow runtime
12
+ - observability dashboard
13
+ - admin panel
14
+ - workflow management
15
+ ---
16
+
17
+ The World SDK provides direct access to workflow infrastructure — runs, steps, events, hooks, streams, and queues. Use it to build observability dashboards, admin panels, debugging tools, and custom workflow management logic.
18
+
19
+ ```typescript lineNumbers
20
+ import { getWorld } from "workflow/runtime";
21
+
22
+ const world = await getWorld(); // [!code highlight]
23
+ ```
24
+
25
+ ## Interfaces
26
+
27
+ <Cards>
28
+ <Card href="/docs/api-reference/workflow-runtime/world/storage" title="Storage">
29
+ Query runs, steps, hooks, and the underlying event log.
30
+ </Card>
31
+ <Card href="/docs/api-reference/workflow-runtime/world/streams" title="Streams">
32
+ Read, write, and manage real-time data streams for workflow runs.
33
+ </Card>
34
+ <Card href="/docs/api-reference/workflow-runtime/world/queue" title="Queue">
35
+ Low-level queue dispatch (internal SDK infrastructure).
36
+ </Card>
37
+ </Cards>
38
+
39
+ <Callout type="info">
40
+ The World SDK is the low-level foundation that higher-level functions like [`getRun()`](/docs/api-reference/workflow-api/get-run) and [`start()`](/docs/api-reference/workflow-api/start) are built on. Use it when you need capabilities beyond what those functions provide.
41
+ </Callout>
42
+
43
+ ## Data Hydration
44
+
45
+ Step input/output data is serialized using the [devalue](https://github.com/Rich-Harris/devalue) format. To display this data in your UI, use the hydration utilities from `workflow/observability`:
46
+
47
+ ```typescript lineNumbers
48
+ import { hydrateResourceIO, observabilityRevivers } from "workflow/observability"; // [!code highlight]
49
+
50
+ const step = await world.steps.get(runId, stepId);
51
+ const hydrated = hydrateResourceIO(step, observabilityRevivers); // [!code highlight]
52
+ console.log(hydrated.input, hydrated.output);
53
+ ```
54
+
55
+ See [`workflow/observability`](/docs/api-reference/workflow-observability) for the full API.
@@ -0,0 +1,4 @@
1
+ {
2
+ "title": "World SDK",
3
+ "pages": ["storage", "streams", "queue"]
4
+ }
@@ -4,7 +4,7 @@ description: Low-level queue interface for dispatching workflow and step invocat
4
4
  type: reference
5
5
  summary: "Methods: getDeploymentId(), queue(), createQueueHandler(). Internal queue dispatch — normally handled by the SDK."
6
6
  prerequisites:
7
- - /docs/api-reference/workflow-api/get-world
7
+ - /docs/api-reference/workflow-runtime/get-world
8
8
  related:
9
9
  - /docs/api-reference/workflow-api/start
10
10
  - /docs/foundations/starting-workflows
@@ -83,4 +83,4 @@ const handler = world.createQueueHandler(prefix, callback); // [!code highlight]
83
83
 
84
84
  - [start()](/docs/api-reference/workflow-api/start) — The standard way to start workflow runs
85
85
  - [Starting Workflows](/docs/foundations/starting-workflows) — Core concepts for workflow invocation
86
- - [Storage](/docs/api-reference/workflow-api/world/storage) — Create events that trigger queue dispatch
86
+ - [Storage](/docs/api-reference/workflow-runtime/world/storage) — Create events that trigger queue dispatch