@aztec/stdlib 4.2.0-nightly.20260408 → 4.2.0-nightly.20260409
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/dest/abi/selector.d.ts +2 -2
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +1 -1
- package/dest/avm/revert_code.d.ts +8 -18
- package/dest/avm/revert_code.d.ts.map +1 -1
- package/dest/avm/revert_code.js +15 -30
- package/dest/gas/gas_settings.d.ts +40 -3
- package/dest/gas/gas_settings.d.ts.map +1 -1
- package/dest/gas/gas_settings.js +50 -6
- package/dest/tests/factories.js +1 -1
- package/dest/tests/mocks.d.ts +1 -1
- package/dest/tests/mocks.d.ts.map +1 -1
- package/dest/tests/mocks.js +2 -2
- package/dest/tx/simulated_tx.d.ts +3 -3
- package/dest/tx/simulated_tx.d.ts.map +1 -1
- package/dest/tx/simulated_tx.js +2 -2
- package/dest/tx/tx_receipt.d.ts +8 -4
- package/dest/tx/tx_receipt.d.ts.map +1 -1
- package/dest/tx/tx_receipt.js +8 -15
- package/package.json +9 -9
- package/src/abi/selector.ts +1 -1
- package/src/avm/revert_code.ts +25 -39
- package/src/gas/gas_settings.ts +65 -12
- package/src/tests/factories.ts +1 -1
- package/src/tests/mocks.ts +2 -2
- package/src/tx/simulated_tx.ts +5 -1
- package/src/tx/tx_receipt.ts +11 -14
package/dest/abi/selector.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
2
|
import { inspect } from 'util';
|
|
3
|
-
/** A selector is the
|
|
3
|
+
/** A selector is the low 4 bytes of the poseidon2 hash of a signature. */
|
|
4
4
|
export declare abstract class Selector {
|
|
5
5
|
value: number;
|
|
6
6
|
/** The size of the selector in bytes. */
|
|
@@ -36,4 +36,4 @@ export declare abstract class Selector {
|
|
|
36
36
|
*/
|
|
37
37
|
toField(): Fr;
|
|
38
38
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3IuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvc2VsZWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsMEVBQTBFO0FBQzFFLDhCQUFzQixRQUFRO0lBSW9CLEtBQUssRUFBRSxNQUFNO0lBSDdELHlDQUF5QztJQUN6QyxPQUFjLElBQUksU0FBSztJQUV2QixZQUFZLDRCQUE0QixDQUFRLEtBQUssRUFBRSxNQUFNLEVBSTVEO0lBRUQ7OztPQUdHO0lBQ0ksT0FBTyxJQUFJLE9BQU8sQ0FFeEI7SUFFRDs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLFVBQVUsU0FBZ0IsR0FBRyxNQUFNLENBRTNDO0lBRUQ7OztPQUdHO0lBQ0gsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBSyxFQUFFLFFBQVEsR0FBRyxPQUFPLENBRS9CO0lBRUQ7Ozs7T0FJRztJQUNJLE9BQU8sT0FFYjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../src/abi/selector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,
|
|
1
|
+
{"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../src/abi/selector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,0EAA0E;AAC1E,8BAAsB,QAAQ;IAIoB,KAAK,EAAE,MAAM;IAH7D,yCAAyC;IACzC,OAAc,IAAI,SAAK;IAEvB,YAAY,4BAA4B,CAAQ,KAAK,EAAE,MAAM,EAI5D;IAED;;;OAGG;IACI,OAAO,IAAI,OAAO,CAExB;IAED;;;;OAIG;IACH,QAAQ,CAAC,UAAU,SAAgB,GAAG,MAAM,CAE3C;IAED;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAEjB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAE/B;IAED;;;;OAIG;IACI,OAAO,OAEb;CACF"}
|
package/dest/abi/selector.js
CHANGED
|
@@ -4,7 +4,7 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
4
4
|
import { bufferToHex } from '@aztec/foundation/string';
|
|
5
5
|
import { inspect } from 'util';
|
|
6
6
|
_computedKey = inspect.custom;
|
|
7
|
-
/** A selector is the
|
|
7
|
+
/** A selector is the low 4 bytes of the poseidon2 hash of a signature. */ export class Selector {
|
|
8
8
|
value;
|
|
9
9
|
/** The size of the selector in bytes. */ static SIZE = 4;
|
|
10
10
|
constructor(/** Value of the selector */ value){
|
|
@@ -2,26 +2,12 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
2
2
|
import type { ZodFor } from '@aztec/foundation/schemas';
|
|
3
3
|
import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
4
4
|
import { inspect } from 'util';
|
|
5
|
-
/**
|
|
6
|
-
* Tracks which revertible phases of a transaction's public execution reverted.
|
|
7
|
-
*
|
|
8
|
-
* A transaction executes in three sequential phases:
|
|
9
|
-
* 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
|
|
10
|
-
* 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
|
|
11
|
-
* 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
|
|
12
|
-
*
|
|
13
|
-
* Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
|
|
14
|
-
* entirely.
|
|
15
|
-
*/
|
|
5
|
+
/** Whether a transaction's public execution reverted. */
|
|
16
6
|
export declare enum RevertCodeEnum {
|
|
17
7
|
/** All phases completed successfully; no state was rolled back. */
|
|
18
8
|
OK = 0,
|
|
19
|
-
/**
|
|
20
|
-
|
|
21
|
-
/** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */
|
|
22
|
-
TEARDOWN_REVERTED = 2,
|
|
23
|
-
/** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */
|
|
24
|
-
BOTH_REVERTED = 3
|
|
9
|
+
/** One or more revertible phases reverted; their state changes were discarded. */
|
|
10
|
+
REVERTED = 1
|
|
25
11
|
}
|
|
26
12
|
/**
|
|
27
13
|
* Wrapper class over a field to safely represent a revert code.
|
|
@@ -30,8 +16,12 @@ export declare class RevertCode {
|
|
|
30
16
|
private code;
|
|
31
17
|
private constructor();
|
|
32
18
|
static readonly OK: RevertCode;
|
|
19
|
+
static readonly REVERTED: RevertCode;
|
|
20
|
+
/** @deprecated Use REVERTED instead. */
|
|
33
21
|
static readonly APP_LOGIC_REVERTED: RevertCode;
|
|
22
|
+
/** @deprecated Use REVERTED instead. */
|
|
34
23
|
static readonly TEARDOWN_REVERTED: RevertCode;
|
|
24
|
+
/** @deprecated Use REVERTED instead. */
|
|
35
25
|
static readonly BOTH_REVERTED: RevertCode;
|
|
36
26
|
getCode(): RevertCodeEnum;
|
|
37
27
|
equals(other: RevertCode): boolean;
|
|
@@ -67,4 +57,4 @@ export declare class RevertCode {
|
|
|
67
57
|
static random(): RevertCode;
|
|
68
58
|
[inspect.custom](): string;
|
|
69
59
|
}
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0X2NvZGUuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vcmV2ZXJ0X2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQix5REFBeUQ7QUFDekQsb0JBQVksY0FBYztJQUN4QixtRUFBbUU7SUFDbkUsRUFBRSxJQUFJO0lBQ04sa0ZBQWtGO0lBQ2xGLFFBQVEsSUFBSTtDQUNiO0FBT0Q7O0dBRUc7QUFDSCxxQkFBYSxVQUFVO0lBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQVM7SUFDckIsT0FBTyxlQUVOO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFxQztJQUNuRSxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQTJDO0lBQy9FLHdDQUF3QztJQUN4QyxNQUFNLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBdUI7SUFDckUsd0NBQXdDO0lBQ3hDLE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxDQUF1QjtJQUNwRSx3Q0FBd0M7SUFDeEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUF1QjtJQUV6RCxPQUFPLElBQUksY0FBYyxDQUUvQjtJQUVNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FFeEM7SUFFTSxJQUFJLElBQUksT0FBTyxDQUVyQjtJQUVNLGNBQWMsV0FTcEI7SUFFTSxNQUFNLFdBRVo7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FNdEM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsVUFBVSxDQVMzQztJQUVEOzs7OztPQUtHO0lBRUgsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQU07SUFDN0MsY0FBYyxJQUFJLE1BQU0sQ0FHOUI7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBSztJQUMxQyxRQUFRLElBQUksTUFBTSxDQUl4QjtJQUVNLE9BQU8sSUFBSSxFQUFFLENBRW5CO0lBRU0sbUJBQW1CLElBQUksTUFBTSxDQUVuQztJQUVELE9BQWMsVUFBVSxDQUFDLElBQUksRUFBRSxNQUFNLEdBQUcsVUFBVSxDQUtqRDtJQUVELE9BQWMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsVUFBVSxDQUU3QztJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLEdBQUcsVUFBVSxDQUcvRDtJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFVBQVUsQ0FJbEU7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUs7SUFDeEMsTUFBTSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBRTFCO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBRWY7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revert_code.d.ts","sourceRoot":"","sources":["../../src/avm/revert_code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B
|
|
1
|
+
{"version":3,"file":"revert_code.d.ts","sourceRoot":"","sources":["../../src/avm/revert_code.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,yDAAyD;AACzD,oBAAY,cAAc;IACxB,mEAAmE;IACnE,EAAE,IAAI;IACN,kFAAkF;IAClF,QAAQ,IAAI;CACb;AAOD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,eAEN;IACD,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAqC;IACnE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAA2C;IAC/E,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,UAAU,CAAuB;IACrE,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,EAAE,UAAU,CAAuB;IACpE,wCAAwC;IACxC,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAuB;IAEzD,OAAO,IAAI,cAAc,CAE/B;IAEM,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAExC;IAEM,IAAI,IAAI,OAAO,CAErB;IAEM,cAAc,WASpB;IAEM,MAAM,WAEZ;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,CAMtC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAS3C;IAED;;;;;OAKG;IAEH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IAC7C,cAAc,IAAI,MAAM,CAG9B;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAK;IAC1C,QAAQ,IAAI,MAAM,CAIxB;IAEM,OAAO,IAAI,EAAE,CAEnB;IAEM,mBAAmB,IAAI,MAAM,CAEnC;IAED,OAAc,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAKjD;IAED,OAAc,SAAS,CAAC,KAAK,EAAE,EAAE,GAAG,UAAU,CAE7C;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,UAAU,CAG/D;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAIlE;IAED,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAK;IACxC,MAAM,CAAC,MAAM,IAAI,UAAU,CAE1B;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;CACF"}
|
package/dest/avm/revert_code.js
CHANGED
|
@@ -3,25 +3,13 @@ import { Fr } from '@aztec/foundation/curves/bn254';
|
|
|
3
3
|
import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
4
4
|
import { inspect } from 'util';
|
|
5
5
|
import { z } from 'zod';
|
|
6
|
-
/**
|
|
7
|
-
* Tracks which revertible phases of a transaction's public execution reverted.
|
|
8
|
-
*
|
|
9
|
-
* A transaction executes in three sequential phases:
|
|
10
|
-
* 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
|
|
11
|
-
* 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
|
|
12
|
-
* 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
|
|
13
|
-
*
|
|
14
|
-
* Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
|
|
15
|
-
* entirely.
|
|
16
|
-
*/ export var RevertCodeEnum = /*#__PURE__*/ function(RevertCodeEnum) {
|
|
6
|
+
/** Whether a transaction's public execution reverted. */ export var RevertCodeEnum = /*#__PURE__*/ function(RevertCodeEnum) {
|
|
17
7
|
/** All phases completed successfully; no state was rolled back. */ RevertCodeEnum[RevertCodeEnum["OK"] = 0] = "OK";
|
|
18
|
-
/**
|
|
19
|
-
/** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */ RevertCodeEnum[RevertCodeEnum["TEARDOWN_REVERTED"] = 2] = "TEARDOWN_REVERTED";
|
|
20
|
-
/** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */ RevertCodeEnum[RevertCodeEnum["BOTH_REVERTED"] = 3] = "BOTH_REVERTED";
|
|
8
|
+
/** One or more revertible phases reverted; their state changes were discarded. */ RevertCodeEnum[RevertCodeEnum["REVERTED"] = 1] = "REVERTED";
|
|
21
9
|
return RevertCodeEnum;
|
|
22
10
|
}({});
|
|
23
|
-
function
|
|
24
|
-
return value
|
|
11
|
+
/** Returns a valid RevertCodeEnum, coercing any value >= 1 to REVERTED. */ function toRevertCodeEnum(value) {
|
|
12
|
+
return value >= 1 ? 1 : 0;
|
|
25
13
|
}
|
|
26
14
|
_computedKey = inspect.custom;
|
|
27
15
|
/**
|
|
@@ -32,9 +20,10 @@ _computedKey = inspect.custom;
|
|
|
32
20
|
this.code = e.valueOf();
|
|
33
21
|
}
|
|
34
22
|
static OK = new RevertCode(0);
|
|
35
|
-
static
|
|
36
|
-
static
|
|
37
|
-
static
|
|
23
|
+
static REVERTED = new RevertCode(1);
|
|
24
|
+
/** @deprecated Use REVERTED instead. */ static APP_LOGIC_REVERTED = RevertCode.REVERTED;
|
|
25
|
+
/** @deprecated Use REVERTED instead. */ static TEARDOWN_REVERTED = RevertCode.REVERTED;
|
|
26
|
+
/** @deprecated Use REVERTED instead. */ static BOTH_REVERTED = RevertCode.REVERTED;
|
|
38
27
|
getCode() {
|
|
39
28
|
return this.code;
|
|
40
29
|
}
|
|
@@ -49,11 +38,7 @@ _computedKey = inspect.custom;
|
|
|
49
38
|
case 0:
|
|
50
39
|
return 'OK';
|
|
51
40
|
case 1:
|
|
52
|
-
return '
|
|
53
|
-
case 2:
|
|
54
|
-
return 'Teardown reverted';
|
|
55
|
-
case 3:
|
|
56
|
-
return 'Both reverted';
|
|
41
|
+
return 'Reverted';
|
|
57
42
|
default:
|
|
58
43
|
return `Unknown RevertCode: ${this.code}`;
|
|
59
44
|
}
|
|
@@ -62,7 +47,7 @@ _computedKey = inspect.custom;
|
|
|
62
47
|
return this.code;
|
|
63
48
|
}
|
|
64
49
|
static get schema() {
|
|
65
|
-
return z.
|
|
50
|
+
return z.number().int().min(0).transform((value)=>new RevertCode(toRevertCodeEnum(value)));
|
|
66
51
|
}
|
|
67
52
|
/**
|
|
68
53
|
* Creates a RevertCode from a plain object without Zod validation.
|
|
@@ -75,10 +60,10 @@ _computedKey = inspect.custom;
|
|
|
75
60
|
return obj;
|
|
76
61
|
}
|
|
77
62
|
const code = typeof obj === 'number' ? obj : obj.code ?? obj;
|
|
78
|
-
if (
|
|
63
|
+
if (typeof code !== 'number' || code < 0) {
|
|
79
64
|
throw new Error(`Invalid RevertCode: ${code}`);
|
|
80
65
|
}
|
|
81
|
-
return new RevertCode(code);
|
|
66
|
+
return new RevertCode(toRevertCodeEnum(code));
|
|
82
67
|
}
|
|
83
68
|
/**
|
|
84
69
|
* Having different serialization methods allows for
|
|
@@ -106,10 +91,10 @@ _computedKey = inspect.custom;
|
|
|
106
91
|
return this.toBuffer().length;
|
|
107
92
|
}
|
|
108
93
|
static fromNumber(code) {
|
|
109
|
-
if (
|
|
94
|
+
if (code < 0) {
|
|
110
95
|
throw new Error(`Invalid RevertCode: ${code}`);
|
|
111
96
|
}
|
|
112
|
-
return new RevertCode(code);
|
|
97
|
+
return new RevertCode(toRevertCodeEnum(code));
|
|
113
98
|
}
|
|
114
99
|
static fromField(field) {
|
|
115
100
|
return RevertCode.fromNumber(field.toNumber());
|
|
@@ -123,7 +108,7 @@ _computedKey = inspect.custom;
|
|
|
123
108
|
const code = reader.readBytes(RevertCode.PACKED_SIZE_IN_BYTES).readUInt8(0);
|
|
124
109
|
return RevertCode.fromNumber(code);
|
|
125
110
|
}
|
|
126
|
-
static NUM_OPTIONS =
|
|
111
|
+
static NUM_OPTIONS = 2;
|
|
127
112
|
static random() {
|
|
128
113
|
return new RevertCode(Math.floor(Math.random() * RevertCode.NUM_OPTIONS));
|
|
129
114
|
}
|
|
@@ -4,6 +4,16 @@ import type { FieldsOf } from '@aztec/foundation/types';
|
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import { Gas } from './gas.js';
|
|
6
6
|
import { GasFees } from './gas_fees.js';
|
|
7
|
+
/** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */
|
|
8
|
+
export declare const APPROXIMATE_MAX_DA_GAS_PER_BLOCK: number;
|
|
9
|
+
/** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */
|
|
10
|
+
export declare const FALLBACK_TEARDOWN_L2_GAS_LIMIT: number;
|
|
11
|
+
/** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */
|
|
12
|
+
export declare const FALLBACK_TEARDOWN_DA_GAS_LIMIT: number;
|
|
13
|
+
export declare const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = 6540000;
|
|
14
|
+
export declare const GAS_ESTIMATION_L2_GAS_LIMIT: number;
|
|
15
|
+
export declare const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = 786432;
|
|
16
|
+
export declare const GAS_ESTIMATION_DA_GAS_LIMIT: number;
|
|
7
17
|
/** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */
|
|
8
18
|
export declare class GasSettings {
|
|
9
19
|
readonly gasLimits: Gas;
|
|
@@ -124,8 +134,35 @@ export declare class GasSettings {
|
|
|
124
134
|
getFeeLimit(): Fr;
|
|
125
135
|
/** Zero-value gas settings. */
|
|
126
136
|
static empty(): GasSettings;
|
|
127
|
-
/**
|
|
128
|
-
|
|
137
|
+
/**
|
|
138
|
+
* Fills in gas limits high enough for transactions to be included in most cases.
|
|
139
|
+
* gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
|
|
140
|
+
* from gasLimits during private execution (see gas_meter.nr), the effective gas available
|
|
141
|
+
* for app logic will be gasLimits - teardownGasLimits - privateOverhead.
|
|
142
|
+
* The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
|
|
143
|
+
* since using the maximum per checkpoint would cause nodes to reject transactions.
|
|
144
|
+
* These values won't work if:
|
|
145
|
+
* - Teardown consumes more than the arbitrarily assigned fallback limits
|
|
146
|
+
* - The rest of the transaction consumes more than the remaining gas after teardown
|
|
147
|
+
* - The DA gas limit is too low for the transaction, while still within the checkpoint limit
|
|
148
|
+
*/
|
|
149
|
+
static fallback(overrides: {
|
|
150
|
+
gasLimits?: Gas;
|
|
151
|
+
teardownGasLimits?: Gas;
|
|
152
|
+
maxFeesPerGas: GasFees;
|
|
153
|
+
maxPriorityFeesPerGas?: GasFees;
|
|
154
|
+
}): GasSettings;
|
|
155
|
+
/**
|
|
156
|
+
* Gas settings for simulation/estimation only.
|
|
157
|
+
* Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
|
|
158
|
+
* the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
|
|
159
|
+
* To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
|
|
160
|
+
* teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
|
|
161
|
+
* processable amount remains available for each phase independently. To be used in conjunction
|
|
162
|
+
* with skipTxValidation: true during public simulation, or the node would reject the transaction
|
|
163
|
+
* outright due to gas limits being above protocol max.
|
|
164
|
+
*/
|
|
165
|
+
static forEstimation(overrides: {
|
|
129
166
|
gasLimits?: Gas;
|
|
130
167
|
teardownGasLimits?: Gas;
|
|
131
168
|
maxFeesPerGas: GasFees;
|
|
@@ -139,4 +176,4 @@ export declare class GasSettings {
|
|
|
139
176
|
toFields(): Fr[];
|
|
140
177
|
static getFields(fields: FieldsOf<GasSettings>): readonly [Gas, Gas, GasFees, GasFees];
|
|
141
178
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FzX3NldHRpbmdzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FzL2dhc19zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXdDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsR0FBRyxFQUFpQixNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhDLHFIQUFtSDtBQUNuSCxlQUFPLE1BQU0sZ0NBQWdDLFFBQXdELENBQUM7QUFDdEcscUZBQW1GO0FBQ25GLGVBQU8sTUFBTSw4QkFBOEIsUUFBeUMsQ0FBQztBQUNyRixxRkFBbUY7QUFDbkYsZUFBTyxNQUFNLDhCQUE4QixRQUFtRCxDQUFDO0FBSy9GLGVBQU8sTUFBTSxvQ0FBb0MsVUFBeUIsQ0FBQztBQUMzRSxlQUFPLE1BQU0sMkJBQTJCLFFBQWdFLENBQUM7QUFDekcsZUFBTyxNQUFNLG9DQUFvQyxTQUF3QyxDQUFDO0FBQzFGLGVBQU8sTUFBTSwyQkFBMkIsUUFBK0UsQ0FBQztBQUd4SCxtR0FBbUc7QUFDbkcscUJBQWEsV0FBVzthQUVKLFNBQVMsRUFBRSxHQUFHO2FBQ2QsaUJBQWlCLEVBQUUsR0FBRzthQUN0QixhQUFhLEVBQUUsT0FBTzthQUN0QixxQkFBcUIsRUFBRSxPQUFPO0lBSmhELFlBQ2tCLFNBQVMsRUFBRSxHQUFHLEVBQ2QsaUJBQWlCLEVBQUUsR0FBRyxFQUN0QixhQUFhLEVBQUUsT0FBTyxFQUN0QixxQkFBcUIsRUFBRSxPQUFPLEVBQzVDO0lBR0osTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BU2hCO0lBRUQsT0FBTyxJQUFJLE1BQU0sQ0FFaEI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNoQixTQUFTLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNqQyxhQUFhLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLHFCQUFxQixFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUMxQyxlQU9BO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFdBQVcsQ0FVNUM7SUFFRCxLQUFLLGdCQU9KO0lBRUQsbUZBQW1GO0lBQ25GLFdBQVcsT0FLVjtJQUVELCtCQUErQjtJQUMvQixNQUFNLENBQUMsS0FBSyxnQkFFWDtJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0gsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7UUFDekIsU0FBUyxDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ2hCLGlCQUFpQixDQUFDLEVBQUUsR0FBRyxDQUFDO1FBQ3hCLGFBQWEsRUFBRSxPQUFPLENBQUM7UUFDdkIscUJBQXFCLENBQUMsRUFBRSxPQUFPLENBQUM7S0FDakMsZUFhQTtJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFO1FBQzlCLFNBQVMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNoQixpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUN4QixhQUFhLEVBQUUsT0FBTyxDQUFDO1FBQ3ZCLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxDQUFDO0tBQ2pDLGVBYUE7SUFFRCxPQUFPLFlBT047SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsV0FPeEI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFdBQVcsQ0FRNUQ7SUFFRCxRQUFRLDRCQUVQO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLFdBQVcsQ0FRekQ7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLHlDQUU3QztDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gas_settings.d.ts","sourceRoot":"","sources":["../../src/gas/gas_settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAwC,MAAM,6BAA6B,CAAC;AAC9G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,qHAAmH;AACnH,eAAO,MAAM,gCAAgC,QAAwD,CAAC;AACtG,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAyC,CAAC;AACrF,qFAAmF;AACnF,eAAO,MAAM,8BAA8B,QAAmD,CAAC;AAK/F,eAAO,MAAM,oCAAoC,UAAyB,CAAC;AAC3E,eAAO,MAAM,2BAA2B,QAAgE,CAAC;AACzG,eAAO,MAAM,oCAAoC,SAAwC,CAAC;AAC1F,eAAO,MAAM,2BAA2B,QAA+E,CAAC;AAGxH,mGAAmG;AACnG,qBAAa,WAAW;aAEJ,SAAS,EAAE,GAAG;aACd,iBAAiB,EAAE,GAAG;aACtB,aAAa,EAAE,OAAO;aACtB,qBAAqB,EAAE,OAAO;IAJhD,YACkB,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,GAAG,EACtB,aAAa,EAAE,OAAO,EACtB,qBAAqB,EAAE,OAAO,EAC5C;IAGJ,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAShB;IAED,OAAO,IAAI,MAAM,CAEhB;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QAChB,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzB,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QACjC,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;KAC1C,eAOA;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW,CAU5C;IAED,KAAK,gBAOJ;IAED,mFAAmF;IACnF,WAAW,OAKV;IAED,+BAA+B;IAC/B,MAAM,CAAC,KAAK,gBAEX;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;QACzB,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE;QAC9B,SAAS,CAAC,EAAE,GAAG,CAAC;QAChB,iBAAiB,CAAC,EAAE,GAAG,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC,eAaA;IAED,OAAO,YAON;IAED,MAAM,CAAC,KAAK,EAAE,WAAW,WAOxB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,WAAW,CAQ5D;IAED,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,WAAW,CAQzD;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,yCAE7C;CACF"}
|
package/dest/gas/gas_settings.js
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { GAS_SETTINGS_LENGTH, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import { Gas, GasDimensions } from './gas.js';
|
|
6
6
|
import { GasFees } from './gas_fees.js';
|
|
7
|
+
/** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */ export const APPROXIMATE_MAX_DA_GAS_PER_BLOCK = Math.floor(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT / 4);
|
|
8
|
+
/** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_L2_GAS_LIMIT = Math.floor(MAX_PROCESSABLE_L2_GAS / 8);
|
|
9
|
+
/** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */ export const FALLBACK_TEARDOWN_DA_GAS_LIMIT = Math.floor(APPROXIMATE_MAX_DA_GAS_PER_BLOCK / 2);
|
|
10
|
+
// For gas estimation, we use intentionally high limits above what the network can process,
|
|
11
|
+
// so the simulation runs without hitting gas caps. Since teardown gas is counted towards total,
|
|
12
|
+
// the total estimation limit is teardown + max processable.
|
|
13
|
+
export const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = MAX_PROCESSABLE_L2_GAS;
|
|
14
|
+
export const GAS_ESTIMATION_L2_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT + MAX_PROCESSABLE_L2_GAS;
|
|
15
|
+
export const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
|
|
16
|
+
export const GAS_ESTIMATION_DA_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT + MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
|
|
7
17
|
// docs:start:gas_settings_vars
|
|
8
18
|
/** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */ export class GasSettings {
|
|
9
19
|
gasLimits;
|
|
@@ -52,15 +62,49 @@ import { GasFees } from './gas_fees.js';
|
|
|
52
62
|
/** Zero-value gas settings. */ static empty() {
|
|
53
63
|
return new GasSettings(Gas.empty(), Gas.empty(), GasFees.empty(), GasFees.empty());
|
|
54
64
|
}
|
|
55
|
-
/**
|
|
65
|
+
/**
|
|
66
|
+
* Fills in gas limits high enough for transactions to be included in most cases.
|
|
67
|
+
* gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
|
|
68
|
+
* from gasLimits during private execution (see gas_meter.nr), the effective gas available
|
|
69
|
+
* for app logic will be gasLimits - teardownGasLimits - privateOverhead.
|
|
70
|
+
* The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
|
|
71
|
+
* since using the maximum per checkpoint would cause nodes to reject transactions.
|
|
72
|
+
* These values won't work if:
|
|
73
|
+
* - Teardown consumes more than the arbitrarily assigned fallback limits
|
|
74
|
+
* - The rest of the transaction consumes more than the remaining gas after teardown
|
|
75
|
+
* - The DA gas limit is too low for the transaction, while still within the checkpoint limit
|
|
76
|
+
*/ static fallback(overrides) {
|
|
77
|
+
return GasSettings.from({
|
|
78
|
+
gasLimits: overrides.gasLimits ?? {
|
|
79
|
+
l2Gas: MAX_PROCESSABLE_L2_GAS,
|
|
80
|
+
daGas: APPROXIMATE_MAX_DA_GAS_PER_BLOCK
|
|
81
|
+
},
|
|
82
|
+
teardownGasLimits: overrides.teardownGasLimits ?? {
|
|
83
|
+
l2Gas: FALLBACK_TEARDOWN_L2_GAS_LIMIT,
|
|
84
|
+
daGas: FALLBACK_TEARDOWN_DA_GAS_LIMIT
|
|
85
|
+
},
|
|
86
|
+
maxFeesPerGas: overrides.maxFeesPerGas,
|
|
87
|
+
maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Gas settings for simulation/estimation only.
|
|
92
|
+
* Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
|
|
93
|
+
* the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
|
|
94
|
+
* To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
|
|
95
|
+
* teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
|
|
96
|
+
* processable amount remains available for each phase independently. To be used in conjunction
|
|
97
|
+
* with skipTxValidation: true during public simulation, or the node would reject the transaction
|
|
98
|
+
* outright due to gas limits being above protocol max.
|
|
99
|
+
*/ static forEstimation(overrides) {
|
|
56
100
|
return GasSettings.from({
|
|
57
101
|
gasLimits: overrides.gasLimits ?? {
|
|
58
|
-
l2Gas:
|
|
59
|
-
daGas:
|
|
102
|
+
l2Gas: GAS_ESTIMATION_L2_GAS_LIMIT,
|
|
103
|
+
daGas: GAS_ESTIMATION_DA_GAS_LIMIT
|
|
60
104
|
},
|
|
61
105
|
teardownGasLimits: overrides.teardownGasLimits ?? {
|
|
62
|
-
l2Gas:
|
|
63
|
-
daGas:
|
|
106
|
+
l2Gas: GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT,
|
|
107
|
+
daGas: GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT
|
|
64
108
|
},
|
|
65
109
|
maxFeesPerGas: overrides.maxFeesPerGas,
|
|
66
110
|
maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty()
|
package/dest/tests/factories.js
CHANGED
|
@@ -121,7 +121,7 @@ function makePublicLog(seed) {
|
|
|
121
121
|
/**
|
|
122
122
|
* Creates a default instance of gas settings. No seed value is used to ensure we allocate a sensible amount of gas for testing.
|
|
123
123
|
*/ export function makeGasSettings() {
|
|
124
|
-
return GasSettings.
|
|
124
|
+
return GasSettings.fallback({
|
|
125
125
|
maxFeesPerGas: new GasFees(10, 10)
|
|
126
126
|
});
|
|
127
127
|
}
|
package/dest/tests/mocks.d.ts
CHANGED
|
@@ -164,4 +164,4 @@ export declare const makeCheckpointAttestationFromBlock: (block: L2Block, attest
|
|
|
164
164
|
export declare function randomPublishedL2Block(l2BlockNumber: number, opts?: {
|
|
165
165
|
signers?: Secp256k1Signer[];
|
|
166
166
|
}): Promise<CheckpointedL2Block>;
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja3MuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0cy9tb2Nrcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFjLE1BQU0saUNBQWlDLENBQUM7QUFJbkgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFNUQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBd0IsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkYsT0FBTyxLQUFLLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNyRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFLekQsT0FBTyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,EAAc,MAAM,iCAAiC,CAAC;AAInH,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAwB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAC;AACrG,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAKzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAWxF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,eAAe,EAIf,iBAAiB,EACjB,EAAE,EAIH,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAe1C,eAAO,MAAM,YAAY,cAAgC,CAAC;AAE1D,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;iBAoGlB,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;6BACoF,CAAC;AAEjH,gDAAgD;AAChD,wBAAsB,eAAe,CAAC,EACpC,IAAQ,EACR,iBAAiB,EACjB,EAAE,EACF,OAAiB,EACjB,OAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"mocks.d.ts","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,EAAc,MAAM,iCAAiC,CAAC;AAInH,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAwB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAC;AACrG,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAKzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAWxF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,eAAe,EAIf,iBAAiB,EACjB,EAAE,EAIH,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAe1C,eAAO,MAAM,YAAY,cAAgC,CAAC;AAE1D,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;iBAoGlB,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;6BACoF,CAAC;AAEjH,gDAAgD;AAChD,wBAAsB,eAAe,CAAC,EACpC,IAAQ,EACR,iBAAiB,EACjB,EAAE,EACF,OAAiB,EACjB,OAAiB,EACjB,WAA0E,EAC1E,UAAoB,EACpB,iBAAuD,EACvD,eAAyC,EACzC,iBAAkD,EAClD,QAAQ,EACR,yBAAyB,EAEzB,WAAmB,EACnB,OAGE,EACF,kBAAkB,EAClB,GAAG,UAAU,EACd,GAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAChC,EAAE,CAAC,EAAE,wBAAwB,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,yBAAyB,CAAC,EAAE,eAAe,CAAC;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;CAC5D,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAM,wDAuIpC;AAmBD,eAAO,MAAM,eAAe,gDAgB3B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,GAAG,EAAE,EAAE,CAElE;AAED,wBAAsB,yBAAyB,CAC7C,gBAAgB,EAAE,gBAAgB,EAClC,EACE,gBAAiC,EACjC,SAAa,EACb,MAAM,EACN,cAAkB,EAClB,iBAAqB,EACrB,gBAA6B,EAC7B,eAAe,EACf,UAAU,EACV,GAAG,OAAO,EACX,GAAE;IACD,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAM;;;;GAmDrD;AAED,eAAO,MAAM,sBAAsB,wBAUjC,CAAC;AAEH,eAAO,MAAM,iCAAiC;;8EAa7C,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;EAIlC,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,EAAE,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;IACX,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,MAAM,CAAC,EAAE,EAAE,CAAC;IACZ,WAAW,CAAC,EAAE,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;CACZ;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,WAAW,CAAC,EAAE,EAAE,CAAC;IACjB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yEAAyE;IACzE,SAAS,CAAC,EAAE;QACV,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;QAC9C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;KACZ,CAAC;CACH;AAsBD,eAAO,MAAM,0CAA0C,kGAStD,CAAC;AAEF,eAAO,MAAM,iBAAiB,4EAkB7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,sFAwBlC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,OAAO,CAAC,EAAE,EAAE,CAAC;IACb,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB,uEA2BrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qCAAqC,uGAgBjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uCAAuC,+IAUnD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kCAAkC,uIAe9C,CAAC;AAEF,wBAAsB,sBAAsB,CAC1C,aAAa,EAAE,MAAM,EACrB,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAA;CAAO,GACzC,OAAO,CAAC,mBAAmB,CAAC,CAwB9B"}
|
package/dest/tests/mocks.js
CHANGED
|
@@ -51,7 +51,7 @@ export const mockTx = async (seed = 1, { numberOfNonRevertiblePublicCallRequests
|
|
|
51
51
|
const data = PrivateKernelTailCircuitPublicInputs.empty();
|
|
52
52
|
const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
|
|
53
53
|
data.constants.anchorBlockHeader = anchorBlockHeader;
|
|
54
|
-
data.constants.txContext.gasSettings = GasSettings.
|
|
54
|
+
data.constants.txContext.gasSettings = GasSettings.fallback({
|
|
55
55
|
gasLimits,
|
|
56
56
|
maxFeesPerGas,
|
|
57
57
|
maxPriorityFeesPerGas
|
|
@@ -101,7 +101,7 @@ export const mockTxForRollup = (seed = 1, opts = {})=>mockTx(seed, {
|
|
|
101
101
|
numberOfNonRevertiblePublicCallRequests: 0,
|
|
102
102
|
numberOfRevertiblePublicCallRequests: 0
|
|
103
103
|
});
|
|
104
|
-
/** Mock a processed tx for testing purposes. */ export async function mockProcessedTx({ seed = 1, anchorBlockHeader, db, chainId = Fr.ZERO, version = Fr.ZERO, gasSettings = GasSettings.
|
|
104
|
+
/** Mock a processed tx for testing purposes. */ export async function mockProcessedTx({ seed = 1, anchorBlockHeader, db, chainId = Fr.ZERO, version = Fr.ZERO, gasSettings = GasSettings.fallback({
|
|
105
105
|
maxFeesPerGas: new GasFees(10, 10)
|
|
106
106
|
}), vkTreeRoot = Fr.ZERO, protocolContracts = makeProtocolContracts(seed + 0x100), globalVariables = GlobalVariables.empty(), newL1ToL2Snapshot = AppendOnlyTreeSnapshot.empty(), feePayer, feePaymentPublicDataWrite, // The default gasUsed is the tx overhead.
|
|
107
107
|
privateOnly = false, gasUsed = Gas.from({
|
|
@@ -15,8 +15,8 @@ export type ContractOverrides = Record<string, {
|
|
|
15
15
|
artifact: ContractArtifact;
|
|
16
16
|
}>;
|
|
17
17
|
export declare class SimulationOverrides {
|
|
18
|
-
contracts?: ContractOverrides
|
|
19
|
-
constructor(contracts?: ContractOverrides
|
|
18
|
+
contracts?: ContractOverrides;
|
|
19
|
+
constructor(contracts?: ContractOverrides);
|
|
20
20
|
static get schema(): z.ZodEffects<z.ZodObject<{
|
|
21
21
|
contracts: import("@aztec/foundation/schemas").ZodNullableOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
22
22
|
instance: z.ZodIntersection<z.ZodObject<{
|
|
@@ -1220,4 +1220,4 @@ export declare class TxSimulationResult {
|
|
|
1220
1220
|
* @returns
|
|
1221
1221
|
*/
|
|
1222
1222
|
export declare function accumulatePrivateReturnValues(executionResult: PrivateExecutionResult): NestedProcessReturnValues;
|
|
1223
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGVkX3R4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvc2ltdWxhdGVkX3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTBCLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFDTCxLQUFLLDJCQUEyQixFQUVqQyxNQUFNLDZDQUE2QyxDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRTlHLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFFTCxzQkFBc0IsRUFHdkIsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU83QixNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUNwQyxNQUFNLEVBQ047SUFBRSxRQUFRLEVBQUUsMkJBQTJCLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUN0RSxDQUFDO0FBTUYscUJBQWEsbUJBQW1CO0lBQ3ZCLFNBQVMsQ0FBQyxFQUFFLGlCQUFpQixDQUFDO0lBRXJDLFlBQVksU0FBUyxHQUFFLGlCQUFzQixFQUU1QztJQUVELE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FhaEI7Q0FDRjtBQUVELHFCQUFhLHVCQUF1QjtJQUV6QixzQkFBc0IsRUFBRSxzQkFBc0I7SUFDOUMsWUFBWSxFQUFFLG9DQUFvQztJQUYzRCxZQUNTLHNCQUFzQixFQUFFLHNCQUFzQixFQUM5QyxZQUFZLEVBQUUsb0NBQW9DLEVBQ3ZEO0lBRUosc0JBQXNCLDhCQUVyQjtJQUVLLGFBQWEsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBU2pDO0NBQ0Y7QUFFRCxxQkFBYSxrQkFBa0I7SUFFcEIsc0JBQXNCLEVBQUUsc0JBQXNCO0lBQzlDLFlBQVksRUFBRSxvQ0FBb0M7SUFDbEQsWUFBWSxDQUFDO0lBQ2IsS0FBSyxDQUFDO0lBSmYsWUFDUyxzQkFBc0IsRUFBRSxzQkFBc0IsRUFDOUMsWUFBWSxFQUFFLG9DQUFvQyxFQUNsRCxZQUFZLENBQUMsb0NBQXdCLEVBQ3JDLEtBQUssQ0FBQyw2QkFBaUIsRUFDNUI7SUFFSixpRUFBaUU7SUFDakUsSUFBSSxlQUFlLElBQUksY0FBYyxFQUFFLENBRXRDO0lBRUQsSUFBSSxPQUFPLElBQUksT0FBTyxDQVNyQjtJQUVELE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBUzlDO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxzQkFPcEY7SUFFRCxNQUFNLENBQUMsMENBQTBDLENBQy9DLHVCQUF1QixFQUFFLHVCQUF1QixFQUNoRCxZQUFZLENBQUMsRUFBRSxzQkFBc0IsRUFDckMsS0FBSyxDQUFDLEVBQUUsZUFBZSxzQkFReEI7SUFFRCxPQUFhLE1BQU0sZ0NBTWxCO0lBRUQsc0JBQXNCLDhCQUVyQjtJQUVELGFBQWEsSUFBSSxPQUFPLENBQUMsRUFBRSxDQUFDLENBRTNCO0lBRUQscUJBQXFCLGdDQUVwQjtDQUNGO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsNkJBQTZCLENBQUMsZUFBZSxFQUFFLHNCQUFzQixHQUFHLHlCQUF5QixDQVdoSCJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,eAAe,CAAC;AAC9E,OAAO,EACL,KAAK,2BAA2B,EAEjC,MAAM,6CAA6C,CAAC;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oCAAoC,EAAE,MAAM,wDAAwD,CAAC;AAE9G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAEL,sBAAsB,EAGvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAClG,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAO7B,MAAM,MAAM,iBAAiB,GAAG,MAAM,CACpC,MAAM,EACN;IAAE,QAAQ,EAAE,2BAA2B,CAAC;IAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CACtE,CAAC;AAMF,qBAAa,mBAAmB;
|
|
1
|
+
{"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"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"}
|
package/dest/tx/simulated_tx.js
CHANGED
|
@@ -14,8 +14,8 @@ import { Tx } from './tx.js';
|
|
|
14
14
|
* set, it *must* be run without the kernel circuits, or validations will fail
|
|
15
15
|
*/ export class SimulationOverrides {
|
|
16
16
|
contracts;
|
|
17
|
-
constructor(contracts){
|
|
18
|
-
this.contracts = contracts;
|
|
17
|
+
constructor(contracts = {}){
|
|
18
|
+
this.contracts = Object.keys(contracts).length > 0 ? contracts : undefined;
|
|
19
19
|
}
|
|
20
20
|
static get schema() {
|
|
21
21
|
return z.object({
|
package/dest/tx/tx_receipt.d.ts
CHANGED
|
@@ -18,9 +18,13 @@ export declare const SortedTxStatuses: TxStatus[];
|
|
|
18
18
|
/** Execution result - only set when tx is in a block. */
|
|
19
19
|
export declare enum TxExecutionResult {
|
|
20
20
|
SUCCESS = "success",
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
REVERTED = "reverted",
|
|
22
|
+
/** @deprecated Use REVERTED instead. */
|
|
23
|
+
APP_LOGIC_REVERTED = "reverted",
|
|
24
|
+
/** @deprecated Use REVERTED instead. */
|
|
25
|
+
TEARDOWN_REVERTED = "reverted",
|
|
26
|
+
/** @deprecated Use REVERTED instead. */
|
|
27
|
+
BOTH_REVERTED = "reverted"
|
|
24
28
|
}
|
|
25
29
|
/**
|
|
26
30
|
* Represents a transaction receipt in the Aztec network.
|
|
@@ -99,4 +103,4 @@ export declare class TxReceipt {
|
|
|
99
103
|
}): TxReceipt;
|
|
100
104
|
static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult;
|
|
101
105
|
}
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcmVjZWlwdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R4L3R4X3JlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsV0FBVyxFQUFxQixNQUFNLGlDQUFpQyxDQUFDO0FBSWpILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBVyxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEMsMkNBQTJDO0FBQzNDLG9CQUFZLFFBQVE7SUFDbEIsT0FBTyxZQUFZO0lBQ25CLE9BQU8sWUFBWTtJQUNuQixRQUFRLGFBQWE7SUFDckIsWUFBWSxpQkFBaUI7SUFDN0IsTUFBTSxXQUFXO0lBQ2pCLFNBQVMsY0FBYztDQUN4QjtBQUVELGlEQUFpRDtBQUNqRCxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsUUFBUSxFQU90QyxDQUFDO0FBRUYseURBQXlEO0FBQ3pELG9CQUFZLGlCQUFpQjtJQUMzQixPQUFPLFlBQVk7SUFDbkIsUUFBUSxhQUFhO0lBQ3JCLHdDQUF3QztJQUV4QyxrQkFBa0IsYUFBYTtJQUMvQix3Q0FBd0M7SUFFeEMsaUJBQWlCLGFBQWE7SUFDOUIsd0NBQXdDO0lBRXhDLGFBQWEsYUFBYTtDQUMzQjtBQUVEOzs7OztHQUtHO0FBQ0gscUJBQWEsU0FBUztJQUVsQiw2Q0FBNkM7SUFDdEMsTUFBTSxFQUFFLE1BQU07SUFDckIsbURBQW1EO0lBQzVDLE1BQU0sRUFBRSxRQUFRO0lBQ3ZCLCtFQUErRTtJQUN4RSxlQUFlLEVBQUUsaUJBQWlCLEdBQUcsU0FBUztJQUNyRCxnREFBZ0Q7SUFDekMsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTO0lBQ2hDLG9EQUFvRDtJQUM3QyxjQUFjLENBQUM7SUFDdEIsd0RBQXdEO0lBQ2pELFNBQVMsQ0FBQztJQUNqQiw4REFBOEQ7SUFDdkQsV0FBVyxDQUFDO0lBQ25CLDhEQUE4RDtJQUN2RCxXQUFXLENBQUM7SUFDbkI7Ozs7T0FJRztJQUNJLFNBQVMsQ0FBQztJQXRCbkI7SUFDRSw2Q0FBNkM7SUFDdEMsTUFBTSxFQUFFLE1BQU07SUFDckIsbURBQW1EO0lBQzVDLE1BQU0sRUFBRSxRQUFRO0lBQ3ZCLCtFQUErRTtJQUN4RSxlQUFlLEVBQUUsaUJBQWlCLEdBQUcsU0FBUztJQUNyRCxnREFBZ0Q7SUFDekMsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTO0lBQ2hDLG9EQUFvRDtJQUM3QyxjQUFjLENBQUMsb0JBQVE7SUFDOUIsd0RBQXdEO0lBQ2pELFNBQVMsQ0FBQyx1QkFBVztJQUM1Qiw4REFBOEQ7SUFDdkQsV0FBVyxDQUFDLHlCQUFhO0lBQ2hDLDhEQUE4RDtJQUN2RCxXQUFXLENBQUMseUJBQWE7SUFDaEM7Ozs7T0FJRztJQUNJLFNBQVMsQ0FBQyx3QkFBWSxFQUMzQjtJQUVKLGlFQUFpRTtJQUNqRSxxQkFBcUIsSUFBSSxPQUFPLENBRS9CO0lBRUQsMERBQTBEO0lBQzFELG9CQUFvQixJQUFJLE9BQU8sQ0FFOUI7SUFFRCxtSEFBbUg7SUFDbkgsT0FBTyxJQUFJLE9BQU8sQ0FPakI7SUFFRCxrREFBa0Q7SUFDbEQsU0FBUyxJQUFJLE9BQU8sQ0FFbkI7SUFFRCxtREFBbUQ7SUFDbkQsU0FBUyxJQUFJLE9BQU8sQ0FFbkI7SUFFRCxNQUFNLENBQUMsS0FBSyxjQUVYO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBY3JDO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDbEIsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUNmLE1BQU0sRUFBRSxRQUFRLENBQUM7UUFDakIsZUFBZSxDQUFDLEVBQUUsaUJBQWlCLENBQUM7UUFDcEMsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ2YsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3hCLFNBQVMsQ0FBQyxFQUFFLFNBQVMsQ0FBQztRQUN0QixXQUFXLENBQUMsRUFBRSxXQUFXLENBQUM7UUFDMUIsV0FBVyxDQUFDLEVBQUUsV0FBVyxDQUFDO1FBQzFCLFNBQVMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDO0tBQ3hCLGFBWUE7SUFFRCxPQUFjLDZCQUE2QixDQUFDLFVBQVUsRUFBRSxVQUFVLEdBQUcsaUJBQWlCLENBRXJGO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_receipt.d.ts","sourceRoot":"","sources":["../../src/tx/tx_receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAIjH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,2CAA2C;AAC3C,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAOtC,CAAC;AAEF,yDAAyD;AACzD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"tx_receipt.d.ts","sourceRoot":"","sources":["../../src/tx/tx_receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAIjH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,2CAA2C;AAC3C,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAOtC,CAAC;AAEF,yDAAyD;AACzD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,wCAAwC;IAExC,kBAAkB,aAAa;IAC/B,wCAAwC;IAExC,iBAAiB,aAAa;IAC9B,wCAAwC;IAExC,aAAa,aAAa;CAC3B;AAED;;;;;GAKG;AACH,qBAAa,SAAS;IAElB,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC;IACtB,wDAAwD;IACjD,SAAS,CAAC;IACjB,8DAA8D;IACvD,WAAW,CAAC;IACnB,8DAA8D;IACvD,WAAW,CAAC;IACnB;;;;OAIG;IACI,SAAS,CAAC;IAtBnB;IACE,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC,oBAAQ;IAC9B,wDAAwD;IACjD,SAAS,CAAC,uBAAW;IAC5B,8DAA8D;IACvD,WAAW,CAAC,yBAAa;IAChC,8DAA8D;IACvD,WAAW,CAAC,yBAAa;IAChC;;;;OAIG;IACI,SAAS,CAAC,wBAAY,EAC3B;IAEJ,iEAAiE;IACjE,qBAAqB,IAAI,OAAO,CAE/B;IAED,0DAA0D;IAC1D,oBAAoB,IAAI,OAAO,CAE9B;IAED,mHAAmH;IACnH,OAAO,IAAI,OAAO,CAOjB;IAED,kDAAkD;IAClD,SAAS,IAAI,OAAO,CAEnB;IAED,mDAAmD;IACnD,SAAS,IAAI,OAAO,CAEnB;IAED,MAAM,CAAC,KAAK,cAEX;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAcrC;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,QAAQ,CAAC;QACjB,eAAe,CAAC,EAAE,iBAAiB,CAAC;QACpC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;KACxB,aAYA;IAED,OAAc,6BAA6B,CAAC,UAAU,EAAE,UAAU,GAAG,iBAAiB,CAErF;CACF"}
|
package/dest/tx/tx_receipt.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { BlockNumberSchema, EpochNumberSchema } from '@aztec/foundation/branded-types';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { RevertCode } from '../avm/revert_code.js';
|
|
4
3
|
import { BlockHash } from '../block/block_hash.js';
|
|
5
4
|
import { DebugLog } from '../logs/debug_log.js';
|
|
6
5
|
import { schemas } from '../schemas/schemas.js';
|
|
@@ -24,9 +23,13 @@ import { TxHash } from './tx_hash.js';
|
|
|
24
23
|
];
|
|
25
24
|
/** Execution result - only set when tx is in a block. */ export var TxExecutionResult = /*#__PURE__*/ function(TxExecutionResult) {
|
|
26
25
|
TxExecutionResult["SUCCESS"] = "success";
|
|
27
|
-
TxExecutionResult["
|
|
28
|
-
|
|
29
|
-
TxExecutionResult["
|
|
26
|
+
TxExecutionResult["REVERTED"] = "reverted";
|
|
27
|
+
/** @deprecated Use REVERTED instead. */ // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
28
|
+
TxExecutionResult["APP_LOGIC_REVERTED"] = "reverted";
|
|
29
|
+
/** @deprecated Use REVERTED instead. */ // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
30
|
+
TxExecutionResult["TEARDOWN_REVERTED"] = "reverted";
|
|
31
|
+
/** @deprecated Use REVERTED instead. */ // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
32
|
+
TxExecutionResult["BOTH_REVERTED"] = "reverted";
|
|
30
33
|
return TxExecutionResult;
|
|
31
34
|
}({});
|
|
32
35
|
/**
|
|
@@ -94,16 +97,6 @@ import { TxHash } from './tx_hash.js';
|
|
|
94
97
|
return new TxReceipt(fields.txHash, fields.status, fields.executionResult, fields.error, fields.transactionFee, fields.blockHash, fields.blockNumber, fields.epochNumber, fields.debugLogs);
|
|
95
98
|
}
|
|
96
99
|
static executionResultFromRevertCode(revertCode) {
|
|
97
|
-
|
|
98
|
-
return "success";
|
|
99
|
-
} else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
|
|
100
|
-
return "app_logic_reverted";
|
|
101
|
-
} else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
|
|
102
|
-
return "teardown_reverted";
|
|
103
|
-
} else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
|
|
104
|
-
return "both_reverted";
|
|
105
|
-
} else {
|
|
106
|
-
throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
|
|
107
|
-
}
|
|
100
|
+
return revertCode.isOK() ? "success" : "reverted";
|
|
108
101
|
}
|
|
109
102
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/stdlib",
|
|
3
|
-
"version": "4.2.0-nightly.
|
|
3
|
+
"version": "4.2.0-nightly.20260409",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"inherits": [
|
|
6
6
|
"../package.common.json",
|
|
@@ -90,14 +90,14 @@
|
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
92
|
"@aws-sdk/client-s3": "^3.892.0",
|
|
93
|
-
"@aztec/bb.js": "4.2.0-nightly.
|
|
94
|
-
"@aztec/blob-lib": "4.2.0-nightly.
|
|
95
|
-
"@aztec/constants": "4.2.0-nightly.
|
|
96
|
-
"@aztec/ethereum": "4.2.0-nightly.
|
|
97
|
-
"@aztec/foundation": "4.2.0-nightly.
|
|
98
|
-
"@aztec/l1-artifacts": "4.2.0-nightly.
|
|
99
|
-
"@aztec/noir-noirc_abi": "4.2.0-nightly.
|
|
100
|
-
"@aztec/validator-ha-signer": "4.2.0-nightly.
|
|
93
|
+
"@aztec/bb.js": "4.2.0-nightly.20260409",
|
|
94
|
+
"@aztec/blob-lib": "4.2.0-nightly.20260409",
|
|
95
|
+
"@aztec/constants": "4.2.0-nightly.20260409",
|
|
96
|
+
"@aztec/ethereum": "4.2.0-nightly.20260409",
|
|
97
|
+
"@aztec/foundation": "4.2.0-nightly.20260409",
|
|
98
|
+
"@aztec/l1-artifacts": "4.2.0-nightly.20260409",
|
|
99
|
+
"@aztec/noir-noirc_abi": "4.2.0-nightly.20260409",
|
|
100
|
+
"@aztec/validator-ha-signer": "4.2.0-nightly.20260409",
|
|
101
101
|
"@google-cloud/storage": "^7.15.0",
|
|
102
102
|
"axios": "^1.13.5",
|
|
103
103
|
"json-stringify-deterministic": "1.0.12",
|
package/src/abi/selector.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { bufferToHex } from '@aztec/foundation/string';
|
|
|
4
4
|
|
|
5
5
|
import { inspect } from 'util';
|
|
6
6
|
|
|
7
|
-
/** A selector is the
|
|
7
|
+
/** A selector is the low 4 bytes of the poseidon2 hash of a signature. */
|
|
8
8
|
export abstract class Selector {
|
|
9
9
|
/** The size of the selector in bytes. */
|
|
10
10
|
public static SIZE = 4;
|
package/src/avm/revert_code.ts
CHANGED
|
@@ -5,35 +5,17 @@ import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
|
|
|
5
5
|
import { inspect } from 'util';
|
|
6
6
|
import { z } from 'zod';
|
|
7
7
|
|
|
8
|
-
/**
|
|
9
|
-
* Tracks which revertible phases of a transaction's public execution reverted.
|
|
10
|
-
*
|
|
11
|
-
* A transaction executes in three sequential phases:
|
|
12
|
-
* 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
|
|
13
|
-
* 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
|
|
14
|
-
* 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
|
|
15
|
-
*
|
|
16
|
-
* Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
|
|
17
|
-
* entirely.
|
|
18
|
-
*/
|
|
8
|
+
/** Whether a transaction's public execution reverted. */
|
|
19
9
|
export enum RevertCodeEnum {
|
|
20
10
|
/** All phases completed successfully; no state was rolled back. */
|
|
21
11
|
OK = 0,
|
|
22
|
-
/**
|
|
23
|
-
|
|
24
|
-
/** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */
|
|
25
|
-
TEARDOWN_REVERTED = 2,
|
|
26
|
-
/** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */
|
|
27
|
-
BOTH_REVERTED = 3,
|
|
12
|
+
/** One or more revertible phases reverted; their state changes were discarded. */
|
|
13
|
+
REVERTED = 1,
|
|
28
14
|
}
|
|
29
15
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
(value as RevertCodeEnum) === RevertCodeEnum.APP_LOGIC_REVERTED ||
|
|
34
|
-
(value as RevertCodeEnum) === RevertCodeEnum.TEARDOWN_REVERTED ||
|
|
35
|
-
(value as RevertCodeEnum) === RevertCodeEnum.BOTH_REVERTED
|
|
36
|
-
);
|
|
16
|
+
/** Returns a valid RevertCodeEnum, coercing any value >= 1 to REVERTED. */
|
|
17
|
+
function toRevertCodeEnum(value: number): RevertCodeEnum {
|
|
18
|
+
return value >= 1 ? RevertCodeEnum.REVERTED : RevertCodeEnum.OK;
|
|
37
19
|
}
|
|
38
20
|
|
|
39
21
|
/**
|
|
@@ -45,9 +27,13 @@ export class RevertCode {
|
|
|
45
27
|
this.code = e.valueOf();
|
|
46
28
|
}
|
|
47
29
|
static readonly OK: RevertCode = new RevertCode(RevertCodeEnum.OK);
|
|
48
|
-
static readonly
|
|
49
|
-
|
|
50
|
-
static readonly
|
|
30
|
+
static readonly REVERTED: RevertCode = new RevertCode(RevertCodeEnum.REVERTED);
|
|
31
|
+
/** @deprecated Use REVERTED instead. */
|
|
32
|
+
static readonly APP_LOGIC_REVERTED: RevertCode = RevertCode.REVERTED;
|
|
33
|
+
/** @deprecated Use REVERTED instead. */
|
|
34
|
+
static readonly TEARDOWN_REVERTED: RevertCode = RevertCode.REVERTED;
|
|
35
|
+
/** @deprecated Use REVERTED instead. */
|
|
36
|
+
static readonly BOTH_REVERTED: RevertCode = RevertCode.REVERTED;
|
|
51
37
|
|
|
52
38
|
public getCode(): RevertCodeEnum {
|
|
53
39
|
return this.code;
|
|
@@ -65,12 +51,8 @@ export class RevertCode {
|
|
|
65
51
|
switch (this.code as RevertCodeEnum) {
|
|
66
52
|
case RevertCodeEnum.OK:
|
|
67
53
|
return 'OK';
|
|
68
|
-
case RevertCodeEnum.
|
|
69
|
-
return '
|
|
70
|
-
case RevertCodeEnum.TEARDOWN_REVERTED:
|
|
71
|
-
return 'Teardown reverted';
|
|
72
|
-
case RevertCodeEnum.BOTH_REVERTED:
|
|
73
|
-
return 'Both reverted';
|
|
54
|
+
case RevertCodeEnum.REVERTED:
|
|
55
|
+
return 'Reverted';
|
|
74
56
|
default:
|
|
75
57
|
return `Unknown RevertCode: ${this.code}`;
|
|
76
58
|
}
|
|
@@ -81,7 +63,11 @@ export class RevertCode {
|
|
|
81
63
|
}
|
|
82
64
|
|
|
83
65
|
static get schema(): ZodFor<RevertCode> {
|
|
84
|
-
return z
|
|
66
|
+
return z
|
|
67
|
+
.number()
|
|
68
|
+
.int()
|
|
69
|
+
.min(0)
|
|
70
|
+
.transform(value => new RevertCode(toRevertCodeEnum(value)));
|
|
85
71
|
}
|
|
86
72
|
|
|
87
73
|
/**
|
|
@@ -96,10 +82,10 @@ export class RevertCode {
|
|
|
96
82
|
return obj;
|
|
97
83
|
}
|
|
98
84
|
const code = typeof obj === 'number' ? obj : (obj.code ?? obj);
|
|
99
|
-
if (
|
|
85
|
+
if (typeof code !== 'number' || code < 0) {
|
|
100
86
|
throw new Error(`Invalid RevertCode: ${code}`);
|
|
101
87
|
}
|
|
102
|
-
return new RevertCode(code);
|
|
88
|
+
return new RevertCode(toRevertCodeEnum(code));
|
|
103
89
|
}
|
|
104
90
|
|
|
105
91
|
/**
|
|
@@ -131,10 +117,10 @@ export class RevertCode {
|
|
|
131
117
|
}
|
|
132
118
|
|
|
133
119
|
public static fromNumber(code: number): RevertCode {
|
|
134
|
-
if (
|
|
120
|
+
if (code < 0) {
|
|
135
121
|
throw new Error(`Invalid RevertCode: ${code}`);
|
|
136
122
|
}
|
|
137
|
-
return new RevertCode(code);
|
|
123
|
+
return new RevertCode(toRevertCodeEnum(code));
|
|
138
124
|
}
|
|
139
125
|
|
|
140
126
|
public static fromField(field: Fr): RevertCode {
|
|
@@ -152,7 +138,7 @@ export class RevertCode {
|
|
|
152
138
|
return RevertCode.fromNumber(code);
|
|
153
139
|
}
|
|
154
140
|
|
|
155
|
-
private static readonly NUM_OPTIONS =
|
|
141
|
+
private static readonly NUM_OPTIONS = 2;
|
|
156
142
|
static random(): RevertCode {
|
|
157
143
|
return new RevertCode(Math.floor(Math.random() * RevertCode.NUM_OPTIONS));
|
|
158
144
|
}
|
package/src/gas/gas_settings.ts
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
DEFAULT_DA_GAS_LIMIT,
|
|
3
|
-
DEFAULT_L2_GAS_LIMIT,
|
|
4
|
-
DEFAULT_TEARDOWN_DA_GAS_LIMIT,
|
|
5
|
-
DEFAULT_TEARDOWN_L2_GAS_LIMIT,
|
|
6
|
-
GAS_SETTINGS_LENGTH,
|
|
7
|
-
} from '@aztec/constants';
|
|
1
|
+
import { GAS_SETTINGS_LENGTH, MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT, MAX_PROCESSABLE_L2_GAS } from '@aztec/constants';
|
|
8
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
9
3
|
import { BufferReader, FieldReader, serializeToBuffer, serializeToFields } from '@aztec/foundation/serialize';
|
|
10
4
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
@@ -14,6 +8,21 @@ import { z } from 'zod';
|
|
|
14
8
|
import { Gas, GasDimensions } from './gas.js';
|
|
15
9
|
import { GasFees } from './gas_fees.js';
|
|
16
10
|
|
|
11
|
+
/** Approximate max DA gas limit. Arbitrary, assuming 4 blocks per checkpoint — users should use gas estimation. */
|
|
12
|
+
export const APPROXIMATE_MAX_DA_GAS_PER_BLOCK = Math.floor(MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT / 4);
|
|
13
|
+
/** Fallback teardown L2 gas limit. Arbitrary — users should use gas estimation. */
|
|
14
|
+
export const FALLBACK_TEARDOWN_L2_GAS_LIMIT = Math.floor(MAX_PROCESSABLE_L2_GAS / 8);
|
|
15
|
+
/** Fallback teardown DA gas limit. Arbitrary — users should use gas estimation. */
|
|
16
|
+
export const FALLBACK_TEARDOWN_DA_GAS_LIMIT = Math.floor(APPROXIMATE_MAX_DA_GAS_PER_BLOCK / 2);
|
|
17
|
+
|
|
18
|
+
// For gas estimation, we use intentionally high limits above what the network can process,
|
|
19
|
+
// so the simulation runs without hitting gas caps. Since teardown gas is counted towards total,
|
|
20
|
+
// the total estimation limit is teardown + max processable.
|
|
21
|
+
export const GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT = MAX_PROCESSABLE_L2_GAS;
|
|
22
|
+
export const GAS_ESTIMATION_L2_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT + MAX_PROCESSABLE_L2_GAS;
|
|
23
|
+
export const GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT = MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
|
|
24
|
+
export const GAS_ESTIMATION_DA_GAS_LIMIT = GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT + MAX_PROCESSABLE_DA_GAS_PER_CHECKPOINT;
|
|
25
|
+
|
|
17
26
|
// docs:start:gas_settings_vars
|
|
18
27
|
/** Gas usage and fees limits set by the transaction sender for different dimensions and phases. */
|
|
19
28
|
export class GasSettings {
|
|
@@ -95,18 +104,62 @@ export class GasSettings {
|
|
|
95
104
|
return new GasSettings(Gas.empty(), Gas.empty(), GasFees.empty(), GasFees.empty());
|
|
96
105
|
}
|
|
97
106
|
|
|
98
|
-
/**
|
|
99
|
-
|
|
107
|
+
/**
|
|
108
|
+
* Fills in gas limits high enough for transactions to be included in most cases.
|
|
109
|
+
* gasLimits is set to the maximum the protocol allows; since teardown gas is reserved
|
|
110
|
+
* from gasLimits during private execution (see gas_meter.nr), the effective gas available
|
|
111
|
+
* for app logic will be gasLimits - teardownGasLimits - privateOverhead.
|
|
112
|
+
* The DA gas limit is set to an approximate max per block assuming 4 blocks per checkpoint,
|
|
113
|
+
* since using the maximum per checkpoint would cause nodes to reject transactions.
|
|
114
|
+
* These values won't work if:
|
|
115
|
+
* - Teardown consumes more than the arbitrarily assigned fallback limits
|
|
116
|
+
* - The rest of the transaction consumes more than the remaining gas after teardown
|
|
117
|
+
* - The DA gas limit is too low for the transaction, while still within the checkpoint limit
|
|
118
|
+
*/
|
|
119
|
+
static fallback(overrides: {
|
|
120
|
+
gasLimits?: Gas;
|
|
121
|
+
teardownGasLimits?: Gas;
|
|
122
|
+
maxFeesPerGas: GasFees;
|
|
123
|
+
maxPriorityFeesPerGas?: GasFees;
|
|
124
|
+
}) {
|
|
125
|
+
return GasSettings.from({
|
|
126
|
+
gasLimits: overrides.gasLimits ?? {
|
|
127
|
+
l2Gas: MAX_PROCESSABLE_L2_GAS,
|
|
128
|
+
daGas: APPROXIMATE_MAX_DA_GAS_PER_BLOCK,
|
|
129
|
+
},
|
|
130
|
+
teardownGasLimits: overrides.teardownGasLimits ?? {
|
|
131
|
+
l2Gas: FALLBACK_TEARDOWN_L2_GAS_LIMIT,
|
|
132
|
+
daGas: FALLBACK_TEARDOWN_DA_GAS_LIMIT,
|
|
133
|
+
},
|
|
134
|
+
maxFeesPerGas: overrides.maxFeesPerGas,
|
|
135
|
+
maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty(),
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/**
|
|
140
|
+
* Gas settings for simulation/estimation only.
|
|
141
|
+
* Since teardown gas is reserved upfront from gasLimits during private execution (see gas_meter.nr),
|
|
142
|
+
* the effective gas available for app logic is gasLimits - teardownGasLimits - privateOverhead.
|
|
143
|
+
* To ensure estimation never hits gas caps, we set both limits above what the protocol allows:
|
|
144
|
+
* teardown gets MAX_PROCESSABLE and gasLimits gets teardown + MAX_PROCESSABLE, so the full
|
|
145
|
+
* processable amount remains available for each phase independently. To be used in conjunction
|
|
146
|
+
* with skipTxValidation: true during public simulation, or the node would reject the transaction
|
|
147
|
+
* outright due to gas limits being above protocol max.
|
|
148
|
+
*/
|
|
149
|
+
static forEstimation(overrides: {
|
|
100
150
|
gasLimits?: Gas;
|
|
101
151
|
teardownGasLimits?: Gas;
|
|
102
152
|
maxFeesPerGas: GasFees;
|
|
103
153
|
maxPriorityFeesPerGas?: GasFees;
|
|
104
154
|
}) {
|
|
105
155
|
return GasSettings.from({
|
|
106
|
-
gasLimits: overrides.gasLimits ?? {
|
|
156
|
+
gasLimits: overrides.gasLimits ?? {
|
|
157
|
+
l2Gas: GAS_ESTIMATION_L2_GAS_LIMIT,
|
|
158
|
+
daGas: GAS_ESTIMATION_DA_GAS_LIMIT,
|
|
159
|
+
},
|
|
107
160
|
teardownGasLimits: overrides.teardownGasLimits ?? {
|
|
108
|
-
l2Gas:
|
|
109
|
-
daGas:
|
|
161
|
+
l2Gas: GAS_ESTIMATION_TEARDOWN_L2_GAS_LIMIT,
|
|
162
|
+
daGas: GAS_ESTIMATION_TEARDOWN_DA_GAS_LIMIT,
|
|
110
163
|
},
|
|
111
164
|
maxFeesPerGas: overrides.maxFeesPerGas,
|
|
112
165
|
maxPriorityFeesPerGas: overrides.maxPriorityFeesPerGas ?? GasFees.empty(),
|
package/src/tests/factories.ts
CHANGED
|
@@ -234,7 +234,7 @@ export function makeTxContext(seed: number = 1): TxContext {
|
|
|
234
234
|
* Creates a default instance of gas settings. No seed value is used to ensure we allocate a sensible amount of gas for testing.
|
|
235
235
|
*/
|
|
236
236
|
export function makeGasSettings() {
|
|
237
|
-
return GasSettings.
|
|
237
|
+
return GasSettings.fallback({ maxFeesPerGas: new GasFees(10, 10) });
|
|
238
238
|
}
|
|
239
239
|
|
|
240
240
|
/**
|
package/src/tests/mocks.ts
CHANGED
|
@@ -134,7 +134,7 @@ export const mockTx = async (
|
|
|
134
134
|
const data = PrivateKernelTailCircuitPublicInputs.empty();
|
|
135
135
|
const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
|
|
136
136
|
data.constants.anchorBlockHeader = anchorBlockHeader;
|
|
137
|
-
data.constants.txContext.gasSettings = GasSettings.
|
|
137
|
+
data.constants.txContext.gasSettings = GasSettings.fallback({ gasLimits, maxFeesPerGas, maxPriorityFeesPerGas });
|
|
138
138
|
data.feePayer = feePayer ?? (await AztecAddress.random());
|
|
139
139
|
data.gasUsed = gasUsed;
|
|
140
140
|
data.constants.txContext.chainId = chainId;
|
|
@@ -200,7 +200,7 @@ export async function mockProcessedTx({
|
|
|
200
200
|
db,
|
|
201
201
|
chainId = Fr.ZERO,
|
|
202
202
|
version = Fr.ZERO,
|
|
203
|
-
gasSettings = GasSettings.
|
|
203
|
+
gasSettings = GasSettings.fallback({ maxFeesPerGas: new GasFees(10, 10) }),
|
|
204
204
|
vkTreeRoot = Fr.ZERO,
|
|
205
205
|
protocolContracts = makeProtocolContracts(seed + 0x100),
|
|
206
206
|
globalVariables = GlobalVariables.empty(),
|
package/src/tx/simulated_tx.ts
CHANGED
|
@@ -38,7 +38,11 @@ export type ContractOverrides = Record<
|
|
|
38
38
|
* set, it *must* be run without the kernel circuits, or validations will fail
|
|
39
39
|
*/
|
|
40
40
|
export class SimulationOverrides {
|
|
41
|
-
|
|
41
|
+
public contracts?: ContractOverrides;
|
|
42
|
+
|
|
43
|
+
constructor(contracts: ContractOverrides = {}) {
|
|
44
|
+
this.contracts = Object.keys(contracts).length > 0 ? contracts : undefined;
|
|
45
|
+
}
|
|
42
46
|
|
|
43
47
|
static get schema() {
|
|
44
48
|
return z
|
package/src/tx/tx_receipt.ts
CHANGED
|
@@ -31,9 +31,16 @@ export const SortedTxStatuses: TxStatus[] = [
|
|
|
31
31
|
/** Execution result - only set when tx is in a block. */
|
|
32
32
|
export enum TxExecutionResult {
|
|
33
33
|
SUCCESS = 'success',
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
REVERTED = 'reverted',
|
|
35
|
+
/** @deprecated Use REVERTED instead. */
|
|
36
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
37
|
+
APP_LOGIC_REVERTED = 'reverted',
|
|
38
|
+
/** @deprecated Use REVERTED instead. */
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
40
|
+
TEARDOWN_REVERTED = 'reverted',
|
|
41
|
+
/** @deprecated Use REVERTED instead. */
|
|
42
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
43
|
+
BOTH_REVERTED = 'reverted',
|
|
37
44
|
}
|
|
38
45
|
|
|
39
46
|
/**
|
|
@@ -143,16 +150,6 @@ export class TxReceipt {
|
|
|
143
150
|
}
|
|
144
151
|
|
|
145
152
|
public static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult {
|
|
146
|
-
|
|
147
|
-
return TxExecutionResult.SUCCESS;
|
|
148
|
-
} else if (revertCode.equals(RevertCode.APP_LOGIC_REVERTED)) {
|
|
149
|
-
return TxExecutionResult.APP_LOGIC_REVERTED;
|
|
150
|
-
} else if (revertCode.equals(RevertCode.TEARDOWN_REVERTED)) {
|
|
151
|
-
return TxExecutionResult.TEARDOWN_REVERTED;
|
|
152
|
-
} else if (revertCode.equals(RevertCode.BOTH_REVERTED)) {
|
|
153
|
-
return TxExecutionResult.BOTH_REVERTED;
|
|
154
|
-
} else {
|
|
155
|
-
throw new Error(`Unknown revert code: ${revertCode.getCode()}`);
|
|
156
|
-
}
|
|
153
|
+
return revertCode.isOK() ? TxExecutionResult.SUCCESS : TxExecutionResult.REVERTED;
|
|
157
154
|
}
|
|
158
155
|
}
|