@superdurable/dex 0.6.0 → 0.7.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 CHANGED
@@ -221,6 +221,17 @@ and `getAllInstanceKeys` include buffered sets and deletes. The matching
221
221
  instances. Keys are decoded and sorted. Use
222
222
  `forceCompleteIfChannelsEmpty(...)` for conditional completion.
223
223
 
224
+ Request IDs are optional for both durable waits. When omitted, the server
225
+ derives a namespaced stable ID from the Step execution or Attribute condition,
226
+ such as `wait-for-attribute:myInt>10`. Reuse an override only for the same
227
+ logical wait. The Client automatically reattaches transport long polls. If an
228
+ earlier Update with that ID exhausted its handler budget, the server appends an
229
+ increasing `-N` suffix and starts a new Update. `maximumWaitTimeMs` is optional
230
+ and is the total handler budget across reattachments; omit it or use zero to
231
+ wait indefinitely. A positive budget expiry throws `WaitHandlerTimeoutError`.
232
+ An abandoned infinite wait remains accepted and counts against Temporal's
233
+ in-flight Update limit until it completes or the Flow closes.
234
+
224
235
  ### Async handlers
225
236
 
226
237
  `Step.execute`, `Step.waitFor`, and RPC methods may be `async` and return a
@@ -3,7 +3,7 @@ import { AttributeMatch } from "./attribute-match.js";
3
3
  import type { Context } from "./context.js";
4
4
  import { type Flow, type Registry } from "./flow.js";
5
5
  import { type FlowResult } from "./flow-result.js";
6
- import { type ClientOptions, type FlowConfig, type FlowInfo, type TimeTravelOptions, type SearchFlowsPage, type StartFlowOptions, type StepExecutionId, type StopFlowOptions, type TimerId } from "./options.js";
6
+ import { type ClientOptions, type FlowConfig, type FlowInfo, type TimeTravelOptions, type SearchFlowsPage, type StartFlowOptions, type StepExecutionId, type StopFlowOptions, type TimerId, type WaitForAttributeOptions, type WaitForStepCompletionOptions } from "./options.js";
7
7
  import { Attribute, AttributeMap } from "./persistence.js";
8
8
  import type { RPCResult } from "./rpc.js";
9
9
  import type { Stream, StreamMessage, StreamMessagesPage } from "./stream.js";
@@ -165,36 +165,40 @@ export declare class Client {
165
165
  */
166
166
  skipTimer(flowId: string, stepExecutionId: StepExecutionId, timerId: TimerId): Promise<void>;
167
167
  /**
168
- * Long-polls until one Step execution completes.
168
+ * Waits until one Step execution completes or its total handler budget expires.
169
+ * The server derives a stable Request ID from the Step execution when none is supplied.
170
+ * Transport long polls automatically reattach to the same logical wait.
169
171
  * @param flowId - Non-empty active Flow ID.
170
172
  * @param stepExecutionId - Step type and positive execution number.
171
- * @param timeoutMs - Non-negative server-side wait duration in milliseconds.
172
- * @throws {@link LongPollTimeoutError} when completion is not observed in time.
173
+ * @param options - Optional Request ID override and total handler wait budget.
174
+ * @throws {@link WaitHandlerTimeoutError} when a positive handler budget expires first.
173
175
  */
174
- waitForStepCompletion(flowId: string, stepExecutionId: StepExecutionId, timeoutMs: number): Promise<void>;
176
+ waitForStepCompletion(flowId: string, stepExecutionId: StepExecutionId, options: WaitForStepCompletionOptions): Promise<void>;
175
177
  /**
176
178
  * Waits until a singleton Attribute in the current run satisfies a match.
177
179
  * Returns the current value observed by the successful wait operation.
180
+ * The server derives a stable Request ID from the condition when none is supplied.
181
+ * Transport long polls automatically reattach to the same logical wait.
178
182
  * @typeParam T - Attribute value type.
179
183
  * @param flowId - Non-empty active Flow ID.
180
184
  * @param attribute - Registered singleton Attribute to observe.
181
185
  * @param match - Scalar predicate whose operand has the Attribute value type.
182
- * @param timeoutMs - Non-negative server-side wait duration in milliseconds.
186
+ * @param options - Optional Request ID override and total handler wait budget.
183
187
  * @returns The matched current Attribute value.
184
188
  */
185
- waitForAttributeMatch<T>(flowId: string, attribute: Attribute<T>, match: AttributeMatch<T>, timeoutMs: number): Promise<T>;
189
+ waitForAttributeMatch<T>(flowId: string, attribute: Attribute<T>, match: AttributeMatch<T>, options: WaitForAttributeOptions): Promise<T>;
186
190
  /**
187
191
  * Waits until one AttributeMap instance in the current run satisfies a match.
188
- * Primitive-value restrictions and timeout errors match `waitForAttributeMatch`.
192
+ * Primitive-value restrictions, options, and timeout errors match `waitForAttributeMatch`.
189
193
  * @typeParam T - AttributeMap value type.
190
194
  * @param flowId - Non-empty active Flow ID.
191
195
  * @param attribute - Registered AttributeMap to observe.
192
196
  * @param instance - The map instance to observe. Slash is prohibited because it is a reserved character.
193
197
  * @param match - Scalar predicate whose operand has the AttributeMap value type.
194
- * @param timeoutMs - Non-negative server-side wait duration in milliseconds.
198
+ * @param options - Optional Request ID override and total handler wait budget.
195
199
  * @returns The matched current AttributeMap value.
196
200
  */
197
- waitForAttributeMatch<T>(flowId: string, attribute: AttributeMap<T>, instance: string, match: AttributeMatch<T>, timeoutMs: number): Promise<T>;
201
+ waitForAttributeMatch<T>(flowId: string, attribute: AttributeMap<T>, instance: string, match: AttributeMatch<T>, options: WaitForAttributeOptions): Promise<T>;
198
202
  private waitForAttributeValue;
199
203
  /**
200
204
  * Replaces mutable configuration for an active Flow.
@@ -5,11 +5,11 @@
5
5
  // See the LICENSE file in the repository root.
6
6
  //
7
7
  // SPDX-License-Identifier: LicenseRef-Sustainable-Use-1.0
8
- import { credentials } from "@grpc/grpc-js";
8
+ import { credentials, status } from "@grpc/grpc-js";
9
9
  import { AttributeMatch } from "./attribute-match.js";
10
10
  import { mapAttributeStoreNames, mapAttributeStoreSync } from "./attribute-store-sync.js";
11
11
  import { ActiveStepSearchMode as ProtoActiveStepSearchMode, FlowErrorType as ProtoFlowErrorType, FlowTimeoutPolicy as ProtoFlowTimeoutPolicy, FlowResetStepMethod as ProtoFlowResetStepMethod, FlowResetType as ProtoFlowResetType, FlowServiceClient, FlowStatus as ProtoFlowStatus, IdReusePolicy as ProtoIdReusePolicy, IndexType as ProtoIndexType, ExecuteMethodFailurePolicy, StartFlowRequest, StepDurability as ProtoStepDurability, StepOptions as ProtoStepOptions, FlowTimeoutHandlerOptions as ProtoFlowTimeoutHandlerOptions, StopType as ProtoStopType, WaitForMethodFailurePolicy, } from "./gen/dex.js";
12
- import { FlowErrorType, } from "./errors.js";
12
+ import { ErrorSubStatus, FlowErrorType, LongPollTimeoutError, WaitHandlerTimeoutError, } from "./errors.js";
13
13
  import { registeredFlow, registeredRPC, registeredStream, } from "./flow.js";
14
14
  import { createFlowResultFromProto, } from "./flow-result.js";
15
15
  import { translateServiceError } from "./grpc-status.js";
@@ -359,62 +359,85 @@ export class Client {
359
359
  }, callback));
360
360
  }
361
361
  /**
362
- * Long-polls until one Step execution completes.
362
+ * Waits until one Step execution completes or its total handler budget expires.
363
+ * The server derives a stable Request ID from the Step execution when none is supplied.
364
+ * Transport long polls automatically reattach to the same logical wait.
363
365
  * @param flowId - Non-empty active Flow ID.
364
366
  * @param stepExecutionId - Step type and positive execution number.
365
- * @param timeoutMs - Non-negative server-side wait duration in milliseconds.
366
- * @throws {@link LongPollTimeoutError} when completion is not observed in time.
367
+ * @param options - Optional Request ID override and total handler wait budget.
368
+ * @throws {@link WaitHandlerTimeoutError} when a positive handler budget expires first.
367
369
  */
368
- async waitForStepCompletion(flowId, stepExecutionId, timeoutMs) {
369
- await unary({ operation: "waitForStepCompletion", flowId, requirement: "active" }, (callback) => this.service.waitForStepCompletion({
370
- flowId: requireName(flowId),
371
- stepType: stepExecutionId.stepType,
372
- stepExecutionNumber: String(stepExecutionId.number ?? 1),
373
- waitTimeSeconds: seconds(timeoutMs),
374
- requestId: crypto.randomUUID(),
375
- }, callback));
370
+ async waitForStepCompletion(flowId, stepExecutionId, options) {
371
+ const waitBudget = new ClientWaitBudget(options.maximumWaitTimeMs);
372
+ while (true) {
373
+ try {
374
+ await unary({ operation: "waitForStepCompletion", flowId, requirement: "active" }, (callback) => this.service.waitForStepCompletion({
375
+ flowId: requireName(flowId),
376
+ stepType: stepExecutionId.stepType,
377
+ stepExecutionNumber: String(stepExecutionId.number ?? 1),
378
+ waitTimeSeconds: waitBudget.remainingSeconds("waitForStepCompletion", flowId),
379
+ requestId: options.requestId ?? "",
380
+ }, callback));
381
+ return;
382
+ }
383
+ catch (error) {
384
+ if (!(error instanceof LongPollTimeoutError)) {
385
+ throw error;
386
+ }
387
+ }
388
+ }
376
389
  }
377
390
  /**
378
391
  * Waits until a singleton Attribute or AttributeMap instance satisfies a match.
379
392
  * @param flowId - Non-empty active Flow ID.
380
393
  * @param attribute - Registered Attribute or AttributeMap to observe.
381
- * @param args - Match and timeout, optionally preceded by a map instance.
394
+ * @param args - Match and options, optionally preceded by a map instance.
382
395
  * @returns The matched current value.
383
396
  */
384
397
  async waitForAttributeMatch(flowId, attribute, ...args) {
385
398
  if (attribute instanceof Attribute) {
386
- if (args.length !== 2 || typeof args[1] !== "number") {
399
+ if (args.length !== 2 || !isWaitForAttributeOptions(args[1])) {
387
400
  throw new TypeError("waitForAttributeMatch received invalid Attribute arguments");
388
401
  }
389
402
  return this.waitForAttributeValue(flowId, attribute, undefined, args[0], args[1]);
390
403
  }
391
404
  if (attribute instanceof AttributeMap) {
392
- if (args.length !== 3 || typeof args[0] !== "string" || typeof args[2] !== "number") {
405
+ if (args.length !== 3 || typeof args[0] !== "string" || !isWaitForAttributeOptions(args[2])) {
393
406
  throw new TypeError("waitForAttributeMatch received invalid AttributeMap arguments");
394
407
  }
395
408
  return this.waitForAttributeValue(flowId, attribute, args[0], args[1], args[2]);
396
409
  }
397
410
  throw new TypeError("waitForAttributeMatch received an invalid Attribute definition");
398
411
  }
399
- async waitForAttributeValue(flowId, attribute, instance, match, timeoutMs) {
412
+ async waitForAttributeValue(flowId, attribute, instance, match, options) {
400
413
  if (!(match instanceof AttributeMatch)) {
401
414
  throw new TypeError("waitForAttributeMatch requires an AttributeMatch");
402
415
  }
403
416
  const encoded = match.encode(attribute.codec);
404
- const response = await unary({ operation: "waitForAttributeMatch", flowId, requirement: "active" }, (callback) => this.service.waitForAttribute({
405
- flowId: requireName(flowId),
406
- match: {
407
- key: physicalName(attribute.name, instance),
408
- operator: encoded.operator,
409
- operand: encoded.operand,
410
- },
411
- waitTimeSeconds: seconds(timeoutMs),
412
- requestId: crypto.randomUUID(),
413
- }, callback));
414
- if (response.matchedValue === undefined) {
415
- throw new Error("waitForAttributeMatch response is incomplete");
417
+ const waitBudget = new ClientWaitBudget(options.maximumWaitTimeMs);
418
+ while (true) {
419
+ try {
420
+ const response = await unary({ operation: "waitForAttributeMatch", flowId, requirement: "active" }, (callback) => this.service.waitForAttribute({
421
+ flowId: requireName(flowId),
422
+ match: {
423
+ key: physicalName(attribute.name, instance),
424
+ operator: encoded.operator,
425
+ operand: encoded.operand,
426
+ },
427
+ waitTimeSeconds: waitBudget.remainingSeconds("waitForAttributeMatch", flowId),
428
+ requestId: options.requestId ?? "",
429
+ }, callback));
430
+ if (response.matchedValue === undefined) {
431
+ throw new Error("waitForAttributeMatch response is incomplete");
432
+ }
433
+ return decodeValue(attribute.codec, response.matchedValue);
434
+ }
435
+ catch (error) {
436
+ if (!(error instanceof LongPollTimeoutError)) {
437
+ throw error;
438
+ }
439
+ }
416
440
  }
417
- return decodeValue(attribute.codec, response.matchedValue);
418
441
  }
419
442
  /**
420
443
  * Replaces mutable configuration for an active Flow.
@@ -769,6 +792,29 @@ function seconds(milliseconds) {
769
792
  }
770
793
  return milliseconds / 1_000;
771
794
  }
795
+ function isWaitForAttributeOptions(value) {
796
+ return typeof value === "object" && value !== null;
797
+ }
798
+ class ClientWaitBudget {
799
+ deadlineMs;
800
+ constructor(maximumWaitTimeMs) {
801
+ const maximumWaitSeconds = seconds(maximumWaitTimeMs);
802
+ if (maximumWaitSeconds > 2_147_483_647) {
803
+ throw new RangeError("duration exceeds the int32 seconds range");
804
+ }
805
+ this.deadlineMs = maximumWaitSeconds === 0 ? undefined : performance.now() + maximumWaitSeconds * 1_000;
806
+ }
807
+ remainingSeconds(operation, flowId) {
808
+ if (this.deadlineMs === undefined) {
809
+ return 0;
810
+ }
811
+ const remainingMs = this.deadlineMs - performance.now();
812
+ if (remainingMs <= 0) {
813
+ throw new WaitHandlerTimeoutError(status.DEADLINE_EXCEEDED, ErrorSubStatus.WAIT_HANDLER_TIMEOUT, "wait handler timed out", operation, flowId);
814
+ }
815
+ return Math.ceil(remainingMs / 1_000);
816
+ }
817
+ }
772
818
  function heartbeatSeconds(milliseconds) {
773
819
  const value = seconds(milliseconds);
774
820
  if (value > 2_147_483_647) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export declare const ErrorSubStatus: Readonly<{
16
16
  readonly LONG_POLL_TIMEOUT: "longPollTimeout";
17
17
  /** A pending Channel message ID no longer exists. */
18
18
  readonly CHANNEL_MESSAGE_NOT_FOUND: "channelMessageNotFound";
19
+ /** A durable wait reached its caller-defined total handler budget. */
20
+ readonly WAIT_HANDLER_TIMEOUT: "waitHandlerTimeout";
19
21
  }>;
20
22
  /** Represents a value from {@link ErrorSubStatus}. */
21
23
  export type ErrorSubStatus = (typeof ErrorSubStatus)[keyof typeof ErrorSubStatus];
@@ -88,6 +90,9 @@ export declare class RpcLockConflictError extends DexServiceError {
88
90
  /** Indicates that a retryable long poll ended before its condition was observed. */
89
91
  export declare class LongPollTimeoutError extends DexServiceError {
90
92
  }
93
+ /** Indicates that a durable wait reached its caller-defined total handler budget. */
94
+ export declare class WaitHandlerTimeoutError extends DexServiceError {
95
+ }
91
96
  /** Indicates that a requested Channel message is no longer pending. */
92
97
  export declare class ChannelMessageNotFoundError extends DexServiceError {
93
98
  }
@@ -22,6 +22,8 @@ export const ErrorSubStatus = Object.freeze({
22
22
  LONG_POLL_TIMEOUT: "longPollTimeout",
23
23
  /** A pending Channel message ID no longer exists. */
24
24
  CHANNEL_MESSAGE_NOT_FOUND: "channelMessageNotFound",
25
+ /** A durable wait reached its caller-defined total handler budget. */
26
+ WAIT_HANDLER_TIMEOUT: "waitHandlerTimeout",
25
27
  });
26
28
  /** Provides terminal Flow failure categories returned by Dex. */
27
29
  export const FlowErrorType = Object.freeze({
@@ -103,6 +105,9 @@ export class RpcLockConflictError extends DexServiceError {
103
105
  /** Indicates that a retryable long poll ended before its condition was observed. */
104
106
  export class LongPollTimeoutError extends DexServiceError {
105
107
  }
108
+ /** Indicates that a durable wait reached its caller-defined total handler budget. */
109
+ export class WaitHandlerTimeoutError extends DexServiceError {
110
+ }
106
111
  /** Indicates that a requested Channel message is no longer pending. */
107
112
  export class ChannelMessageNotFoundError extends DexServiceError {
108
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
@@ -134,6 +134,7 @@ export declare enum ErrorSubStatus {
134
134
  ERROR_SUB_STATUS_WORKER_API_ERROR = 4,
135
135
  ERROR_SUB_STATUS_LONG_POLL_TIME_OUT = 5,
136
136
  ERROR_SUB_STATUS_CHANNEL_MESSAGE_NOT_FOUND = 6,
137
+ ERROR_SUB_STATUS_WAIT_HANDLER_TIME_OUT = 7,
137
138
  UNRECOGNIZED = -1
138
139
  }
139
140
  export declare enum CloseDecisionType {
@@ -839,8 +840,12 @@ export interface WaitForStepCompletionRequest {
839
840
  /** Identifies a step execution by type and its per-type execution number. */
840
841
  stepType: string;
841
842
  stepExecutionNumber: string;
843
+ /** Zero waits indefinitely; positive values bound the Temporal Update handler. */
842
844
  waitTimeSeconds: number;
843
- /** Required per-call UUID is SDK-generated and future-overridable; identical retries reuse it. Server forwards run-scoped UpdateID; Continue-as-New resets scope. */
845
+ /**
846
+ * Optional logical idempotency key. Empty derives wait-for-step-completion:{Step execution ID}.
847
+ * Reusing a handler-timed-out logical key advances an increasing -N generation.
848
+ */
844
849
  requestId: string;
845
850
  }
846
851
  export interface WaitForStepCompletionResponse {
@@ -848,9 +853,12 @@ export interface WaitForStepCompletionResponse {
848
853
  export interface WaitForAttributeRequest {
849
854
  flowId: string;
850
855
  match: AttributeMatch | undefined;
851
- /** Zero/omit checks once; positive waits until match or timeout. */
856
+ /** Zero waits indefinitely; positive values bound the Temporal Update handler. */
852
857
  waitTimeSeconds: number;
853
- /** Required per-call UUID is SDK-generated and future-overridable; identical retries reuse it. Server forwards run-scoped UpdateID; Continue-as-New resets scope. */
858
+ /**
859
+ * Optional logical idempotency key. Empty derives wait-for-attribute:{encoded condition}.
860
+ * Reusing a handler-timed-out logical key advances an increasing -N generation.
861
+ */
854
862
  requestId: string;
855
863
  }
856
864
  export interface WaitForAttributeResponse {
@@ -156,6 +156,7 @@ export var ErrorSubStatus;
156
156
  ErrorSubStatus[ErrorSubStatus["ERROR_SUB_STATUS_WORKER_API_ERROR"] = 4] = "ERROR_SUB_STATUS_WORKER_API_ERROR";
157
157
  ErrorSubStatus[ErrorSubStatus["ERROR_SUB_STATUS_LONG_POLL_TIME_OUT"] = 5] = "ERROR_SUB_STATUS_LONG_POLL_TIME_OUT";
158
158
  ErrorSubStatus[ErrorSubStatus["ERROR_SUB_STATUS_CHANNEL_MESSAGE_NOT_FOUND"] = 6] = "ERROR_SUB_STATUS_CHANNEL_MESSAGE_NOT_FOUND";
159
+ ErrorSubStatus[ErrorSubStatus["ERROR_SUB_STATUS_WAIT_HANDLER_TIME_OUT"] = 7] = "ERROR_SUB_STATUS_WAIT_HANDLER_TIME_OUT";
159
160
  ErrorSubStatus[ErrorSubStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
160
161
  })(ErrorSubStatus || (ErrorSubStatus = {}));
161
162
  export var CloseDecisionType;