@bananapus/nana-sdk-core 2.20.0 → 2.22.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.
Files changed (57) hide show
  1. package/dist/cjs/bendystrawOperations.d.ts +4 -1
  2. package/dist/cjs/bendystrawOperations.d.ts.map +1 -1
  3. package/dist/cjs/bendystrawOperations.js +4 -1
  4. package/dist/cjs/bendystrawOperations.js.map +1 -1
  5. package/dist/cjs/jbcenter/ensureDeployed.d.ts +5 -0
  6. package/dist/cjs/jbcenter/ensureDeployed.d.ts.map +1 -1
  7. package/dist/cjs/jbcenter/ensureDeployed.js +13 -15
  8. package/dist/cjs/jbcenter/ensureDeployed.js.map +1 -1
  9. package/dist/cjs/jbcenter/rateLimit.d.ts +80 -0
  10. package/dist/cjs/jbcenter/rateLimit.d.ts.map +1 -0
  11. package/dist/cjs/jbcenter/rateLimit.js +158 -0
  12. package/dist/cjs/jbcenter/rateLimit.js.map +1 -0
  13. package/dist/cjs/jbcenter.d.ts +47 -5
  14. package/dist/cjs/jbcenter.d.ts.map +1 -1
  15. package/dist/cjs/jbcenter.js +57 -8
  16. package/dist/cjs/jbcenter.js.map +1 -1
  17. package/dist/cjs/pause.d.ts +6 -0
  18. package/dist/cjs/pause.d.ts.map +1 -0
  19. package/dist/cjs/pause.js +25 -0
  20. package/dist/cjs/pause.js.map +1 -0
  21. package/dist/cjs/review/relayr.d.ts +200 -0
  22. package/dist/cjs/review/relayr.d.ts.map +1 -1
  23. package/dist/cjs/review/relayr.js +260 -5
  24. package/dist/cjs/review/relayr.js.map +1 -1
  25. package/dist/cjs/safeService.d.ts +23 -9
  26. package/dist/cjs/safeService.d.ts.map +1 -1
  27. package/dist/cjs/safeService.js +77 -37
  28. package/dist/cjs/safeService.js.map +1 -1
  29. package/dist/esm/bendystrawOperations.d.ts +4 -1
  30. package/dist/esm/bendystrawOperations.d.ts.map +1 -1
  31. package/dist/esm/bendystrawOperations.js +4 -1
  32. package/dist/esm/bendystrawOperations.js.map +1 -1
  33. package/dist/esm/jbcenter/ensureDeployed.d.ts +5 -0
  34. package/dist/esm/jbcenter/ensureDeployed.d.ts.map +1 -1
  35. package/dist/esm/jbcenter/ensureDeployed.js +13 -15
  36. package/dist/esm/jbcenter/ensureDeployed.js.map +1 -1
  37. package/dist/esm/jbcenter/rateLimit.d.ts +80 -0
  38. package/dist/esm/jbcenter/rateLimit.d.ts.map +1 -0
  39. package/dist/esm/jbcenter/rateLimit.js +151 -0
  40. package/dist/esm/jbcenter/rateLimit.js.map +1 -0
  41. package/dist/esm/jbcenter.d.ts +47 -5
  42. package/dist/esm/jbcenter.d.ts.map +1 -1
  43. package/dist/esm/jbcenter.js +51 -7
  44. package/dist/esm/jbcenter.js.map +1 -1
  45. package/dist/esm/pause.d.ts +6 -0
  46. package/dist/esm/pause.d.ts.map +1 -0
  47. package/dist/esm/pause.js +22 -0
  48. package/dist/esm/pause.js.map +1 -0
  49. package/dist/esm/review/relayr.d.ts +200 -0
  50. package/dist/esm/review/relayr.d.ts.map +1 -1
  51. package/dist/esm/review/relayr.js +253 -6
  52. package/dist/esm/review/relayr.js.map +1 -1
  53. package/dist/esm/safeService.d.ts +23 -9
  54. package/dist/esm/safeService.d.ts.map +1 -1
  55. package/dist/esm/safeService.js +75 -35
  56. package/dist/esm/safeService.js.map +1 -1
  57. package/package.json +1 -1
@@ -23,6 +23,14 @@ exports.requireRelayrPaymentRetry = requireRelayrPaymentRetry;
23
23
  exports.requireRelayrBundleUnpaid = requireRelayrBundleUnpaid;
24
24
  exports.verifyRelayrDestination = verifyRelayrDestination;
25
25
  exports.verifyRelayrDestinations = verifyRelayrDestinations;
26
+ exports.atCanonicalFinalizedBlock = atCanonicalFinalizedBlock;
27
+ exports.relayrSignedRequests = relayrSignedRequests;
28
+ exports.relayrRequestStates = relayrRequestStates;
29
+ exports.relayrRequestsVerdict = relayrRequestsVerdict;
30
+ exports.relayrRequestsDead = relayrRequestsDead;
31
+ exports.relayrDeadlinePassed = relayrDeadlinePassed;
32
+ exports.isRelayrDiscardReason = isRelayrDiscardReason;
33
+ exports.relayrSessionOutcome = relayrSessionOutcome;
26
34
  const viem_1 = require("viem");
27
35
  const juicebox_js_1 = require("../generated/juicebox.js");
28
36
  const untrusted_js_1 = require("../untrusted.js");
@@ -150,15 +158,19 @@ class RelayrPaymentRetryError extends Error {
150
158
  }
151
159
  }
152
160
  exports.RelayrPaymentRetryError = RelayrPaymentRetryError;
153
- /** `error` with `cause` set like a native error cause, but on ES2021 and never enumerable: an RPC error's URL can carry a key. */
154
- function withCause(error, cause) {
155
- Object.defineProperty(error, "cause", {
156
- value: cause,
161
+ /** `target` with `key` set to `value`, writable but never enumerable: an RPC error's URL can carry a key, and no JSON or log may show it. */
162
+ function withHidden(target, key, value) {
163
+ Object.defineProperty(target, key, {
164
+ value,
157
165
  writable: true,
158
166
  enumerable: false,
159
167
  configurable: true,
160
168
  });
161
- return error;
169
+ return target;
170
+ }
171
+ /** `error` with `cause` set like a native error cause, but on ES2021 and never enumerable: an RPC error's URL can carry a key. */
172
+ function withCause(error, cause) {
173
+ return withHidden(error, "cause", cause);
162
174
  }
163
175
  function errorWithCause(message, cause) {
164
176
  return withCause(new Error(message), cause);
@@ -988,4 +1000,247 @@ async function verifyRelayrDestinations(clientFor, { bindings, records, account,
988
1000
  }
989
1001
  return verified;
990
1002
  }
1003
+ /**
1004
+ * `read` at the chain's finalized block, with that block's timestamp, once
1005
+ * the block at its number still has the same hash after the read. Null while
1006
+ * any of it cannot be read: a node without the finalized tag, an RPC error, a
1007
+ * malformed block, or a block that is no longer canonical.
1008
+ */
1009
+ async function atCanonicalFinalizedBlock(client, read) {
1010
+ try {
1011
+ const { number, hash, timestamp } = await client.getBlock({
1012
+ blockTag: "finalized",
1013
+ });
1014
+ if (typeof number !== "bigint" ||
1015
+ !(0, untrusted_js_1.isBytes32)(hash) ||
1016
+ typeof timestamp !== "bigint") {
1017
+ return null;
1018
+ }
1019
+ const value = await read(number);
1020
+ const canonical = await client.getBlock({ blockNumber: number });
1021
+ return canonical.hash === hash ? { value, timestamp } : null;
1022
+ }
1023
+ catch {
1024
+ return null;
1025
+ }
1026
+ }
1027
+ /**
1028
+ * The nonce the canonical forwarder on `chainId` expects next from `signer`
1029
+ * at the chain's finalized block, still canonical, with that block's
1030
+ * timestamp. Null while that cannot be read.
1031
+ */
1032
+ async function finalizedForwarderNonce(clientFor, chainId, signer) {
1033
+ const forwarder = forwarderOn(chainId);
1034
+ if (!forwarder || !isAddressLike(signer))
1035
+ return null;
1036
+ let client;
1037
+ try {
1038
+ client = clientFor(chainId);
1039
+ }
1040
+ catch {
1041
+ return null;
1042
+ }
1043
+ if (!client)
1044
+ return null;
1045
+ const reader = client;
1046
+ const finalized = await atCanonicalFinalizedBlock(reader, (blockNumber) => reader.readContract({
1047
+ address: forwarder,
1048
+ abi: juicebox_js_1.erc2771ForwarderAbi,
1049
+ functionName: "nonces",
1050
+ args: [signer],
1051
+ blockNumber,
1052
+ }));
1053
+ const nonce = finalized && (0, untrusted_js_1.uint256)(finalized.value);
1054
+ return finalized && nonce !== null
1055
+ ? { nonce, timestamp: finalized.timestamp }
1056
+ : null;
1057
+ }
1058
+ /**
1059
+ * The requests a session published, each read from its entry (an `execute`
1060
+ * on its chain's canonical forwarder, as {@link relayrForwardRequest} reads
1061
+ * it), with the nonce it was signed with when `nonces` has one for every
1062
+ * entry. Null when there are none, or one is not such a request: requests
1063
+ * that can't be read can't be classified, so they never count as dead.
1064
+ */
1065
+ function relayrSignedRequests(entries, nonces) {
1066
+ const published = Array.isArray(entries) ? entries : [];
1067
+ const saved = Array.isArray(nonces) && nonces.length === published.length
1068
+ ? nonces
1069
+ : undefined;
1070
+ const requests = published.flatMap((entry, index) => {
1071
+ const request = relayrForwardRequest(entry);
1072
+ return request
1073
+ ? [
1074
+ {
1075
+ chainId: entry.chain,
1076
+ signer: request.from,
1077
+ deadline: request.deadline,
1078
+ ...(saved ? { nonce: saved[index] } : {}),
1079
+ },
1080
+ ]
1081
+ : [];
1082
+ });
1083
+ return published.length && requests.length === published.length
1084
+ ? requests
1085
+ : null;
1086
+ }
1087
+ /**
1088
+ * The one classification of signed forward requests (ruling R114): each at a
1089
+ * canonical finalized block on its chain, read once per chain and signer with
1090
+ * `clientFor(chainId)`. Never throws for a chain it cannot read: its requests
1091
+ * are live.
1092
+ */
1093
+ async function relayrRequestStates(clientFor, requests) {
1094
+ const finalized = new Map();
1095
+ return Promise.all(requests.map(async ({ chainId, signer, deadline, nonce, }) => {
1096
+ const key = `${chainId}:${String(signer).toLowerCase()}`;
1097
+ if (!finalized.has(key)) {
1098
+ finalized.set(key, finalizedForwarderNonce(clientFor, chainId, signer));
1099
+ }
1100
+ const block = await finalized.get(key);
1101
+ // A saved nonce that can't be read leaves the request unknown, and a
1102
+ // deadline that can't be read has not passed.
1103
+ const saved = nonce === undefined ? null : (0, untrusted_js_1.uint256)(nonce);
1104
+ const end = (0, untrusted_js_1.uint256)(deadline);
1105
+ if (block && (nonce === undefined || saved !== null)) {
1106
+ if (saved !== null && block.nonce > saved) {
1107
+ return { live: false, mayHaveRun: true, unused: false };
1108
+ }
1109
+ if (end !== null && end < block.timestamp) {
1110
+ return {
1111
+ live: false,
1112
+ mayHaveRun: saved === null,
1113
+ unused: block.nonce === saved,
1114
+ };
1115
+ }
1116
+ }
1117
+ return { live: true, deadline: Number(deadline) };
1118
+ }));
1119
+ }
1120
+ /**
1121
+ * What `states` allow together. No states are neither run nor unused, so a
1122
+ * session with none holds.
1123
+ */
1124
+ function relayrRequestsVerdict(states) {
1125
+ const deadlines = states.flatMap((state) => state.live ? [state.deadline] : []);
1126
+ const mayHaveRun = states.some((state) => !state.live && state.mayHaveRun);
1127
+ if (deadlines.length) {
1128
+ return { live: true, until: Math.max(...deadlines), mayHaveRun };
1129
+ }
1130
+ return {
1131
+ live: false,
1132
+ mayHaveRun,
1133
+ unused: states.length > 0 && states.every((state) => !state.live && state.unused),
1134
+ };
1135
+ }
1136
+ /**
1137
+ * Ruling R117: whether every request is dead at a canonical finalized block
1138
+ * on its chain, anything unknown counting as live. A saved session reserves
1139
+ * its signers' forwarder nonces on its chains exactly while one of its
1140
+ * requests is live, never by a device clock or a quote's expiry. Requests that
1141
+ * can't be classified (null) or none at all are never dead.
1142
+ */
1143
+ async function relayrRequestsDead(clientFor, requests) {
1144
+ return (Array.isArray(requests) &&
1145
+ requests.length > 0 &&
1146
+ !relayrRequestsVerdict(await relayrRequestStates(clientFor, requests)).live);
1147
+ }
1148
+ /**
1149
+ * Whether the chain's finalized block, still canonical, is past `deadline`
1150
+ * (seconds, as a safe integer, decimal or 0x-hex digits, or a bigint): its
1151
+ * timestamp is later. False while that is unknown, or the deadline can't be
1152
+ * read.
1153
+ */
1154
+ async function relayrDeadlinePassed(client, deadline) {
1155
+ const finalized = await atCanonicalFinalizedBlock(client, async () => undefined);
1156
+ const end = (0, untrusted_js_1.uint256)(deadline);
1157
+ return !!finalized && end !== null && finalized.timestamp > end;
1158
+ }
1159
+ /** Whether `value` is a {@link RelayrDiscardReason}, for a reason read back from storage. */
1160
+ function isRelayrDiscardReason(value) {
1161
+ return value === "ran" || value === "changed" || value === "expired";
1162
+ }
1163
+ /** The transport failures that mean a recheck could not reach the chain. */
1164
+ const UNREACHED = ["HttpRequestError", "TimeoutError", "WebSocketRequestError"];
1165
+ /**
1166
+ * Revert data: whole bytes of hex, at least a 4-byte selector, bare or in
1167
+ * Nethermind's "Reverted 0x…" form.
1168
+ */
1169
+ const REVERT_DATA = /^(?:Reverted )?0x(?:[0-9a-fA-F]{2}){4,}$/u;
1170
+ /**
1171
+ * Whether one error carries revert data, whatever its JSON-RPC code: in its
1172
+ * `data`, in a `data.data` a node nests there, or in the `raw` data of viem's
1173
+ * contract revert. Such an error is the chain answering.
1174
+ */
1175
+ function revertedWithData(link) {
1176
+ const { raw, data } = link;
1177
+ const nested = data !== null && typeof data === "object"
1178
+ ? data.data
1179
+ : undefined;
1180
+ return [raw, data, nested].some((value) => typeof value === "string" && REVERT_DATA.test(value));
1181
+ }
1182
+ /**
1183
+ * Ruling R118: the node could not answer the recheck, so it says nothing
1184
+ * about the project. Within the error's first eight links (its cause chain),
1185
+ * one is a transport failure (HTTP, timeout or WebSocket), a JSON-RPC failure
1186
+ * (viem's `RpcRequestError` or any `RpcError`, such as -32001, -32005 or
1187
+ * -32603), or a contract revert without revert data, as viem reads a bare
1188
+ * revert, transient or not; and no link carries revert data, which on any
1189
+ * code is the chain answering. An app's error that wraps such a failure as
1190
+ * its `cause` reads the same way.
1191
+ */
1192
+ function recheckUnreached(error) {
1193
+ const links = [];
1194
+ for (let link = error; links.length < 8 && link instanceof Error; link = link.cause) {
1195
+ links.push(link);
1196
+ }
1197
+ return (!links.some(revertedWithData) &&
1198
+ links.some((link) => UNREACHED.includes(link.name) ||
1199
+ link instanceof viem_1.RpcRequestError ||
1200
+ link instanceof viem_1.RpcError ||
1201
+ link instanceof viem_1.ContractFunctionRevertedError));
1202
+ }
1203
+ /**
1204
+ * What a session does next from its requests' `verdict` (see
1205
+ * {@link RelayrSessionOutcome}), which was classified before the action's own
1206
+ * recheck, since a request that ran would make the recheck refuse.
1207
+ *
1208
+ * `nonces` must be the saved nonces of exactly the requests that were
1209
+ * classified into `verdict`, in the same order: `refresh` and `re-sign` hand
1210
+ * them back to sign at, and nothing here can check them against the verdict.
1211
+ * Without them (omitted, empty or not a list), a session whose requests are
1212
+ * all dead and unused holds as `reorg-hold`, and is neither discarded nor
1213
+ * signed again.
1214
+ *
1215
+ * `recheck`, the action's proof that its calls still apply, resolves when
1216
+ * they do and throws when they don't; a value it resolves with is never read.
1217
+ * It runs only once every request is dead and unused. Without one, as in an
1218
+ * account view, such a session can be discarded as `expired`. A recheck that
1219
+ * fails because the node could not answer decides nothing. Known limit: a
1220
+ * reorg that drops an earlier forwarded transaction can leave a finalized
1221
+ * nonce below a saved one, and the session holds until the nonce catches up.
1222
+ */
1223
+ async function relayrSessionOutcome(verdict, { nonces, recheck, } = {}) {
1224
+ const saved = Array.isArray(nonces) && nonces.length ? [...nonces] : null;
1225
+ if (verdict.live) {
1226
+ return verdict.mayHaveRun
1227
+ ? { kind: "hold", until: verdict.until }
1228
+ : { kind: "refresh", until: verdict.until, nonces: saved };
1229
+ }
1230
+ if (verdict.mayHaveRun)
1231
+ return { kind: "discard", reason: "ran" };
1232
+ if (!verdict.unused || !saved)
1233
+ return { kind: "reorg-hold" };
1234
+ if (!recheck)
1235
+ return { kind: "discard", reason: "expired" };
1236
+ try {
1237
+ await recheck();
1238
+ }
1239
+ catch (error) {
1240
+ return recheckUnreached(error)
1241
+ ? withHidden({ kind: "unchecked" }, "error", error)
1242
+ : withHidden({ kind: "discard", reason: "changed" }, "error", error);
1243
+ }
1244
+ return { kind: "re-sign", nonces: saved };
1245
+ }
991
1246
  //# sourceMappingURL=relayr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"relayr.js","sourceRoot":"","sources":["../../../src/review/relayr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relayr.js","sourceRoot":"","sources":["../../../src/review/relayr.ts"],"names":[],"mappings":"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"}
@@ -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
- * Each poll is one service request with the local API key and `signal`, which
44
- * also ends a request in flight. After a 429 the next poll waits the longer of
45
- * the polling interval and the wait its Retry-After asks for.
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":"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"}
1
+ {"version":3,"file":"safeService.d.ts","sourceRoot":"","sources":["../../src/safeService.ts"],"names":[],"mappings":"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"}