@superdurable/dex 1.12.0 → 1.14.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.
- package/README.md +18 -0
- package/dist/src/options.d.ts +2 -0
- package/dist/src/pull-registration.d.ts +70 -0
- package/dist/src/pull-registration.js +156 -0
- package/dist/src/pull-registration.js.map +1 -0
- package/dist/src/pull-worker.d.ts +6 -1
- package/dist/src/pull-worker.js +31 -2
- package/dist/src/pull-worker.js.map +1 -1
- package/dist/src/sdk-version.generated.d.ts +1 -1
- package/dist/src/sdk-version.generated.js +1 -1
- package/dist/src/worker.d.ts +38 -1
- package/dist/src/worker.js +59 -6
- package/dist/src/worker.js.map +1 -1
- package/native/windows-x86_64/dex_blob_cache_node.node +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -191,6 +191,24 @@ try {
|
|
|
191
191
|
}
|
|
192
192
|
```
|
|
193
193
|
|
|
194
|
+
After `await worker.start()`, call `await worker.waitPullRegistered({ timeoutMs: 10_000 })`
|
|
195
|
+
to wait until every Flow type queue and the app Worker ID queue has registered at least once.
|
|
196
|
+
The wait also accepts an `AbortSignal` as `signal`. It is safe before startup and for concurrent
|
|
197
|
+
callers. It rejects with `PullRegistrationError` (queue and original gRPC `cause`) if a permanent
|
|
198
|
+
rejection leaves a queue without another registered stream before readiness. Startup failures
|
|
199
|
+
and shutdown before readiness also reject the wait. Once registration succeeds, later waits
|
|
200
|
+
resolve even after shutdown.
|
|
201
|
+
|
|
202
|
+
Use `worker.pullRegistrationState().isReady` for ongoing probes. Snapshots include `queues`
|
|
203
|
+
with `queue`, `hasRegisteredStream`, and `lastPermanentError`. Readiness does not flap during
|
|
204
|
+
reconnects or transient errors. A permanent rejection without another registered stream makes
|
|
205
|
+
it false; re-registration clears that queue's error. Closing does not reset readiness.
|
|
206
|
+
|
|
207
|
+
Set `pull.stopOnPermanentStreamRejection: true` to drain and stop on such a permanent rejection
|
|
208
|
+
before or after readiness. It defaults to false, retaining indefinite retries. `worker.run()`
|
|
209
|
+
rejects with `PullRegistrationError` after draining; `start()` keeps its non-blocking startup
|
|
210
|
+
behavior. Always call `close()`, which remains safe after `run()` returns.
|
|
211
|
+
|
|
194
212
|
Pull mode polls the Worker's sticky queue and every registered Flow type queue.
|
|
195
213
|
Flow type names must be unique within one Dex server. `maxConcurrentTasks`
|
|
196
214
|
defaults to the logical CPU count, and `idleStreamsPerQueue` defaults to one.
|
package/dist/src/options.d.ts
CHANGED
|
@@ -395,6 +395,8 @@ export interface WorkerOptions {
|
|
|
395
395
|
* ```
|
|
396
396
|
*/
|
|
397
397
|
export interface PullWorkerOptions {
|
|
398
|
+
/** Stops and drains the Worker when a permanent rejection leaves a queue without registered streams. Defaults to false, retrying indefinitely. Worker.run rejects with PullRegistrationError after draining; Worker.start keeps its non-blocking startup behavior. */
|
|
399
|
+
readonly stopOnPermanentStreamRejection?: boolean;
|
|
398
400
|
/** Maximum simultaneous handlers; zero or omission uses the logical CPU count. Negative values are invalid. */
|
|
399
401
|
readonly maxConcurrentTasks?: number;
|
|
400
402
|
/** Waiting streams on the sticky queue and each Flow type queue; zero or omission uses one. Negative values are invalid. */
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { ServiceError } from "@grpc/grpc-js";
|
|
2
|
+
/** Identifies a permanent rejection that leaves a pull queue without a registered stream. */
|
|
3
|
+
export declare class PullRegistrationError extends Error {
|
|
4
|
+
/** Queue rejected by the server: a Flow type or the app Worker ID. */
|
|
5
|
+
readonly queue: string;
|
|
6
|
+
/**
|
|
7
|
+
* Creates a queue-specific rejection preserving the original gRPC error as `cause`.
|
|
8
|
+
* @param queue - Rejected Flow type or app Worker ID queue.
|
|
9
|
+
* @param cause - Permanent gRPC stream error, including its status code and details.
|
|
10
|
+
*/
|
|
11
|
+
constructor(queue: string, cause: ServiceError);
|
|
12
|
+
}
|
|
13
|
+
/** Independent snapshot of one pull queue; error objects must be treated as immutable. */
|
|
14
|
+
export interface PullQueueRegistrationState {
|
|
15
|
+
/** Flow type or app Worker ID queue name. */
|
|
16
|
+
readonly queue: string;
|
|
17
|
+
/** Whether this queue currently has an acknowledged stream. */
|
|
18
|
+
readonly hasRegisteredStream: boolean;
|
|
19
|
+
/** Last permanent rejection, cleared by successful registration; absent when none remains. */
|
|
20
|
+
readonly lastPermanentError: ServiceError | undefined;
|
|
21
|
+
}
|
|
22
|
+
/** Independent readiness snapshot returned by Worker.pullRegistrationState. */
|
|
23
|
+
export interface PullRegistrationState {
|
|
24
|
+
/** Latches after all queues register; false while a queue has a permanent error and no registered stream. */
|
|
25
|
+
readonly isReady: boolean;
|
|
26
|
+
/** Queue snapshots in registration order; empty for a listening Worker. */
|
|
27
|
+
readonly queues: readonly PullQueueRegistrationState[];
|
|
28
|
+
}
|
|
29
|
+
/** Optional cancellation and deadline for Worker.waitPullRegistered. */
|
|
30
|
+
export interface WaitPullRegisteredOptions {
|
|
31
|
+
/** Cancels only this wait with the signal's reason; defaults to no cancellation. */
|
|
32
|
+
readonly signal?: AbortSignal;
|
|
33
|
+
/** Positive finite timeout in milliseconds; omitted means no deadline. */
|
|
34
|
+
readonly timeoutMs?: number;
|
|
35
|
+
}
|
|
36
|
+
export declare class PullRegistration {
|
|
37
|
+
private readonly queues;
|
|
38
|
+
private readonly listeners;
|
|
39
|
+
private hasRegisteredAllQueues;
|
|
40
|
+
private initialError;
|
|
41
|
+
private hasStopped;
|
|
42
|
+
permanentError: PullRegistrationError | undefined;
|
|
43
|
+
constructor(queues: readonly string[]);
|
|
44
|
+
registered(queue: string): void;
|
|
45
|
+
ended(queue: string, wasRegistered: boolean, failure?: ServiceError): boolean;
|
|
46
|
+
stopped(failure?: unknown): void;
|
|
47
|
+
snapshot(): PullRegistrationState;
|
|
48
|
+
wait(options?: WaitPullRegisteredOptions): Promise<void>;
|
|
49
|
+
addWaiter(waiter: RegistrationWaiter): void;
|
|
50
|
+
removeWaiter(waiter: RegistrationWaiter): void;
|
|
51
|
+
checkWaiter(waiter: RegistrationWaiter): void;
|
|
52
|
+
private notify;
|
|
53
|
+
}
|
|
54
|
+
declare class RegistrationWaiter {
|
|
55
|
+
private readonly registration;
|
|
56
|
+
private readonly options;
|
|
57
|
+
private timer;
|
|
58
|
+
private resolve;
|
|
59
|
+
private reject;
|
|
60
|
+
private hasFinished;
|
|
61
|
+
private readonly abort;
|
|
62
|
+
private readonly timeout;
|
|
63
|
+
private readonly deadlineMs;
|
|
64
|
+
constructor(registration: PullRegistration, options: WaitPullRegisteredOptions);
|
|
65
|
+
wait(): Promise<void>;
|
|
66
|
+
finish(failure?: unknown): void;
|
|
67
|
+
private onAbort;
|
|
68
|
+
private onTimeout;
|
|
69
|
+
}
|
|
70
|
+
export {};
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
// Copyright (c) 2026 Super Durable, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Sustainable Use License 1.0.
|
|
4
|
+
// You may not use this file except in compliance with the License.
|
|
5
|
+
// See the LICENSE file in the repository root.
|
|
6
|
+
//
|
|
7
|
+
// SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
|
|
8
|
+
/** Identifies a permanent rejection that leaves a pull queue without a registered stream. */
|
|
9
|
+
export class PullRegistrationError extends Error {
|
|
10
|
+
/** Queue rejected by the server: a Flow type or the app Worker ID. */
|
|
11
|
+
queue;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a queue-specific rejection preserving the original gRPC error as `cause`.
|
|
14
|
+
* @param queue - Rejected Flow type or app Worker ID queue.
|
|
15
|
+
* @param cause - Permanent gRPC stream error, including its status code and details.
|
|
16
|
+
*/
|
|
17
|
+
constructor(queue, cause) {
|
|
18
|
+
super(`pull queue ${queue} rejected: ${cause.message}`, { cause });
|
|
19
|
+
this.name = "PullRegistrationError";
|
|
20
|
+
this.queue = queue;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export class PullRegistration {
|
|
24
|
+
queues;
|
|
25
|
+
listeners = new Set();
|
|
26
|
+
hasRegisteredAllQueues = false;
|
|
27
|
+
initialError;
|
|
28
|
+
hasStopped = false;
|
|
29
|
+
permanentError;
|
|
30
|
+
constructor(queues) {
|
|
31
|
+
this.queues = new Map(queues.map((queue) => [queue, {
|
|
32
|
+
hasRegistered: false, registeredStreams: 0, lastPermanentError: undefined,
|
|
33
|
+
}]));
|
|
34
|
+
}
|
|
35
|
+
registered(queue) {
|
|
36
|
+
const registration = this.queues.get(queue);
|
|
37
|
+
registration.hasRegistered = true;
|
|
38
|
+
registration.registeredStreams++;
|
|
39
|
+
registration.lastPermanentError = undefined;
|
|
40
|
+
this.hasRegisteredAllQueues ||= [...this.queues.values()].every((entry) => entry.hasRegistered);
|
|
41
|
+
this.notify();
|
|
42
|
+
}
|
|
43
|
+
ended(queue, wasRegistered, failure) {
|
|
44
|
+
const registration = this.queues.get(queue);
|
|
45
|
+
if (wasRegistered)
|
|
46
|
+
registration.registeredStreams--;
|
|
47
|
+
if (failure !== undefined) {
|
|
48
|
+
registration.lastPermanentError = failure;
|
|
49
|
+
if (registration.registeredStreams === 0) {
|
|
50
|
+
const rejection = new PullRegistrationError(queue, failure);
|
|
51
|
+
if (!this.hasRegisteredAllQueues)
|
|
52
|
+
this.initialError ??= rejection;
|
|
53
|
+
this.permanentError ??= rejection;
|
|
54
|
+
this.notify();
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
this.notify();
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
stopped(failure) {
|
|
62
|
+
this.initialError ??= failure;
|
|
63
|
+
this.hasStopped = true;
|
|
64
|
+
this.notify();
|
|
65
|
+
}
|
|
66
|
+
snapshot() {
|
|
67
|
+
const queues = [...this.queues].map(([queue, registration]) => ({
|
|
68
|
+
queue, hasRegisteredStream: registration.registeredStreams > 0,
|
|
69
|
+
lastPermanentError: registration.lastPermanentError,
|
|
70
|
+
}));
|
|
71
|
+
return {
|
|
72
|
+
isReady: this.hasRegisteredAllQueues && !queues.some((queue) => !queue.hasRegisteredStream && queue.lastPermanentError !== undefined),
|
|
73
|
+
queues,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
wait(options = {}) {
|
|
77
|
+
const { signal, timeoutMs } = options;
|
|
78
|
+
if (timeoutMs !== undefined && (!Number.isFinite(timeoutMs) || timeoutMs <= 0)) {
|
|
79
|
+
return Promise.reject(new RangeError("timeoutMs must be positive and finite"));
|
|
80
|
+
}
|
|
81
|
+
return new RegistrationWaiter(this, options).wait();
|
|
82
|
+
}
|
|
83
|
+
addWaiter(waiter) {
|
|
84
|
+
this.listeners.add(waiter);
|
|
85
|
+
}
|
|
86
|
+
removeWaiter(waiter) {
|
|
87
|
+
this.listeners.delete(waiter);
|
|
88
|
+
}
|
|
89
|
+
checkWaiter(waiter) {
|
|
90
|
+
if (this.hasRegisteredAllQueues)
|
|
91
|
+
waiter.finish();
|
|
92
|
+
else if (this.initialError !== undefined)
|
|
93
|
+
waiter.finish(this.initialError);
|
|
94
|
+
else if (this.hasStopped)
|
|
95
|
+
waiter.finish(new Error("pull Worker stopped before registration"));
|
|
96
|
+
}
|
|
97
|
+
notify() {
|
|
98
|
+
for (const listener of this.listeners)
|
|
99
|
+
this.checkWaiter(listener);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
class RegistrationWaiter {
|
|
103
|
+
registration;
|
|
104
|
+
options;
|
|
105
|
+
timer;
|
|
106
|
+
resolve;
|
|
107
|
+
reject;
|
|
108
|
+
hasFinished = false;
|
|
109
|
+
abort = this.onAbort.bind(this);
|
|
110
|
+
timeout = this.onTimeout.bind(this);
|
|
111
|
+
deadlineMs;
|
|
112
|
+
constructor(registration, options) {
|
|
113
|
+
this.registration = registration;
|
|
114
|
+
this.options = options;
|
|
115
|
+
this.deadlineMs = options.timeoutMs === undefined ? undefined : Date.now() + options.timeoutMs;
|
|
116
|
+
}
|
|
117
|
+
wait() {
|
|
118
|
+
return new Promise((resolve, reject) => {
|
|
119
|
+
this.resolve = resolve;
|
|
120
|
+
this.reject = reject;
|
|
121
|
+
this.registration.addWaiter(this);
|
|
122
|
+
this.options.signal?.addEventListener("abort", this.abort, { once: true });
|
|
123
|
+
this.registration.checkWaiter(this);
|
|
124
|
+
if (!this.hasFinished && this.options.signal?.aborted === true)
|
|
125
|
+
this.onAbort();
|
|
126
|
+
if (!this.hasFinished && this.deadlineMs !== undefined)
|
|
127
|
+
this.onTimeout();
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
finish(failure) {
|
|
131
|
+
if (this.hasFinished)
|
|
132
|
+
return;
|
|
133
|
+
this.hasFinished = true;
|
|
134
|
+
this.registration.removeWaiter(this);
|
|
135
|
+
this.options.signal?.removeEventListener("abort", this.abort);
|
|
136
|
+
if (this.timer !== undefined)
|
|
137
|
+
clearTimeout(this.timer);
|
|
138
|
+
if (failure === undefined)
|
|
139
|
+
this.resolve();
|
|
140
|
+
else
|
|
141
|
+
this.reject(failure);
|
|
142
|
+
}
|
|
143
|
+
onAbort() {
|
|
144
|
+
this.finish(this.options.signal?.reason);
|
|
145
|
+
}
|
|
146
|
+
onTimeout() {
|
|
147
|
+
const remainingMs = this.deadlineMs - Date.now();
|
|
148
|
+
if (remainingMs <= 0) {
|
|
149
|
+
this.finish(new DOMException("Pull registration timed out", "TimeoutError"));
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
this.timer = setTimeout(this.timeout, Math.min(remainingMs, 2_147_483_647));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=pull-registration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pull-registration.js","sourceRoot":"","sources":["../../src/pull-registration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { type Credential } from "./credential.js";
|
|
2
2
|
import { type Registry } from "./flow.js";
|
|
3
3
|
import type { PullWorkerOptions } from "./options.js";
|
|
4
|
+
import { PullRegistration } from "./pull-registration.js";
|
|
4
5
|
import { WorkerDispatcher } from "./worker-dispatcher.js";
|
|
5
6
|
export declare class PullWorker {
|
|
6
7
|
private readonly dispatcher;
|
|
8
|
+
private readonly options;
|
|
9
|
+
private readonly onPermanentRejection;
|
|
7
10
|
readonly appWorkerID: string;
|
|
11
|
+
readonly registration: PullRegistration;
|
|
8
12
|
private readonly client;
|
|
9
13
|
private readonly queues;
|
|
10
14
|
private readonly flowTypes;
|
|
@@ -18,7 +22,7 @@ export declare class PullWorker {
|
|
|
18
22
|
private stopDeadlineMs;
|
|
19
23
|
private hasLoggedUnsupportedServer;
|
|
20
24
|
private busyTaskCount;
|
|
21
|
-
constructor(registry: Registry, dispatcher: WorkerDispatcher, serverAddress: string, options: PullWorkerOptions, credential?: Credential);
|
|
25
|
+
constructor(registry: Registry, dispatcher: WorkerDispatcher, serverAddress: string, options: PullWorkerOptions, credential?: Credential, onPermanentRejection?: () => void);
|
|
22
26
|
start(): void;
|
|
23
27
|
close(): Promise<void>;
|
|
24
28
|
private reconcile;
|
|
@@ -37,5 +41,6 @@ export declare class PullWorker {
|
|
|
37
41
|
private armHalfCloseTimer;
|
|
38
42
|
private completeHalfClose;
|
|
39
43
|
private scheduleReconnect;
|
|
44
|
+
private recordStreamResult;
|
|
40
45
|
private closeStream;
|
|
41
46
|
}
|
package/dist/src/pull-worker.js
CHANGED
|
@@ -12,10 +12,14 @@ import { credentialInterceptors } from "./credential.js";
|
|
|
12
12
|
import { registeredFlow } from "./flow.js";
|
|
13
13
|
import { InvokeExecuteMethodOutput, InvokeWaitForMethodOutput, PollWorkerTaskRejectReason, WorkerTaskServiceClient, } from "./gen/dex.js";
|
|
14
14
|
import { workerErrorResponse } from "./grpc-status.js";
|
|
15
|
+
import { PullRegistration } from "./pull-registration.js";
|
|
15
16
|
import { sdkVersion } from "./sdk-version.generated.js";
|
|
16
17
|
export class PullWorker {
|
|
17
18
|
dispatcher;
|
|
19
|
+
options;
|
|
20
|
+
onPermanentRejection;
|
|
18
21
|
appWorkerID;
|
|
22
|
+
registration;
|
|
19
23
|
client;
|
|
20
24
|
queues;
|
|
21
25
|
flowTypes;
|
|
@@ -29,8 +33,10 @@ export class PullWorker {
|
|
|
29
33
|
stopDeadlineMs;
|
|
30
34
|
hasLoggedUnsupportedServer = false;
|
|
31
35
|
busyTaskCount = 0;
|
|
32
|
-
constructor(registry, dispatcher, serverAddress, options, credential) {
|
|
36
|
+
constructor(registry, dispatcher, serverAddress, options, credential, onPermanentRejection = () => { }) {
|
|
33
37
|
this.dispatcher = dispatcher;
|
|
38
|
+
this.options = options;
|
|
39
|
+
this.onPermanentRejection = onPermanentRejection;
|
|
34
40
|
this.maxConcurrentTasks = positiveOption(options.maxConcurrentTasks, availableParallelism(), "maxConcurrentTasks");
|
|
35
41
|
this.idleStreamsPerQueue = positiveOption(options.idleStreamsPerQueue, 1, "idleStreamsPerQueue");
|
|
36
42
|
this.stopDrainTimeoutMs = options.stopDrainTimeoutMs === undefined || options.stopDrainTimeoutMs === 0
|
|
@@ -51,6 +57,7 @@ export class PullWorker {
|
|
|
51
57
|
throw new TypeError(`appWorkerID conflicts with Flow type ${this.appWorkerID}`);
|
|
52
58
|
}
|
|
53
59
|
this.queues = [this.appWorkerID, ...this.flowTypes];
|
|
60
|
+
this.registration = new PullRegistration(this.queues);
|
|
54
61
|
this.client = createWorkerTaskClient(serverAddress, credential);
|
|
55
62
|
}
|
|
56
63
|
start() {
|
|
@@ -59,6 +66,7 @@ export class PullWorker {
|
|
|
59
66
|
async close() {
|
|
60
67
|
const stopDeadlineMs = this.stopDeadlineMs ??= Date.now() + this.stopDrainTimeoutMs;
|
|
61
68
|
this.isStopping = true;
|
|
69
|
+
this.registration.stopped();
|
|
62
70
|
for (const poll of this.streams) {
|
|
63
71
|
poll.isDraining = true;
|
|
64
72
|
if (poll.isHalfClosed)
|
|
@@ -113,7 +121,7 @@ export class PullWorker {
|
|
|
113
121
|
const poll = {
|
|
114
122
|
queue, stream: undefined, task: undefined, retryTimer: undefined,
|
|
115
123
|
halfCloseTimer: undefined, halfClosePromise: undefined, resolveHalfClose: undefined,
|
|
116
|
-
isRegistered: false, supportsUnknownNameRejection: false, isDisconnected: false, isHalfClosed: false, isDraining: false,
|
|
124
|
+
isRegistered: false, hasRecordedResult: false, supportsUnknownNameRejection: false, isDisconnected: false, isHalfClosed: false, isDraining: false,
|
|
117
125
|
isReconnectRequested: false,
|
|
118
126
|
backoffMs: 100, failure: undefined,
|
|
119
127
|
};
|
|
@@ -127,6 +135,7 @@ export class PullWorker {
|
|
|
127
135
|
if (this.isStopping)
|
|
128
136
|
return;
|
|
129
137
|
poll.isRegistered = false;
|
|
138
|
+
poll.hasRecordedResult = false;
|
|
130
139
|
poll.supportsUnknownNameRejection = false;
|
|
131
140
|
poll.isDisconnected = false;
|
|
132
141
|
poll.isHalfClosed = false;
|
|
@@ -174,6 +183,7 @@ export class PullWorker {
|
|
|
174
183
|
}
|
|
175
184
|
else if (frame?.$case === "registered") {
|
|
176
185
|
poll.isRegistered = true;
|
|
186
|
+
this.registration.registered(poll.queue);
|
|
177
187
|
poll.supportsUnknownNameRejection = frame.value.supportsUnknownNameRejection;
|
|
178
188
|
poll.backoffMs = 100;
|
|
179
189
|
}
|
|
@@ -341,6 +351,7 @@ export class PullWorker {
|
|
|
341
351
|
disconnect(poll) {
|
|
342
352
|
if (poll.isDisconnected)
|
|
343
353
|
return;
|
|
354
|
+
this.recordStreamResult(poll);
|
|
344
355
|
poll.isDisconnected = true;
|
|
345
356
|
poll.stream?.cancel();
|
|
346
357
|
poll.task?.controller.abort();
|
|
@@ -356,6 +367,7 @@ export class PullWorker {
|
|
|
356
367
|
}
|
|
357
368
|
if (poll.isDisconnected)
|
|
358
369
|
return;
|
|
370
|
+
this.recordStreamResult(poll);
|
|
359
371
|
poll.isDisconnected = true;
|
|
360
372
|
poll.task?.controller.abort();
|
|
361
373
|
if (!this.isStopping && poll.task === undefined)
|
|
@@ -390,6 +402,7 @@ export class PullWorker {
|
|
|
390
402
|
completeHalfClose(poll) {
|
|
391
403
|
if (!poll.isHalfClosed)
|
|
392
404
|
return;
|
|
405
|
+
this.recordStreamResult(poll);
|
|
393
406
|
poll.isHalfClosed = false;
|
|
394
407
|
if (poll.halfCloseTimer !== undefined)
|
|
395
408
|
clearTimeout(poll.halfCloseTimer);
|
|
@@ -441,7 +454,23 @@ export class PullWorker {
|
|
|
441
454
|
this.openStream(poll);
|
|
442
455
|
}, delayMs);
|
|
443
456
|
}
|
|
457
|
+
recordStreamResult(poll) {
|
|
458
|
+
if (poll.hasRecordedResult)
|
|
459
|
+
return;
|
|
460
|
+
poll.hasRecordedResult = true;
|
|
461
|
+
const failure = poll.failure;
|
|
462
|
+
const isPermanent = failure !== undefined && [
|
|
463
|
+
status.INVALID_ARGUMENT, status.RESOURCE_EXHAUSTED, status.UNIMPLEMENTED,
|
|
464
|
+
status.PERMISSION_DENIED, status.UNAUTHENTICATED,
|
|
465
|
+
].includes(failure.code);
|
|
466
|
+
const isRejected = this.registration.ended(poll.queue, poll.isRegistered, isPermanent ? failure : undefined);
|
|
467
|
+
poll.isRegistered = false;
|
|
468
|
+
if (isRejected && this.options.stopOnPermanentStreamRejection === true && !this.isStopping) {
|
|
469
|
+
queueMicrotask(this.onPermanentRejection);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
444
472
|
closeStream(poll) {
|
|
473
|
+
this.recordStreamResult(poll);
|
|
445
474
|
poll.isDisconnected = true;
|
|
446
475
|
poll.stream?.cancel();
|
|
447
476
|
if (poll.isHalfClosed)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull-worker.js","sourceRoot":"","sources":["../../src/pull-worker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pull-worker.js","sourceRoot":"","sources":["../../src/pull-worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const sdkVersion = "1.
|
|
1
|
+
export declare const sdkVersion = "1.14.0";
|
package/dist/src/worker.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { BlobCache } from "./blob-cache.js";
|
|
2
2
|
import { type Registry } from "./flow.js";
|
|
3
3
|
import type { WorkerOptions, WorkerTarget } from "./options.js";
|
|
4
|
+
export { PullRegistrationError } from "./pull-registration.js";
|
|
5
|
+
export type { PullRegistrationState, PullQueueRegistrationState, WaitPullRegisteredOptions } from "./pull-registration.js";
|
|
6
|
+
import type { PullRegistrationState, WaitPullRegisteredOptions } from "./pull-registration.js";
|
|
4
7
|
/**
|
|
5
8
|
* Hosts registered Step and RPC handlers through a listener or outbound pull streams.
|
|
6
9
|
*
|
|
@@ -34,6 +37,7 @@ export declare class Worker {
|
|
|
34
37
|
private resolveStopped;
|
|
35
38
|
private state;
|
|
36
39
|
private negotiatedProtocolVersion;
|
|
40
|
+
private shutdownError;
|
|
37
41
|
/**
|
|
38
42
|
* Constructs a Worker without starting its listener or task streams.
|
|
39
43
|
* @param registry - Flow definitions served by this Worker.
|
|
@@ -46,10 +50,43 @@ export declare class Worker {
|
|
|
46
50
|
/**
|
|
47
51
|
* Negotiates the Server protocol, synchronizes indexes, and starts listening or polling.
|
|
48
52
|
* The promise resolves after binding or launching pull streams; call exactly once.
|
|
53
|
+
* Await waitPullRegistered separately to gate startup on pull queue acknowledgements.
|
|
49
54
|
*/
|
|
50
55
|
start(): Promise<void>;
|
|
51
|
-
/**
|
|
56
|
+
/**
|
|
57
|
+
* Starts the Worker and waits until `close` completes shutdown.
|
|
58
|
+
* @returns A promise resolved after graceful shutdown and handler completion.
|
|
59
|
+
* @throws {Error} Startup or shutdown fails.
|
|
60
|
+
* @throws {PullRegistrationError} A permanent rejection leaves a queue without registered streams when stopOnPermanentStreamRejection is enabled.
|
|
61
|
+
*/
|
|
52
62
|
run(): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Waits until every Flow type queue and the app Worker ID queue has registered at least once.
|
|
65
|
+
* Safe before or after start and for concurrent callers. Later calls resolve even after shutdown.
|
|
66
|
+
* Reconnects do not reset completion. Use pullRegistrationState for ongoing readiness probes.
|
|
67
|
+
* @param options - Optional AbortSignal and positive timeout in milliseconds; defaults to waiting indefinitely.
|
|
68
|
+
* @returns A promise resolved after all queues have registered once.
|
|
69
|
+
* @throws {PullRegistrationError} A permanent rejection leaves a queue without another registered stream before readiness.
|
|
70
|
+
* @throws {Error} Startup fails, the Worker stops before readiness, or this is a listening Worker.
|
|
71
|
+
* @throws {RangeError} The timeout is invalid.
|
|
72
|
+
* @throws {DOMException} The timeout expires; cancellation rejects with the signal's reason.
|
|
73
|
+
* @example
|
|
74
|
+
* ```ts
|
|
75
|
+
* await worker.start();
|
|
76
|
+
* await worker.waitPullRegistered({ timeoutMs: 10_000 });
|
|
77
|
+
* console.log(worker.pullRegistrationState().isReady);
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
waitPullRegistered(options?: WaitPullRegisteredOptions): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Returns an independent snapshot of pull queue registrations.
|
|
83
|
+
* Readiness latches after every queue registers once. Only a permanent rejection with no
|
|
84
|
+
* registered stream makes it false; re-registration clears the queue error. Stop preserves readiness.
|
|
85
|
+
* @returns Current readiness and queue snapshots, or false and an empty list for a listening Worker.
|
|
86
|
+
* See waitPullRegistered for a startup and readiness example. Treat errors as immutable.
|
|
87
|
+
*/
|
|
88
|
+
pullRegistrationState(): PullRegistrationState;
|
|
89
|
+
private stopAfterPermanentRejection;
|
|
53
90
|
/**
|
|
54
91
|
* Gracefully stops the listener or drains pull tasks, then releases connections.
|
|
55
92
|
* A pull Worker force-cancels after its drain timeout and waits for handlers to return.
|
package/dist/src/worker.js
CHANGED
|
@@ -15,6 +15,7 @@ import { sdkVersion } from "./sdk-version.generated.js";
|
|
|
15
15
|
import { ValueHydrator } from "./value-mapper.js";
|
|
16
16
|
import { WorkerDispatcher } from "./worker-dispatcher.js";
|
|
17
17
|
import { PullWorker } from "./pull-worker.js";
|
|
18
|
+
export { PullRegistrationError } from "./pull-registration.js";
|
|
18
19
|
/**
|
|
19
20
|
* Hosts registered Step and RPC handlers through a listener or outbound pull streams.
|
|
20
21
|
*
|
|
@@ -48,6 +49,7 @@ export class Worker {
|
|
|
48
49
|
resolveStopped;
|
|
49
50
|
state = "created";
|
|
50
51
|
negotiatedProtocolVersion = 0;
|
|
52
|
+
shutdownError;
|
|
51
53
|
/**
|
|
52
54
|
* Constructs a Worker without starting its listener or task streams.
|
|
53
55
|
* @param registry - Flow definitions served by this Worker.
|
|
@@ -73,7 +75,7 @@ export class Worker {
|
|
|
73
75
|
try {
|
|
74
76
|
this.pullWorker = options.pull === undefined
|
|
75
77
|
? undefined
|
|
76
|
-
: new PullWorker(registry, dispatcher, options.serverAddress ?? "localhost:8801", options.pull, options.credential);
|
|
78
|
+
: new PullWorker(registry, dispatcher, options.serverAddress ?? "localhost:8801", options.pull, options.credential, () => this.stopAfterPermanentRejection());
|
|
77
79
|
}
|
|
78
80
|
catch (failure) {
|
|
79
81
|
this.flowService.close();
|
|
@@ -89,6 +91,7 @@ export class Worker {
|
|
|
89
91
|
/**
|
|
90
92
|
* Negotiates the Server protocol, synchronizes indexes, and starts listening or polling.
|
|
91
93
|
* The promise resolves after binding or launching pull streams; call exactly once.
|
|
94
|
+
* Await waitPullRegistered separately to gate startup on pull queue acknowledgements.
|
|
92
95
|
*/
|
|
93
96
|
async start() {
|
|
94
97
|
if (this.state !== "created") {
|
|
@@ -118,20 +121,70 @@ export class Worker {
|
|
|
118
121
|
this.state = "running";
|
|
119
122
|
}
|
|
120
123
|
catch (failure) {
|
|
124
|
+
const endpoint = this.pullWorker === undefined
|
|
125
|
+
? `Worker on ${bindAddress}`
|
|
126
|
+
: `pull Worker for ${this.options.serverAddress ?? "localhost:8801"}`;
|
|
127
|
+
const startupError = new Error(`cannot start TypeScript ${endpoint}`, { cause: failure });
|
|
128
|
+
this.pullWorker?.registration.stopped(startupError);
|
|
121
129
|
this.state = "stopped";
|
|
122
130
|
await this.pullWorker?.close();
|
|
123
131
|
this.flowService.close();
|
|
124
132
|
this.resolveStopped();
|
|
125
|
-
|
|
126
|
-
? `Worker on ${bindAddress}`
|
|
127
|
-
: `pull Worker for ${this.options.serverAddress ?? "localhost:8801"}`;
|
|
128
|
-
throw new Error(`cannot start TypeScript ${endpoint}`, { cause: failure });
|
|
133
|
+
throw startupError;
|
|
129
134
|
}
|
|
130
135
|
}
|
|
131
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* Starts the Worker and waits until `close` completes shutdown.
|
|
138
|
+
* @returns A promise resolved after graceful shutdown and handler completion.
|
|
139
|
+
* @throws {Error} Startup or shutdown fails.
|
|
140
|
+
* @throws {PullRegistrationError} A permanent rejection leaves a queue without registered streams when stopOnPermanentStreamRejection is enabled.
|
|
141
|
+
*/
|
|
132
142
|
async run() {
|
|
133
143
|
await this.start();
|
|
134
144
|
await this.stopped;
|
|
145
|
+
if (this.shutdownError !== undefined)
|
|
146
|
+
throw this.shutdownError;
|
|
147
|
+
if (this.options.pull?.stopOnPermanentStreamRejection === true && this.pullWorker?.registration.permanentError !== undefined) {
|
|
148
|
+
throw this.pullWorker.registration.permanentError;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Waits until every Flow type queue and the app Worker ID queue has registered at least once.
|
|
153
|
+
* Safe before or after start and for concurrent callers. Later calls resolve even after shutdown.
|
|
154
|
+
* Reconnects do not reset completion. Use pullRegistrationState for ongoing readiness probes.
|
|
155
|
+
* @param options - Optional AbortSignal and positive timeout in milliseconds; defaults to waiting indefinitely.
|
|
156
|
+
* @returns A promise resolved after all queues have registered once.
|
|
157
|
+
* @throws {PullRegistrationError} A permanent rejection leaves a queue without another registered stream before readiness.
|
|
158
|
+
* @throws {Error} Startup fails, the Worker stops before readiness, or this is a listening Worker.
|
|
159
|
+
* @throws {RangeError} The timeout is invalid.
|
|
160
|
+
* @throws {DOMException} The timeout expires; cancellation rejects with the signal's reason.
|
|
161
|
+
* @example
|
|
162
|
+
* ```ts
|
|
163
|
+
* await worker.start();
|
|
164
|
+
* await worker.waitPullRegistered({ timeoutMs: 10_000 });
|
|
165
|
+
* console.log(worker.pullRegistrationState().isReady);
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
waitPullRegistered(options = {}) {
|
|
169
|
+
if (this.pullWorker === undefined)
|
|
170
|
+
return Promise.reject(new Error("waitPullRegistered requires a pull Worker"));
|
|
171
|
+
return this.pullWorker.registration.wait(options);
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Returns an independent snapshot of pull queue registrations.
|
|
175
|
+
* Readiness latches after every queue registers once. Only a permanent rejection with no
|
|
176
|
+
* registered stream makes it false; re-registration clears the queue error. Stop preserves readiness.
|
|
177
|
+
* @returns Current readiness and queue snapshots, or false and an empty list for a listening Worker.
|
|
178
|
+
* See waitPullRegistered for a startup and readiness example. Treat errors as immutable.
|
|
179
|
+
*/
|
|
180
|
+
pullRegistrationState() {
|
|
181
|
+
return this.pullWorker?.registration.snapshot() ?? { isReady: false, queues: [] };
|
|
182
|
+
}
|
|
183
|
+
stopAfterPermanentRejection() {
|
|
184
|
+
this.close().catch((failure) => {
|
|
185
|
+
this.shutdownError = failure;
|
|
186
|
+
this.resolveStopped();
|
|
187
|
+
});
|
|
135
188
|
}
|
|
136
189
|
/**
|
|
137
190
|
* Gracefully stops the listener or drains pull tasks, then releases connections.
|
package/dist/src/worker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|