@superdurable/dex 1.8.0 → 1.10.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.
@@ -1,5 +1,7 @@
1
- import { type ServiceError as GrpcServiceError } from "@grpc/grpc-js";
1
+ import { status, type ServiceError as GrpcServiceError } from "@grpc/grpc-js";
2
+ import { WorkerErrorResponse } from "./gen/dex.js";
2
3
  import { DexServiceError } from "./errors.js";
3
4
  export declare function workerServiceError(failure: unknown): GrpcServiceError;
5
+ export declare function workerErrorResponse(failure: unknown, grpcStatus?: status): WorkerErrorResponse;
4
6
  export type FlowTargetRequirement = "none" | "existing" | "active";
5
7
  export declare function translateServiceError(error: GrpcServiceError, operation: string, flowId: string | undefined, requirement: FlowTargetRequirement): DexServiceError;
@@ -18,6 +18,19 @@ const errorDetailTruncationMarker = Buffer.from("\n... error detail truncated by
18
18
  const errorTypeTruncationMarker = Buffer.from("\n... error type truncated by Dex TypeScript SDK ...");
19
19
  const stackTraceTruncationMarker = Buffer.from("\n... stack trace truncated by Dex TypeScript SDK ...");
20
20
  export function workerServiceError(failure) {
21
+ const response = workerErrorResponse(failure);
22
+ const worker = WorkerErrorResponse.encode(response).finish();
23
+ const metadata = new Metadata();
24
+ metadata.set(statusDetailsKey, Buffer.from(encodeStatus(response.grpcStatus, response.detail, [
25
+ { typeUrl: "type.googleapis.com/dex.WorkerErrorResponse", value: worker },
26
+ ])));
27
+ return Object.assign(new Error(response.detail), {
28
+ code: response.grpcStatus,
29
+ details: response.detail,
30
+ metadata,
31
+ });
32
+ }
33
+ export function workerErrorResponse(failure, grpcStatus = status.UNKNOWN) {
21
34
  const retryAfterError = failure instanceof RetryAfterError ? failure : undefined;
22
35
  const cause = retryAfterError?.cause instanceof Error
23
36
  ? retryAfterError.cause
@@ -25,20 +38,12 @@ export function workerServiceError(failure) {
25
38
  ? failure
26
39
  : new Error(String(failure));
27
40
  const detail = truncateWorkerFailureField(cause.message || cause.name, maxWorkerErrorDetailBytes, errorDetailTruncationMarker);
28
- const worker = WorkerErrorResponse.encode({
41
+ return WorkerErrorResponse.create({
29
42
  detail,
30
43
  errorType: truncateWorkerFailureField(cause.name, maxWorkerErrorTypeBytes, errorTypeTruncationMarker),
31
44
  stackTrace: truncateWorkerFailureField(cause.stack ?? "", maxWorkerStackTraceBytes, stackTraceTruncationMarker),
32
45
  retryAfterSeconds: retryAfterError?.afterSeconds ?? 0,
33
- }).finish();
34
- const metadata = new Metadata();
35
- metadata.set(statusDetailsKey, Buffer.from(encodeStatus(status.UNKNOWN, detail, [
36
- { typeUrl: "type.googleapis.com/dex.WorkerErrorResponse", value: worker },
37
- ])));
38
- return Object.assign(new Error(detail), {
39
- code: status.UNKNOWN,
40
- details: detail,
41
- metadata,
46
+ grpcStatus,
42
47
  });
43
48
  }
44
49
  function truncateWorkerFailureField(value, maximumBytes, truncationMarker) {
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-status.js","sourceRoot":"","sources":["../../src/grpc-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grpc-status.js","sourceRoot":"","sources":["../../src/grpc-status.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ export * from "./attribute-match.js";
3
3
  export * from "./client.js";
4
4
  export * from "./codec.js";
5
5
  export * from "./context.js";
6
+ export { FileCredential } from "./credential.js";
7
+ export type { Credential } from "./credential.js";
6
8
  export * from "./errors.js";
7
9
  export { Registry } from "./flow.js";
8
10
  export type { Flow } from "./flow.js";
package/dist/src/index.js CHANGED
@@ -10,6 +10,7 @@ export * from "./attribute-match.js";
10
10
  export * from "./client.js";
11
11
  export * from "./codec.js";
12
12
  export * from "./context.js";
13
+ export { FileCredential } from "./credential.js";
13
14
  export * from "./errors.js";
14
15
  export { Registry } from "./flow.js";
15
16
  export * from "./options.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,kDAAkD;AAClD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,0DAA0D;AAE1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGrC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { Credential } from "./credential.js";
1
2
  import type { Attribute, AttributeLock, AttributeMap, AttributeMapLoad } from "./persistence.js";
2
3
  import type { RetryPolicy, StepClass, StepDurability, StepOptions } from "./step.js";
3
4
  import type { Channel, ChannelMap, ChannelMapLoad } from "./wait.js";
@@ -5,8 +6,10 @@ import type { Channel, ChannelMap, ChannelMapLoad } from "./wait.js";
5
6
  export interface ClientOptions {
6
7
  /** Plaintext Dex gRPC target; defaults to `localhost:8801`. */
7
8
  readonly serverAddress?: string;
8
- /** Worker endpoint advertised by `startFlow` unless a Flow overrides it. */
9
- readonly workerTarget?: WorkerTarget;
9
+ /** Bearer token provider for every FlowService call; omitted sends no authorization metadata. */
10
+ readonly credential?: Credential;
11
+ /** Worker endpoint advertised by `startFlow` unless a Flow overrides it; use `{ pull: true }` for pull Workers. */
12
+ readonly workerTarget?: WorkerTarget | PullWorkerTarget;
10
13
  }
11
14
  /**
12
15
  * Configures one durable Step completion wait.
@@ -148,8 +151,8 @@ export interface FlowConfig {
148
151
  readonly continueAsNewPageSizeBytes?: number;
149
152
  /** Default durability for later Step handler results. */
150
153
  readonly stepDurability?: StepDurability;
151
- /** Worker endpoint used for later handler calls. */
152
- readonly workerTarget?: WorkerTarget;
154
+ /** Worker endpoint used for later handler calls; use `{ pull: true }` for pull routing. */
155
+ readonly workerTarget?: WorkerTarget | PullWorkerTarget;
153
156
  }
154
157
  /**
155
158
  * Describes one Attribute value written atomically when a Flow starts.
@@ -357,24 +360,88 @@ export interface StopFlowOptions {
357
360
  /** Optional operator-readable reason recorded by Dex. */
358
361
  readonly reason?: string;
359
362
  }
360
- /** Configures Worker networking and startup synchronization. */
363
+ /**
364
+ * Configures Worker startup and either a listening endpoint or outbound pull streams.
365
+ *
366
+ * Set `pull: {}` to execute tasks without a listener. A pull Worker cannot set
367
+ * `bindAddress` or `workerTarget`. See {@link PullWorkerOptions} for capacity and shutdown.
368
+ */
361
369
  export interface WorkerOptions {
362
- /** Local plaintext WorkerService listener; defaults to `:8803`. */
370
+ /** Enables outbound polling when supplied; omitted to listen for WorkerService calls. */
371
+ readonly pull?: PullWorkerOptions;
372
+ /** Local plaintext WorkerService listener; defaults to `127.0.0.1:8803` outside pull mode. */
363
373
  readonly bindAddress?: string;
364
374
  /** Endpoint advertised to Dex; derived from `bindAddress` when omitted. */
365
375
  readonly workerTarget?: WorkerTarget;
366
376
  /** Dex FlowService target; defaults to `localhost:8801`. */
367
377
  readonly serverAddress?: string;
378
+ /** Bearer token provider for startup, hydration, and pull streams; omitted sends no authorization metadata. */
379
+ readonly credential?: Credential;
368
380
  /** Startup Indexed Attribute synchronization deadline in milliseconds. Defaults to 120000. */
369
381
  readonly attributeIndexSyncTimeoutMs?: number;
370
382
  }
371
- /** Identifies the application Worker endpoint advertised to Dex. */
383
+ /**
384
+ * Configures an outbound pull Worker.
385
+ *
386
+ * Pass this as `WorkerOptions.pull`, then advertise `worker.workerTarget` to a Client.
387
+ * Each stream handles one task, while handlers on different streams can run concurrently.
388
+ *
389
+ * @example
390
+ * ```ts
391
+ * const worker = new Worker(registry, cache, { pull: { maxConcurrentTasks: 8 } });
392
+ * await worker.start();
393
+ * const client = new Client(registry, cache, { workerTarget: worker.workerTarget });
394
+ * try { await client.startFlow(flow, flowId); } finally { await client.close(); await worker.close(); }
395
+ * ```
396
+ */
397
+ export interface PullWorkerOptions {
398
+ /** Maximum simultaneous handlers; zero or omission uses the logical CPU count. Negative values are invalid. */
399
+ readonly maxConcurrentTasks?: number;
400
+ /** Waiting streams on the sticky queue and each Flow type queue; zero or omission uses one. Negative values are invalid. */
401
+ readonly idleStreamsPerQueue?: number;
402
+ /** Process-unique Worker ID; defaults to host identity plus eight random base32 characters. Use a new ID after every restart. Values contain 1-63 ASCII letters, digits, dots, underscores, or hyphens and cannot equal a registered Flow type. */
403
+ readonly appWorkerID?: string;
404
+ /** Milliseconds allowed for graceful shutdown and busy Reconnect final-frame delivery; defaults to 30000. Requires a non-negative finite value. After shutdown expiry, Worker.close cancels active handlers and waits for them to return. */
405
+ readonly stopDrainTimeoutMs?: number;
406
+ }
407
+ /**
408
+ * Selects the listening endpoint used for Step and RPC work.
409
+ *
410
+ * Use this for a WorkerService listener. Use {@link PullWorkerTarget} for
411
+ * outbound pull routing.
412
+ *
413
+ * @example
414
+ * ```ts
415
+ * const client = new Client(registry, cache, { workerTarget: { address: "worker.example:8803" } });
416
+ * ```
417
+ */
372
418
  export interface WorkerTarget {
373
419
  /** Plaintext gRPC target; headless targets must use `host:port`. */
374
420
  readonly address: string;
375
421
  /** Whether Dex connects directly without service discovery. */
376
422
  readonly headless?: boolean;
377
423
  }
424
+ /**
425
+ * Routes Step and RPC work through Dex task queues to an outbound pull Worker.
426
+ *
427
+ * Supply this target as a Client default, StartFlow configuration override, or
428
+ * SubFlow configuration override. The Worker must have `WorkerOptions.pull` enabled.
429
+ * Pull cannot include a nonempty address or enable headless routing.
430
+ *
431
+ * @example
432
+ * ```ts
433
+ * const client = new Client(registry, cache, { workerTarget: { pull: true } });
434
+ * await client.startFlow(flow, flowId, input);
435
+ * ```
436
+ */
437
+ export interface PullWorkerTarget {
438
+ /** Enables routing through Dex task queues. */
439
+ readonly pull: true;
440
+ /** Omit this field or use an empty string; pull Workers do not listen. */
441
+ readonly address?: "";
442
+ /** Omit this field or use false; headless routing requires a listener. */
443
+ readonly headless?: false;
444
+ }
378
445
  /** Selects whether a visibility search includes earlier Continue-as-New runs. */
379
446
  export interface SearchFlowsOptions {
380
447
  /** Disable default exclusion while retaining every explicit query filter. Defaults to false. */
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { type Credential } from "./credential.js";
2
+ import { type Registry } from "./flow.js";
3
+ import type { PullWorkerOptions } from "./options.js";
4
+ import { WorkerDispatcher } from "./worker-dispatcher.js";
5
+ export declare class PullWorker {
6
+ private readonly dispatcher;
7
+ readonly appWorkerID: string;
8
+ private readonly client;
9
+ private readonly queues;
10
+ private readonly flowTypes;
11
+ private readonly maxConcurrentTasks;
12
+ private readonly idleStreamsPerQueue;
13
+ private readonly stopDrainTimeoutMs;
14
+ private readonly streams;
15
+ private readonly activeTasks;
16
+ private isStopping;
17
+ private stopDeadlineMs;
18
+ private hasLoggedUnsupportedServer;
19
+ private busyTaskCount;
20
+ constructor(registry: Registry, dispatcher: WorkerDispatcher, serverAddress: string, options: PullWorkerOptions, credential?: Credential);
21
+ start(): void;
22
+ close(): Promise<void>;
23
+ private reconcile;
24
+ private openStream;
25
+ private handleFrame;
26
+ private startTask;
27
+ private executeTask;
28
+ private finishTask;
29
+ private sendTaskFrame;
30
+ private send;
31
+ private disconnect;
32
+ private onStreamClosed;
33
+ private halfCloseStream;
34
+ private armHalfCloseTimer;
35
+ private completeHalfClose;
36
+ private scheduleReconnect;
37
+ private closeStream;
38
+ }