@superdurable/dex 0.1.11 → 0.1.12
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/src/grpc-status.js +8 -2
- package/dist/src/grpc-status.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/retry-after.d.ts +23 -0
- package/dist/src/retry-after.js +43 -0
- package/dist/src/retry-after.js.map +1 -0
- package/native/windows-x86_64/dex_blob_cache_node.node +0 -0
- package/package.json +1 -1
package/dist/src/grpc-status.js
CHANGED
|
@@ -9,15 +9,21 @@ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
|
|
|
9
9
|
import { Metadata, status } from "@grpc/grpc-js";
|
|
10
10
|
import { ServiceErrorResponse, ErrorSubStatus as ProtoErrorSubStatus, WorkerErrorResponse, } from "./gen/dex.js";
|
|
11
11
|
import { DexServiceError, ErrorSubStatus, FlowAlreadyStartedError, FlowNotActiveError, FlowNotFoundError, LongPollTimeoutError, RpcLockConflictError, WorkerInvocationError, } from "./errors.js";
|
|
12
|
+
import { RetryAfterError } from "./retry-after.js";
|
|
12
13
|
const statusDetailsKey = "grpc-status-details-bin";
|
|
13
14
|
export function workerServiceError(failure) {
|
|
14
|
-
const
|
|
15
|
+
const retryAfterError = failure instanceof RetryAfterError ? failure : undefined;
|
|
16
|
+
const cause = retryAfterError?.cause instanceof Error
|
|
17
|
+
? retryAfterError.cause
|
|
18
|
+
: failure instanceof Error
|
|
19
|
+
? failure
|
|
20
|
+
: new Error(String(failure));
|
|
15
21
|
const detail = cause.message || cause.name;
|
|
16
22
|
const worker = WorkerErrorResponse.encode({
|
|
17
23
|
detail,
|
|
18
24
|
errorType: cause.name,
|
|
19
25
|
stackTrace: cause.stack ?? "",
|
|
20
|
-
retryAfterSeconds: 0,
|
|
26
|
+
retryAfterSeconds: retryAfterError?.afterSeconds ?? 0,
|
|
21
27
|
}).finish();
|
|
22
28
|
const metadata = new Metadata();
|
|
23
29
|
metadata.set(statusDetailsKey, Buffer.from(encodeStatus(status.UNKNOWN, detail, [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc-status.js","sourceRoot":"","sources":["../../src/grpc-status.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,uDAAuD;AACvD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,wDAAwD;AAExD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAyC,MAAM,eAAe,CAAC;AAExF,OAAO,EACL,oBAAoB,EACpB,cAAc,IAAI,mBAAmB,EACrC,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GAEtB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"grpc-status.js","sourceRoot":"","sources":["../../src/grpc-status.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export type { Flow } from "./flow.js";
|
|
|
8
8
|
export type { FlowResult, StepCompletion } from "./flow-result.js";
|
|
9
9
|
export * from "./options.js";
|
|
10
10
|
export * from "./persistence.js";
|
|
11
|
+
export * from "./retry-after.js";
|
|
11
12
|
export { rpc } from "./rpc.js";
|
|
12
13
|
export type { RPC, RPCOptions, RPCResult } from "./rpc.js";
|
|
13
14
|
export * from "./step.js";
|
package/dist/src/index.js
CHANGED
|
@@ -13,6 +13,7 @@ export * from "./errors.js";
|
|
|
13
13
|
export { Registry } from "./flow.js";
|
|
14
14
|
export * from "./options.js";
|
|
15
15
|
export * from "./persistence.js";
|
|
16
|
+
export * from "./retry-after.js";
|
|
16
17
|
export { rpc } from "./rpc.js";
|
|
17
18
|
export * from "./step.js";
|
|
18
19
|
export * from "./subflow.js";
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,uDAAuD;AACvD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,wDAAwD;AAExD,cAAc,iBAAiB,CAAC;AAChC,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,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,cAAc,WAAW,CAAC;AAC1B,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,uDAAuD;AACvD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,wDAAwD;AAExD,cAAc,iBAAiB,CAAC;AAChC,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,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Requests a delay before the next retry while preserving the current failure.
|
|
3
|
+
*
|
|
4
|
+
* Throw the value returned by {@link retryAfter} from `waitFor` or `execute`. Dex
|
|
5
|
+
* schedules the next retry after the requested whole-second delay while keeping
|
|
6
|
+
* the wrapped failure as the reported Worker error.
|
|
7
|
+
*/
|
|
8
|
+
export declare class RetryAfterError extends Error {
|
|
9
|
+
readonly afterSeconds: number;
|
|
10
|
+
/**
|
|
11
|
+
* Creates a retry-after error.
|
|
12
|
+
* @param afterSeconds - Positive whole-second delay before the next attempt.
|
|
13
|
+
* @param cause - Current Step method failure reported to Dex.
|
|
14
|
+
*/
|
|
15
|
+
constructor(afterSeconds: number, cause: Error);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Creates a retry request while preserving the current attempt failure.
|
|
19
|
+
* @param afterSeconds - Positive whole-second delay before the next attempt.
|
|
20
|
+
* @param cause - Current Step method failure reported to Dex.
|
|
21
|
+
* @returns An error to throw from the Step method.
|
|
22
|
+
*/
|
|
23
|
+
export declare function retryAfter(afterSeconds: number, cause: Error): RetryAfterError;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// Copyright (c) 2026 Super Durable, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Super Durable Source 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-Super-Durable-1.0
|
|
8
|
+
/**
|
|
9
|
+
* Requests a delay before the next retry while preserving the current failure.
|
|
10
|
+
*
|
|
11
|
+
* Throw the value returned by {@link retryAfter} from `waitFor` or `execute`. Dex
|
|
12
|
+
* schedules the next retry after the requested whole-second delay while keeping
|
|
13
|
+
* the wrapped failure as the reported Worker error.
|
|
14
|
+
*/
|
|
15
|
+
export class RetryAfterError extends Error {
|
|
16
|
+
afterSeconds;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a retry-after error.
|
|
19
|
+
* @param afterSeconds - Positive whole-second delay before the next attempt.
|
|
20
|
+
* @param cause - Current Step method failure reported to Dex.
|
|
21
|
+
*/
|
|
22
|
+
constructor(afterSeconds, cause) {
|
|
23
|
+
super(cause.message, { cause });
|
|
24
|
+
this.afterSeconds = afterSeconds;
|
|
25
|
+
this.name = "RetryAfterError";
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Creates a retry request while preserving the current attempt failure.
|
|
30
|
+
* @param afterSeconds - Positive whole-second delay before the next attempt.
|
|
31
|
+
* @param cause - Current Step method failure reported to Dex.
|
|
32
|
+
* @returns An error to throw from the Step method.
|
|
33
|
+
*/
|
|
34
|
+
export function retryAfter(afterSeconds, cause) {
|
|
35
|
+
if (!Number.isInteger(afterSeconds) || afterSeconds <= 0) {
|
|
36
|
+
throw new RangeError("afterSeconds must be a positive whole number of seconds");
|
|
37
|
+
}
|
|
38
|
+
if (!(cause instanceof Error)) {
|
|
39
|
+
throw new TypeError("cause must be an Error");
|
|
40
|
+
}
|
|
41
|
+
return new RetryAfterError(afterSeconds, cause);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=retry-after.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry-after.js","sourceRoot":"","sources":["../../src/retry-after.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,EAAE;AACF,uDAAuD;AACvD,mEAAmE;AACnE,+CAA+C;AAC/C,EAAE;AACF,wDAAwD;AAExD;;;;;;GAMG;AACH,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAOtB;IANlB;;;;OAIG;IACH,YACkB,YAAoB,EACpC,KAAY;QAEZ,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAHhB,iBAAY,GAAZ,YAAY,CAAQ;QAIpC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,YAAoB,EAAE,KAAY;IAC3D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,UAAU,CAAC,yDAAyD,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,IAAI,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC"}
|
|
Binary file
|