@workflow/world-vercel 4.0.1-beta.21 → 4.0.1-beta.23
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.
- package/dist/queue.d.ts.map +1 -1
- package/dist/queue.js +59 -9
- package/dist/queue.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +6 -9
- package/dist/utils.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -3
package/dist/queue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,KAAK,EAGX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,SAAS,EAA0B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,KAAK,EAGX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,SAAS,EAA0B,MAAM,YAAY,CAAC;AAgDpE,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,CAqFrD"}
|
package/dist/queue.js
CHANGED
|
@@ -5,8 +5,45 @@ import { getHeaders, getHttpUrl } from './utils.js';
|
|
|
5
5
|
const MessageWrapper = z.object({
|
|
6
6
|
payload: QueuePayloadSchema,
|
|
7
7
|
queueName: ValidQueueName,
|
|
8
|
+
/**
|
|
9
|
+
* The deployment ID to use when re-enqueueing the message.
|
|
10
|
+
* This ensures the message is processed by the same deployment.
|
|
11
|
+
*/
|
|
12
|
+
deploymentId: z.string().optional(),
|
|
8
13
|
});
|
|
9
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Message Lifetime Management
|
|
16
|
+
*
|
|
17
|
+
* Vercel Queue messages have a maximum lifetime of 24 hours. After this period,
|
|
18
|
+
* messages are automatically deleted regardless of their visibility timeout.
|
|
19
|
+
* This creates a problem for long-running sleep() or retryAfter delays that
|
|
20
|
+
* exceed 24 hours - the message would be deleted before the handler fires.
|
|
21
|
+
*
|
|
22
|
+
* To handle delays longer than the message lifetime, we use a two-part strategy:
|
|
23
|
+
*
|
|
24
|
+
* 1. **Timeout Clamping**: If the requested timeoutSeconds would cause the message
|
|
25
|
+
* to expire before the next processing, we clamp the timeout to fit within
|
|
26
|
+
* the remaining message lifetime. The handler stores the target time in
|
|
27
|
+
* persistent state (step.retryAfter or wait_created event), so when the
|
|
28
|
+
* clamped timeout fires, it recalculates the remaining time and returns
|
|
29
|
+
* another timeout if needed.
|
|
30
|
+
*
|
|
31
|
+
* 2. **Message Re-enqueueing**: If the message is already at or past its safe
|
|
32
|
+
* lifetime limit (lifetime - buffer), we enqueue a fresh message and
|
|
33
|
+
* acknowledge the current one. The new message gets a fresh 24-hour clock.
|
|
34
|
+
* It fires immediately, and the handler short-circuits by checking the
|
|
35
|
+
* persistent state and returning the remaining timeoutSeconds.
|
|
36
|
+
*
|
|
37
|
+
* TODO: Once Vercel Queue supports NBF (not before) functionality, we can use
|
|
38
|
+
* that when re-enqueueing to schedule the new message for the remaining delay
|
|
39
|
+
* instead of having it fire immediately and short-circuit.
|
|
40
|
+
*
|
|
41
|
+
* These constants can be overridden via environment variables for testing.
|
|
42
|
+
*/
|
|
43
|
+
const VERCEL_QUEUE_MESSAGE_LIFETIME = Number(process.env.VERCEL_QUEUE_MESSAGE_LIFETIME || 86400 // 24 hours in seconds
|
|
44
|
+
);
|
|
45
|
+
const MESSAGE_LIFETIME_BUFFER = Number(process.env.VERCEL_QUEUE_MESSAGE_LIFETIME_BUFFER || 3600 // 1 hour buffer before lifetime expires
|
|
46
|
+
);
|
|
10
47
|
export function createQueue(config) {
|
|
11
48
|
const { baseUrl, usingProxy } = getHttpUrl(config);
|
|
12
49
|
const headers = getHeaders(config);
|
|
@@ -16,7 +53,7 @@ export function createQueue(config) {
|
|
|
16
53
|
token: usingProxy ? config?.token : undefined,
|
|
17
54
|
headers: Object.fromEntries(headers.entries()),
|
|
18
55
|
});
|
|
19
|
-
const queue = async (queueName,
|
|
56
|
+
const queue = async (queueName, payload, opts) => {
|
|
20
57
|
// zod v3 doesn't have the `encode` method. We only support zod v4 officially,
|
|
21
58
|
// but codebases that pin zod v3 are still common.
|
|
22
59
|
const hasEncoder = typeof MessageWrapper.encode === 'function';
|
|
@@ -27,8 +64,10 @@ export function createQueue(config) {
|
|
|
27
64
|
? MessageWrapper.encode
|
|
28
65
|
: (data) => data;
|
|
29
66
|
const encoded = encoder({
|
|
30
|
-
payload
|
|
67
|
+
payload,
|
|
31
68
|
queueName,
|
|
69
|
+
// Store deploymentId in the message so it can be preserved when re-enqueueing
|
|
70
|
+
deploymentId: opts?.deploymentId,
|
|
32
71
|
});
|
|
33
72
|
const sanitizedQueueName = queueName.replace(/[^A-Za-z0-9-_]/g, '-');
|
|
34
73
|
const { messageId } = await queueClient.send(sanitizedQueueName, encoded, opts);
|
|
@@ -38,18 +77,29 @@ export function createQueue(config) {
|
|
|
38
77
|
return queueClient.handleCallback({
|
|
39
78
|
[`${prefix}*`]: {
|
|
40
79
|
default: async (body, meta) => {
|
|
41
|
-
const { payload, queueName } = MessageWrapper.parse(body);
|
|
80
|
+
const { payload, queueName, deploymentId } = MessageWrapper.parse(body);
|
|
42
81
|
const result = await handler(payload, {
|
|
43
82
|
queueName,
|
|
44
83
|
messageId: MessageId.parse(meta.messageId),
|
|
45
84
|
attempt: meta.deliveryCount,
|
|
46
85
|
});
|
|
47
86
|
if (typeof result?.timeoutSeconds === 'number') {
|
|
48
|
-
|
|
49
|
-
//
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
87
|
+
const now = Date.now();
|
|
88
|
+
// Calculate how old this message is using the queue's createdAt timestamp
|
|
89
|
+
const messageAge = (now - meta.createdAt.getTime()) / 1000; // Convert to seconds
|
|
90
|
+
// Calculate the maximum timeout this message can handle before expiring
|
|
91
|
+
const maxAllowedTimeout = VERCEL_QUEUE_MESSAGE_LIFETIME -
|
|
92
|
+
MESSAGE_LIFETIME_BUFFER -
|
|
93
|
+
messageAge;
|
|
94
|
+
if (maxAllowedTimeout <= 0) {
|
|
95
|
+
// Message is at its lifetime limit - re-enqueue to get a fresh 24-hour clock
|
|
96
|
+
// Preserve the original deploymentId to ensure routing to the same deployment
|
|
97
|
+
await queue(queueName, payload, { deploymentId });
|
|
98
|
+
return undefined;
|
|
99
|
+
}
|
|
100
|
+
else if (result.timeoutSeconds > maxAllowedTimeout) {
|
|
101
|
+
// Clamp timeout to fit within remaining message lifetime
|
|
102
|
+
result.timeoutSeconds = maxAllowedTimeout;
|
|
53
103
|
}
|
|
54
104
|
}
|
|
55
105
|
return result;
|
package/dist/queue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EACL,SAAS,EAET,kBAAkB,EAClB,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAkB,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEpE,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,kBAAkB;IAC3B,SAAS,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../src/queue.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,iBAAiB,CAAC;AAC9E,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAG7B,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,eAAO,MAAM,2BAA2B,QAAQ,CAAC;AAEjD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAK1E;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,eAAe,CAAA;CAAE,EAClE,IAAI,EAAE,CAAC,GACN,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAgBvC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CA2B3E;AAMD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,GACrB,SAAS,SAAS,KACjB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAgBxC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,SAAS,SAAS,KAAG,OAiB/C,CAAC;AAEF,wBAAsB,aAAa,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAQ3E;AAED,wBAAsB,WAAW,CAAC,CAAC,EAAE,EACnC,QAAQ,EACR,OAAY,EACZ,MAAW,EACX,MAAM,GACP,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACxB,GAAG,OAAO,CAAC,CAAC,CAAC,CAyCb"}
|
package/dist/utils.js
CHANGED
|
@@ -2,7 +2,6 @@ import os from 'node:os';
|
|
|
2
2
|
import { getVercelOidcToken } from '@vercel/oidc';
|
|
3
3
|
import { WorkflowAPIError } from '@workflow/errors';
|
|
4
4
|
import { StructuredErrorSchema } from '@workflow/world';
|
|
5
|
-
import { ZodError } from 'zod';
|
|
6
5
|
import { version } from './version.js';
|
|
7
6
|
export const DEFAULT_RESOLVE_DATA_OPTION = 'all';
|
|
8
7
|
export function dateToStringReplacer(_key, value) {
|
|
@@ -123,30 +122,28 @@ export async function makeRequest({ endpoint, options = {}, config = {}, schema,
|
|
|
123
122
|
// See: https://github.com/vercel/workflow/issues/618
|
|
124
123
|
headers.set('X-Request-Time', Date.now().toString());
|
|
125
124
|
const url = `${baseUrl}${endpoint}`;
|
|
126
|
-
const
|
|
125
|
+
const request = new Request(url, {
|
|
127
126
|
...options,
|
|
128
127
|
headers,
|
|
129
128
|
});
|
|
129
|
+
const response = await fetch(request);
|
|
130
130
|
if (!response.ok) {
|
|
131
131
|
const errorData = (await response.json().catch(() => ({})));
|
|
132
132
|
if (process.env.DEBUG === '1') {
|
|
133
133
|
const stringifiedHeaders = Array.from(headers.entries())
|
|
134
134
|
.map(([key, value]) => `-H "${key}: ${value}"`)
|
|
135
135
|
.join(' ');
|
|
136
|
-
console.error(`Failed to fetch, reproduce with:\ncurl -X ${
|
|
136
|
+
console.error(`Failed to fetch, reproduce with:\ncurl -X ${request.method} ${stringifiedHeaders} "${url}"`);
|
|
137
137
|
}
|
|
138
138
|
throw new WorkflowAPIError(errorData.message ||
|
|
139
|
-
`${
|
|
139
|
+
`${request.method} ${endpoint} -> HTTP ${response.status}: ${response.statusText}`, { url, status: response.status, code: errorData.code });
|
|
140
140
|
}
|
|
141
|
+
const text = await response.text();
|
|
141
142
|
try {
|
|
142
|
-
const text = await response.text();
|
|
143
143
|
return schema.parse(JSON.parse(text));
|
|
144
144
|
}
|
|
145
145
|
catch (error) {
|
|
146
|
-
|
|
147
|
-
throw new WorkflowAPIError(`Failed to parse server response for ${options.method ?? 'GET'} ${endpoint}: ${error.message}`, { url, cause: error });
|
|
148
|
-
}
|
|
149
|
-
throw new WorkflowAPIError(`Failed to parse server response for ${options.method ?? 'GET'} ${endpoint}`, { url, cause: error });
|
|
146
|
+
throw new WorkflowAPIError(`Failed to parse server response for ${request.method} ${endpoint}:\n\n${error}\n\nResponse body: ${text}`, { url, cause: error });
|
|
150
147
|
}
|
|
151
148
|
}
|
|
152
149
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAwB,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "4.0.1-beta.
|
|
1
|
+
export declare const version = "4.0.1-beta.23";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@workflow/world-vercel",
|
|
3
|
-
"version": "4.0.1-beta.
|
|
3
|
+
"version": "4.0.1-beta.23",
|
|
4
4
|
"description": "Vercel platform World implementation for Workflow DevKit",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,19 +26,20 @@
|
|
|
26
26
|
"@vercel/oidc": "3.0.5",
|
|
27
27
|
"@vercel/queue": "0.0.0-alpha.33",
|
|
28
28
|
"zod": "4.1.11",
|
|
29
|
-
"@workflow/errors": "4.0.1-beta.
|
|
29
|
+
"@workflow/errors": "4.0.1-beta.11",
|
|
30
30
|
"@workflow/world": "4.0.1-beta.10"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/node": "22.19.0",
|
|
34
34
|
"genversion": "3.2.0",
|
|
35
|
+
"vitest": "^3.2.4",
|
|
35
36
|
"@workflow/tsconfig": "4.0.1-beta.0"
|
|
36
37
|
},
|
|
37
38
|
"scripts": {
|
|
38
39
|
"build": "genversion --es6 src/version.ts && tsc",
|
|
39
40
|
"dev": "genversion --es6 src/version.ts && tsc --watch",
|
|
40
41
|
"clean": "tsc --build --clean && rm -rf dist src/version.ts",
|
|
41
|
-
"test": "
|
|
42
|
+
"test": "vitest",
|
|
42
43
|
"typecheck": "genversion --es6 src/version.ts && tsc --noEmit"
|
|
43
44
|
}
|
|
44
45
|
}
|