@bananapus/nana-sdk-core 2.20.0 → 2.21.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/dist/cjs/bendystrawOperations.d.ts +4 -1
- package/dist/cjs/bendystrawOperations.d.ts.map +1 -1
- package/dist/cjs/bendystrawOperations.js +4 -1
- package/dist/cjs/bendystrawOperations.js.map +1 -1
- package/dist/cjs/jbcenter/ensureDeployed.d.ts +5 -0
- package/dist/cjs/jbcenter/ensureDeployed.d.ts.map +1 -1
- package/dist/cjs/jbcenter/ensureDeployed.js +13 -15
- package/dist/cjs/jbcenter/ensureDeployed.js.map +1 -1
- package/dist/cjs/jbcenter/rateLimit.d.ts +80 -0
- package/dist/cjs/jbcenter/rateLimit.d.ts.map +1 -0
- package/dist/cjs/jbcenter/rateLimit.js +158 -0
- package/dist/cjs/jbcenter/rateLimit.js.map +1 -0
- package/dist/cjs/jbcenter.d.ts +47 -5
- package/dist/cjs/jbcenter.d.ts.map +1 -1
- package/dist/cjs/jbcenter.js +57 -8
- package/dist/cjs/jbcenter.js.map +1 -1
- package/dist/cjs/pause.d.ts +6 -0
- package/dist/cjs/pause.d.ts.map +1 -0
- package/dist/cjs/pause.js +25 -0
- package/dist/cjs/pause.js.map +1 -0
- package/dist/cjs/safeService.d.ts +23 -9
- package/dist/cjs/safeService.d.ts.map +1 -1
- package/dist/cjs/safeService.js +77 -37
- package/dist/cjs/safeService.js.map +1 -1
- package/dist/esm/bendystrawOperations.d.ts +4 -1
- package/dist/esm/bendystrawOperations.d.ts.map +1 -1
- package/dist/esm/bendystrawOperations.js +4 -1
- package/dist/esm/bendystrawOperations.js.map +1 -1
- package/dist/esm/jbcenter/ensureDeployed.d.ts +5 -0
- package/dist/esm/jbcenter/ensureDeployed.d.ts.map +1 -1
- package/dist/esm/jbcenter/ensureDeployed.js +13 -15
- package/dist/esm/jbcenter/ensureDeployed.js.map +1 -1
- package/dist/esm/jbcenter/rateLimit.d.ts +80 -0
- package/dist/esm/jbcenter/rateLimit.d.ts.map +1 -0
- package/dist/esm/jbcenter/rateLimit.js +151 -0
- package/dist/esm/jbcenter/rateLimit.js.map +1 -0
- package/dist/esm/jbcenter.d.ts +47 -5
- package/dist/esm/jbcenter.d.ts.map +1 -1
- package/dist/esm/jbcenter.js +51 -7
- package/dist/esm/jbcenter.js.map +1 -1
- package/dist/esm/pause.d.ts +6 -0
- package/dist/esm/pause.d.ts.map +1 -0
- package/dist/esm/pause.js +22 -0
- package/dist/esm/pause.js.map +1 -0
- package/dist/esm/safeService.d.ts +23 -9
- package/dist/esm/safeService.d.ts.map +1 -1
- package/dist/esm/safeService.js +75 -35
- package/dist/esm/safeService.js.map +1 -1
- package/package.json +1 -1
package/dist/cjs/jbcenter.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.JBCenterClient = exports.JBCenterRpcError = exports.JBCenterTimeoutError = exports.JBCenterRequestError = exports.JBCENTER_SPONSORED_CHAIN_IDS = exports.describeCenterRefusal = exports.publishSignedIntent = exports.JBCenterIntentMismatchError = exports.ensureDeployed = exports.EnsureDeployedError = exports.mergeSearch = exports.isFullyDeployed = exports.intentRow = exports.intentPath = exports.deployedChains = exports.intentCalls = exports.decodeDeploymentCall = exports.JBCENTER_RPC_METHODS = exports.MAX_JBCENTER_RESPONSE_BYTES = exports.JBCENTER_PIN_TIMEOUT_MS = exports.JBCENTER_DEPLOYMENT_TIMEOUT_MS = exports.JBCENTER_REQUEST_TIMEOUT_MS = exports.JBCENTER_DEFAULT_URL = void 0;
|
|
3
|
+
exports.JBCenterClient = exports.JBCenterRpcError = exports.JBCenterTimeoutError = exports.JBCenterRequestError = exports.JBCENTER_SPONSORED_CHAIN_IDS = exports.retryAfterOf = exports.isRateLimited = exports.errorChain = exports.createJBCenterLimiter = exports.JBCENTER_MAX_RATE_LIMIT_PAUSE_MS = exports.describeCenterRefusal = exports.publishSignedIntent = exports.JBCenterIntentMismatchError = exports.ensureDeployed = exports.EnsureDeployedError = exports.mergeSearch = exports.isFullyDeployed = exports.intentRow = exports.intentPath = exports.deployedChains = exports.intentCalls = exports.decodeDeploymentCall = exports.JBCENTER_BLOCK_LAG_RETRY_DELAYS_MS = exports.JBCENTER_RPC_METHODS = exports.MAX_JBCENTER_RESPONSE_BYTES = exports.JBCENTER_PIN_TIMEOUT_MS = exports.JBCENTER_DEPLOYMENT_TIMEOUT_MS = exports.JBCENTER_REQUEST_TIMEOUT_MS = exports.JBCENTER_DEFAULT_URL = void 0;
|
|
4
4
|
exports.createJBCenterDeploymentCall = createJBCenterDeploymentCall;
|
|
5
5
|
exports.sponsorableChains = sponsorableChains;
|
|
6
6
|
exports.unsponsoredChains = unsponsoredChains;
|
|
@@ -9,6 +9,7 @@ exports.createJBCenterClient = createJBCenterClient;
|
|
|
9
9
|
exports.createJBCenterRpcProvider = createJBCenterRpcProvider;
|
|
10
10
|
const viem_1 = require("viem");
|
|
11
11
|
const setupCalls_js_1 = require("./jbcenter/setupCalls.js");
|
|
12
|
+
const pause_js_1 = require("./pause.js");
|
|
12
13
|
const untrusted_js_1 = require("./untrusted.js");
|
|
13
14
|
exports.JBCENTER_DEFAULT_URL = "https://juicebox.center";
|
|
14
15
|
exports.JBCENTER_REQUEST_TIMEOUT_MS = 15_000;
|
|
@@ -44,6 +45,25 @@ exports.JBCENTER_RPC_METHODS = [
|
|
|
44
45
|
"eth_syncing",
|
|
45
46
|
"net_version",
|
|
46
47
|
];
|
|
48
|
+
/**
|
|
49
|
+
* The waits, in milliseconds, before each retry of a read that a node behind
|
|
50
|
+
* the head could not answer: JSON-RPC -32001. JB Center load balances reads
|
|
51
|
+
* across nodes that import blocks at slightly different times, so a read
|
|
52
|
+
* pinned to a block one node has imported can land on a sibling that has not,
|
|
53
|
+
* which answers -32001 ("Requested resource not found." in viem). Waiting out
|
|
54
|
+
* the lag is the only correct answer: reading `latest` instead would read
|
|
55
|
+
* state older than the block the read pins. Base mines every two seconds, so
|
|
56
|
+
* these waits cover a few blocks of drift.
|
|
57
|
+
*/
|
|
58
|
+
exports.JBCENTER_BLOCK_LAG_RETRY_DELAYS_MS = [
|
|
59
|
+
250, 500, 1_000, 2_000, 2_000,
|
|
60
|
+
];
|
|
61
|
+
/** A read pinned past the head of the node that answered it: JSON-RPC -32001. */
|
|
62
|
+
function isBehindHead(error) {
|
|
63
|
+
return (typeof error === "object" &&
|
|
64
|
+
error !== null &&
|
|
65
|
+
error.code === -32001);
|
|
66
|
+
}
|
|
47
67
|
var decode_js_1 = require("./jbcenter/decode.js");
|
|
48
68
|
Object.defineProperty(exports, "decodeDeploymentCall", { enumerable: true, get: function () { return decode_js_1.decodeDeploymentCall; } });
|
|
49
69
|
var setupCalls_js_2 = require("./jbcenter/setupCalls.js");
|
|
@@ -62,6 +82,12 @@ Object.defineProperty(exports, "JBCenterIntentMismatchError", { enumerable: true
|
|
|
62
82
|
Object.defineProperty(exports, "publishSignedIntent", { enumerable: true, get: function () { return publish_js_1.publishSignedIntent; } });
|
|
63
83
|
var refusal_js_1 = require("./jbcenter/refusal.js");
|
|
64
84
|
Object.defineProperty(exports, "describeCenterRefusal", { enumerable: true, get: function () { return refusal_js_1.describeCenterRefusal; } });
|
|
85
|
+
var rateLimit_js_1 = require("./jbcenter/rateLimit.js");
|
|
86
|
+
Object.defineProperty(exports, "JBCENTER_MAX_RATE_LIMIT_PAUSE_MS", { enumerable: true, get: function () { return rateLimit_js_1.JBCENTER_MAX_RATE_LIMIT_PAUSE_MS; } });
|
|
87
|
+
Object.defineProperty(exports, "createJBCenterLimiter", { enumerable: true, get: function () { return rateLimit_js_1.createJBCenterLimiter; } });
|
|
88
|
+
Object.defineProperty(exports, "errorChain", { enumerable: true, get: function () { return rateLimit_js_1.errorChain; } });
|
|
89
|
+
Object.defineProperty(exports, "isRateLimited", { enumerable: true, get: function () { return rateLimit_js_1.isRateLimited; } });
|
|
90
|
+
Object.defineProperty(exports, "retryAfterOf", { enumerable: true, get: function () { return rateLimit_js_1.retryAfterOf; } });
|
|
65
91
|
/** Freeze a typed viem contract request into the call signed by JB Center. */
|
|
66
92
|
function createJBCenterDeploymentCall(request) {
|
|
67
93
|
const { chainId, address, ...parameters } = request;
|
|
@@ -489,19 +515,42 @@ class JBCenterClient {
|
|
|
489
515
|
}
|
|
490
516
|
return body.result;
|
|
491
517
|
}
|
|
492
|
-
/**
|
|
493
|
-
|
|
518
|
+
/**
|
|
519
|
+
* Returns an EIP-1193-shaped provider suitable for viem's `custom`. It asks
|
|
520
|
+
* again for a read a node behind the head could not answer, as
|
|
521
|
+
* {@link JBCenterRpcProviderOptions} describes.
|
|
522
|
+
*/
|
|
523
|
+
rpcProvider(chainId, options = {}) {
|
|
494
524
|
if (!Number.isSafeInteger(chainId) || chainId <= 0) {
|
|
495
525
|
throw new TypeError("chainId must be a positive safe integer");
|
|
496
526
|
}
|
|
527
|
+
const given = options.blockLagRetryDelaysMs ?? exports.JBCENTER_BLOCK_LAG_RETRY_DELAYS_MS;
|
|
528
|
+
if (!Array.isArray(given) ||
|
|
529
|
+
!given.every((ms) => Number.isFinite(ms) && ms >= 0)) {
|
|
530
|
+
throw new TypeError("blockLagRetryDelaysMs must be a list of finite waits of 0 ms or more");
|
|
531
|
+
}
|
|
532
|
+
// The provider keeps its own copy, so the waits it checked are the waits it uses.
|
|
533
|
+
const delays = [...given];
|
|
534
|
+
const { limiter } = options;
|
|
497
535
|
return {
|
|
498
|
-
request: async (request,
|
|
536
|
+
request: async (request, requestOptions) => {
|
|
499
537
|
if (!exports.JBCENTER_RPC_METHODS.includes(request.method)) {
|
|
500
538
|
throw new TypeError("JB Center RPC method is not supported");
|
|
501
539
|
}
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
540
|
+
const signal = requestOptions?.signal;
|
|
541
|
+
const ask = () => this.rpc(chainId, request, requestOptions);
|
|
542
|
+
for (let attempt = 0;; attempt += 1) {
|
|
543
|
+
// A request whose signal has aborted is not sent.
|
|
544
|
+
signal?.throwIfAborted();
|
|
545
|
+
try {
|
|
546
|
+
return await (limiter ? limiter.run(ask, { signal }) : ask());
|
|
547
|
+
}
|
|
548
|
+
catch (error) {
|
|
549
|
+
if (attempt >= delays.length || !isBehindHead(error))
|
|
550
|
+
throw error;
|
|
551
|
+
await (0, pause_js_1.pause)(delays[attempt], signal, () => signal?.reason);
|
|
552
|
+
}
|
|
553
|
+
}
|
|
505
554
|
},
|
|
506
555
|
};
|
|
507
556
|
}
|
|
@@ -571,6 +620,6 @@ function createJBCenterClient(options = {}) {
|
|
|
571
620
|
return new JBCenterClient(options);
|
|
572
621
|
}
|
|
573
622
|
function createJBCenterRpcProvider(chainId, options = {}) {
|
|
574
|
-
return new JBCenterClient(options).rpcProvider(chainId);
|
|
623
|
+
return new JBCenterClient(options).rpcProvider(chainId, options);
|
|
575
624
|
}
|
|
576
625
|
//# sourceMappingURL=jbcenter.js.map
|
package/dist/cjs/jbcenter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jbcenter.js","sourceRoot":"","sources":["../../src/jbcenter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jbcenter.js","sourceRoot":"","sources":["../../src/jbcenter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Waits `ms`, at most {@link MAX_TIMER_MS}, or rejects with `aborted()` once
|
|
3
|
+
* `signal` aborts: at once when it already has.
|
|
4
|
+
*/
|
|
5
|
+
export declare function pause(ms: number, signal: AbortSignal | undefined, aborted: () => unknown): Promise<void>;
|
|
6
|
+
//# sourceMappingURL=pause.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pause.d.ts","sourceRoot":"","sources":["../../src/pause.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,KAAK,CACnB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,MAAM,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC,CAgBf"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pause = pause;
|
|
4
|
+
/** The longest delay setTimeout holds (about 24.8 days): a longer one fires at once. */
|
|
5
|
+
const MAX_TIMER_MS = 2_147_483_647;
|
|
6
|
+
/**
|
|
7
|
+
* Waits `ms`, at most {@link MAX_TIMER_MS}, or rejects with `aborted()` once
|
|
8
|
+
* `signal` aborts: at once when it already has.
|
|
9
|
+
*/
|
|
10
|
+
function pause(ms, signal, aborted) {
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
function onAbort() {
|
|
13
|
+
clearTimeout(timer);
|
|
14
|
+
reject(aborted());
|
|
15
|
+
}
|
|
16
|
+
const timer = setTimeout(() => {
|
|
17
|
+
signal?.removeEventListener("abort", onAbort);
|
|
18
|
+
resolve();
|
|
19
|
+
}, Math.min(ms, MAX_TIMER_MS));
|
|
20
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
21
|
+
if (signal?.aborted)
|
|
22
|
+
onAbort();
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=pause.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pause.js","sourceRoot":"","sources":["../../src/pause.ts"],"names":[],"mappings":";;AAOA,sBAoBC;AA3BD,wFAAwF;AACxF,MAAM,YAAY,GAAG,aAAa,CAAC;AAEnC;;;GAGG;AACH,SAAgB,KAAK,CACnB,EAAU,EACV,MAA+B,EAC/B,OAAsB;IAEtB,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,SAAS,OAAO;YACd,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACpB,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CACtB,GAAG,EAAE;YACH,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;QACZ,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAC3B,CAAC;QACF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,IAAI,MAAM,EAAE,OAAO;YAAE,OAAO,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -27,6 +27,12 @@ export declare function safeQueueUrl(chainId: number, safe: Address): string | n
|
|
|
27
27
|
* a safeTxHash unless the owner executes at once.
|
|
28
28
|
*/
|
|
29
29
|
export declare function isSafeWalletPeer(url: string | undefined): boolean;
|
|
30
|
+
/** The chain's client, as far as the wait reads it. */
|
|
31
|
+
type SafeExecutionClient = {
|
|
32
|
+
getTransaction: (args: {
|
|
33
|
+
hash: Hex;
|
|
34
|
+
}) => Promise<unknown>;
|
|
35
|
+
};
|
|
30
36
|
/**
|
|
31
37
|
* Resolve a Safe proposal identifier to its actual onchain execution hash.
|
|
32
38
|
* A safeTxHash is not a transaction hash and must never be receipt-polled.
|
|
@@ -38,20 +44,27 @@ export declare function isSafeWalletPeer(url: string | undefined): boolean;
|
|
|
38
44
|
*
|
|
39
45
|
* With the chain's `client`, a hash the chain already knows as a transaction
|
|
40
46
|
* is returned as the execution: over WalletConnect, Safe{Wallet} answers with
|
|
41
|
-
* the execution's own hash when the owner executes at once.
|
|
47
|
+
* the execution's own hash when the owner executes at once. On a chain with a
|
|
48
|
+
* service, a failed chain check leaves the decision to the service.
|
|
49
|
+
*
|
|
50
|
+
* On a chain without a service only the `client` answers. The wait throws that
|
|
51
|
+
* Safe does not host one after twelve answers (about a minute at the default
|
|
52
|
+
* interval) that the chain has no such transaction, which is viem's
|
|
53
|
+
* `TransactionNotFoundError`. A look the chain cannot answer, such as an RPC
|
|
54
|
+
* failure or a timeout, neither counts nor starts the count over, because the
|
|
55
|
+
* hash may be a real execution. The wait keeps looking, so without a `signal`
|
|
56
|
+
* it lasts as long as the node cannot answer.
|
|
42
57
|
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
* the
|
|
58
|
+
* `signal` ends the wait at once, even while a chain look is in flight: the
|
|
59
|
+
* look is left to settle and its answer is ignored. Each poll is one service
|
|
60
|
+
* request with the local API key and `signal`, which also ends a request in
|
|
61
|
+
* flight. After a 429 the next poll waits the longer of the polling interval
|
|
62
|
+
* and the wait its Retry-After asks for.
|
|
46
63
|
*/
|
|
47
64
|
export declare function waitForSafeExecutionHash(chainId: number, safeTxHash: Hex, options?: {
|
|
48
65
|
pollingIntervalMs?: number;
|
|
49
66
|
signal?: AbortSignal;
|
|
50
|
-
client?:
|
|
51
|
-
getTransaction: (args: {
|
|
52
|
-
hash: Hex;
|
|
53
|
-
}) => Promise<unknown>;
|
|
54
|
-
};
|
|
67
|
+
client?: SafeExecutionClient;
|
|
55
68
|
}): Promise<Hex>;
|
|
56
69
|
/** The EIP-712 types a Safe transaction is signed and hashed with. */
|
|
57
70
|
export declare const SAFE_TX_TYPES: {
|
|
@@ -428,4 +441,5 @@ export declare function parseSafeCreationPayload(payload: unknown): SafeCreation
|
|
|
428
441
|
* not {@link parseSafeCreationPayload strictly valid}.
|
|
429
442
|
*/
|
|
430
443
|
export declare function fetchSafeCreation(safe: Address, sourceChainId: number, options?: SafeServiceOptions): Promise<SafeCreation | null>;
|
|
444
|
+
export {};
|
|
431
445
|
//# sourceMappingURL=safeService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safeService.d.ts","sourceRoot":"","sources":["../../src/safeService.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,OAAO,EACZ,KAAK,GAAG,EACT,MAAM,MAAM,CAAC;AACd,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"safeService.d.ts","sourceRoot":"","sources":["../../src/safeService.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/safeService.js
CHANGED
|
@@ -33,6 +33,7 @@ exports.parseSafeCreationPayload = parseSafeCreationPayload;
|
|
|
33
33
|
exports.fetchSafeCreation = fetchSafeCreation;
|
|
34
34
|
const viem_1 = require("viem");
|
|
35
35
|
const safe_js_1 = require("./safe.js");
|
|
36
|
+
const pause_js_1 = require("./pause.js");
|
|
36
37
|
const untrusted_js_1 = require("./untrusted.js");
|
|
37
38
|
/**
|
|
38
39
|
* Safe's per-chain app URL prefix. Wider than {@link SAFE_SERVICE_PREFIX}:
|
|
@@ -98,11 +99,15 @@ function safeQueueUrl(chainId, safe) {
|
|
|
98
99
|
: null;
|
|
99
100
|
}
|
|
100
101
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
102
|
+
* Not-found answers before the wait gives up. With a service they are its 404s
|
|
103
|
+
* since the last record it returned for the proposal, even a pending one; its
|
|
104
|
+
* other failures neither count nor start over. Without one they are the
|
|
105
|
+
* chain's own answers that it has no such transaction, a running total: nothing
|
|
106
|
+
* starts it over, and a look the chain could not answer does not count. The
|
|
107
|
+
* service can lag a just-created proposal briefly, but a sustained 404 means it
|
|
108
|
+
* will never report this proposal (wrong network or an unhosted chain that
|
|
109
|
+
* slipped through) — polling forever just strands the flow at "pending". At the
|
|
110
|
+
* default 5s interval this is about a minute of patience.
|
|
106
111
|
*/
|
|
107
112
|
const SAFE_EXECUTION_NOT_FOUND_LIMIT = 12;
|
|
108
113
|
/**
|
|
@@ -121,28 +126,49 @@ function isSafeWalletPeer(url) {
|
|
|
121
126
|
function noHostedService(chainId) {
|
|
122
127
|
return new Error(`Safe does not host a transaction service on chain ${chainId}, so this proposal cannot be tracked here. Execute it from the Safe app; the action takes effect once it is executed there.`);
|
|
123
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* What the chain says of `hash`: a transaction (`found`), none (`none`) or
|
|
131
|
+
* nothing (`unanswered`). Only viem's `TransactionNotFoundError` is the chain
|
|
132
|
+
* saying it has none. Any other failure (a timeout, an HTTP error, a node still
|
|
133
|
+
* indexing) says nothing about the hash. The error is matched by its name, as
|
|
134
|
+
* `isDefiniteWalletRejection` (in /review) matches viem's wallet rejection: the
|
|
135
|
+
* app's viem and the SDK's can be different installs, whose classes never
|
|
136
|
+
* match under `instanceof`. viem throws it from `getTransaction` itself, so
|
|
137
|
+
* there is no cause chain to read. Only the promise's rejection is read: a
|
|
138
|
+
* client that throws before it returns one, or is not a client, fails the wait
|
|
139
|
+
* at once instead of reading as a look the chain could not answer.
|
|
140
|
+
*/
|
|
141
|
+
async function lookUpTransaction(client, hash) {
|
|
142
|
+
return client.getTransaction({ hash }).then(() => "found", (error) => error?.name ===
|
|
143
|
+
"TransactionNotFoundError"
|
|
144
|
+
? "none"
|
|
145
|
+
: "unanswered");
|
|
146
|
+
}
|
|
124
147
|
/** A service answer the wait cannot get past: it ends the wait, unlike a network error. */
|
|
125
148
|
class SafeExecutionRecordError extends Error {
|
|
126
149
|
}
|
|
127
|
-
/**
|
|
128
|
-
|
|
150
|
+
/** What a wait ends with when its signal aborts. */
|
|
151
|
+
function waitAborted() {
|
|
152
|
+
return new DOMException("Safe execution wait aborted", "AbortError");
|
|
153
|
+
}
|
|
129
154
|
/**
|
|
130
|
-
*
|
|
131
|
-
* `
|
|
155
|
+
* `work`, cut short when `signal` aborts: the promise then rejects with
|
|
156
|
+
* `aborted()`, at once when `signal` already has. `work` is left to settle on
|
|
157
|
+
* its own and its answer is ignored. The abort listener goes when it does.
|
|
132
158
|
*/
|
|
133
|
-
function
|
|
159
|
+
function abortable(work, signal, aborted) {
|
|
160
|
+
if (!signal)
|
|
161
|
+
return work;
|
|
134
162
|
return new Promise((resolve, reject) => {
|
|
135
163
|
function onAbort() {
|
|
136
|
-
clearTimeout(timer);
|
|
137
164
|
reject(aborted());
|
|
138
165
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
resolve();
|
|
142
|
-
}, Math.min(ms, MAX_TIMER_MS));
|
|
143
|
-
signal?.addEventListener("abort", onAbort, { once: true });
|
|
144
|
-
if (signal?.aborted)
|
|
166
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
167
|
+
if (signal.aborted)
|
|
145
168
|
onAbort();
|
|
169
|
+
work
|
|
170
|
+
.finally(() => signal.removeEventListener("abort", onAbort))
|
|
171
|
+
.then(resolve, reject);
|
|
146
172
|
});
|
|
147
173
|
}
|
|
148
174
|
/**
|
|
@@ -156,11 +182,22 @@ function pause(ms, signal, aborted) {
|
|
|
156
182
|
*
|
|
157
183
|
* With the chain's `client`, a hash the chain already knows as a transaction
|
|
158
184
|
* is returned as the execution: over WalletConnect, Safe{Wallet} answers with
|
|
159
|
-
* the execution's own hash when the owner executes at once.
|
|
185
|
+
* the execution's own hash when the owner executes at once. On a chain with a
|
|
186
|
+
* service, a failed chain check leaves the decision to the service.
|
|
160
187
|
*
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
* the
|
|
188
|
+
* On a chain without a service only the `client` answers. The wait throws that
|
|
189
|
+
* Safe does not host one after twelve answers (about a minute at the default
|
|
190
|
+
* interval) that the chain has no such transaction, which is viem's
|
|
191
|
+
* `TransactionNotFoundError`. A look the chain cannot answer, such as an RPC
|
|
192
|
+
* failure or a timeout, neither counts nor starts the count over, because the
|
|
193
|
+
* hash may be a real execution. The wait keeps looking, so without a `signal`
|
|
194
|
+
* it lasts as long as the node cannot answer.
|
|
195
|
+
*
|
|
196
|
+
* `signal` ends the wait at once, even while a chain look is in flight: the
|
|
197
|
+
* look is left to settle and its answer is ignored. Each poll is one service
|
|
198
|
+
* request with the local API key and `signal`, which also ends a request in
|
|
199
|
+
* flight. After a 429 the next poll waits the longer of the polling interval
|
|
200
|
+
* and the wait its Retry-After asks for.
|
|
164
201
|
*/
|
|
165
202
|
async function waitForSafeExecutionHash(chainId, safeTxHash, options = {}) {
|
|
166
203
|
if (!(0, untrusted_js_1.isBytes32)(safeTxHash)) {
|
|
@@ -172,27 +209,30 @@ async function waitForSafeExecutionHash(chainId, safeTxHash, options = {}) {
|
|
|
172
209
|
throw noHostedService(chainId);
|
|
173
210
|
const interval = options.pollingIntervalMs ?? 5_000;
|
|
174
211
|
const endpoint = base && `${base}/api/v1/multisig-transactions/${safeTxHash}/`;
|
|
175
|
-
let
|
|
212
|
+
let notFoundAnswers = 0;
|
|
176
213
|
for (;;) {
|
|
177
|
-
if (options.signal?.aborted)
|
|
178
|
-
throw
|
|
179
|
-
}
|
|
214
|
+
if (options.signal?.aborted)
|
|
215
|
+
throw waitAborted();
|
|
180
216
|
let wait = interval;
|
|
181
|
-
|
|
182
|
-
(await client
|
|
217
|
+
const look = client &&
|
|
218
|
+
(await abortable(lookUpTransaction(client, safeTxHash), options.signal, waitAborted));
|
|
219
|
+
if (look === "found")
|
|
183
220
|
return safeTxHash;
|
|
184
|
-
}
|
|
185
221
|
if (!endpoint) {
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
222
|
+
// Without a service only the chain answers. A look it could not answer
|
|
223
|
+
// says nothing about the proposal, so it neither counts nor starts over.
|
|
224
|
+
if (look === "none") {
|
|
225
|
+
notFoundAnswers += 1;
|
|
226
|
+
if (notFoundAnswers >= SAFE_EXECUTION_NOT_FOUND_LIMIT) {
|
|
227
|
+
throw noHostedService(chainId);
|
|
228
|
+
}
|
|
189
229
|
}
|
|
190
230
|
}
|
|
191
231
|
else {
|
|
192
232
|
try {
|
|
193
233
|
const response = await serviceFetch(endpoint, { headers: serviceHeaders() }, { signal: options.signal, retryRateLimited: false });
|
|
194
234
|
if (response.ok) {
|
|
195
|
-
|
|
235
|
+
notFoundAnswers = 0;
|
|
196
236
|
const transaction = (await response.json());
|
|
197
237
|
if (transaction.isExecuted && transaction.isSuccessful === false) {
|
|
198
238
|
throw new SafeExecutionRecordError("Safe executed the proposal, but the onchain transaction failed.");
|
|
@@ -205,8 +245,8 @@ async function waitForSafeExecutionHash(chainId, safeTxHash, options = {}) {
|
|
|
205
245
|
}
|
|
206
246
|
}
|
|
207
247
|
else if (response.status === 404) {
|
|
208
|
-
|
|
209
|
-
if (
|
|
248
|
+
notFoundAnswers += 1;
|
|
249
|
+
if (notFoundAnswers >= SAFE_EXECUTION_NOT_FOUND_LIMIT) {
|
|
210
250
|
throw new SafeExecutionRecordError("Safe’s transaction service has no record of this proposal. Tracking cannot continue here — check the proposal in the Safe app; if it exists there, it will still take effect once executed.");
|
|
211
251
|
}
|
|
212
252
|
}
|
|
@@ -224,7 +264,7 @@ async function waitForSafeExecutionHash(chainId, safeTxHash, options = {}) {
|
|
|
224
264
|
// proposal pending instead of inviting a duplicate submission.
|
|
225
265
|
}
|
|
226
266
|
}
|
|
227
|
-
await pause(wait, options.signal,
|
|
267
|
+
await (0, pause_js_1.pause)(wait, options.signal, waitAborted);
|
|
228
268
|
}
|
|
229
269
|
}
|
|
230
270
|
// ── Safe transactions ────────────────────────────────────────────────────────
|
|
@@ -788,7 +828,7 @@ async function serviceFetch(url, init, { fetch: custom, signal, retryRateLimited
|
|
|
788
828
|
// An unreadable Retry-After (null) is handed back as well.
|
|
789
829
|
if (wait === null || wait > exports.SAFE_SERVICE_MAX_RETRY_WAIT_MS)
|
|
790
830
|
return response;
|
|
791
|
-
await pause(wait, signal, () => signal.reason);
|
|
831
|
+
await (0, pause_js_1.pause)(wait, signal, () => signal.reason);
|
|
792
832
|
}
|
|
793
833
|
}
|
|
794
834
|
async function serviceDetail(response) {
|
|
@@ -843,7 +883,7 @@ async function listPendingSafeTransactions(chainId, safe, currentNonce, options
|
|
|
843
883
|
if (!response.ok && response.status !== 429) {
|
|
844
884
|
// A failed page is retried once before the listing gives up. A 429 has
|
|
845
885
|
// already had the retries serviceFetch allows.
|
|
846
|
-
await pause(500, options.signal, () => options.signal.reason);
|
|
886
|
+
await (0, pause_js_1.pause)(500, options.signal, () => options.signal.reason);
|
|
847
887
|
response = await serviceFetch(url, { headers: serviceHeaders() }, options);
|
|
848
888
|
}
|
|
849
889
|
if (!response.ok) {
|