workflow 5.0.0-beta.51 → 5.0.0-beta.53

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.
@@ -164,6 +164,16 @@ export async function myWorkflow(input: unknown) {
164
164
 
165
165
  Uncaught, the run fails immediately with the `USER_ERROR` code, without retrying. See [serialization-failed](/docs/errors/serialization-failed) for common causes and fixes.
166
166
 
167
+ ## Backend connection failures
168
+
169
+ On Vercel, backend connection failures and interrupted event streams use the existing retry policies, even when their error codes are unrecognized. This lets workflows recover from network failures instead of immediately failing with `USER_ERROR`. Persistent failures can still exhaust the retry budget.
170
+
171
+ The SDK also replaces its shared events connection pool after repeated HTTP/2 session failures. Invalid backend URLs, including unsupported protocols and embedded credentials, fail immediately. Fetch requests to blocked ports or with unsupported headers (such as `Expect`) also fail without retrying. Interrupted event writes retain their existing retries; caller cancellations do not trigger another write.
172
+
173
+ A connection failure does not prove that the backend rejected a write: it may have accepted it before the response was lost. Continue to make step side effects [idempotent](/docs/foundations/idempotency).
174
+
175
+ Failed-run logs include the underlying error causes and their codes, exposing socket, DNS, or TLS errors behind messages such as `TypeError: fetch failed`. If a cause cannot be read, the log includes `[unavailable cause]` and the run can still be recorded as failed.
176
+
167
177
  ## Error codes
168
178
 
169
179
  When a workflow run fails, the error includes an `errorCode` that classifies the failure, alongside the original thrown value (preserved as `cause`):
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "workflow",
3
- "version": "5.0.0-beta.51",
3
+ "version": "5.0.0-beta.53",
4
4
  "description": "Workflow SDK - Build durable, resilient, and observable workflows",
5
5
  "main": "dist/typescript-plugin.cjs",
6
6
  "type": "module",
@@ -58,19 +58,19 @@
58
58
  }
59
59
  },
60
60
  "dependencies": {
61
- "@workflow/astro": "5.0.0-beta.51",
62
- "@workflow/cli": "5.0.0-beta.51",
63
- "@workflow/core": "5.0.0-beta.51",
61
+ "@workflow/astro": "5.0.0-beta.53",
62
+ "@workflow/cli": "5.0.0-beta.53",
63
+ "@workflow/core": "5.0.0-beta.53",
64
64
  "@workflow/errors": "5.0.0-beta.21",
65
65
  "@workflow/typescript-plugin": "5.0.0-beta.5",
66
66
  "@workflow/utils": "5.0.0-beta.10",
67
67
  "ms": "2.1.3",
68
- "@workflow/next": "5.0.0-beta.51",
69
- "@workflow/nest": "5.0.0-beta.51",
70
- "@workflow/nitro": "5.0.0-beta.51",
71
- "@workflow/nuxt": "5.0.0-beta.51",
72
- "@workflow/sveltekit": "5.0.0-beta.51",
73
- "@workflow/rollup": "5.0.0-beta.51"
68
+ "@workflow/next": "5.0.0-beta.53",
69
+ "@workflow/nest": "5.0.0-beta.53",
70
+ "@workflow/nitro": "5.0.0-beta.53",
71
+ "@workflow/nuxt": "5.0.0-beta.53",
72
+ "@workflow/sveltekit": "5.0.0-beta.53",
73
+ "@workflow/rollup": "5.0.0-beta.53"
74
74
  },
75
75
  "devDependencies": {
76
76
  "@types/ms": "2.1.0",