@aztec/end-to-end 0.0.1-commit.03f7ef2 → 0.0.1-commit.1142ef1
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/bench/client_flows/client_flows_benchmark.js +1 -1
- package/dest/bench/client_flows/data_extractor.js +3 -1
- package/dest/bench/utils.d.ts +5 -5
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +18 -11
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +10 -4
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +34 -18
- package/dest/e2e_epochs/epochs_test.js +1 -1
- package/dest/e2e_fees/fees_test.d.ts +1 -1
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +3 -3
- package/dest/e2e_l1_publisher/write_json.d.ts +1 -1
- package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -1
- package/dest/e2e_l1_publisher/write_json.js +2 -5
- package/dest/e2e_p2p/p2p_network.js +1 -1
- package/dest/e2e_p2p/shared.d.ts +1 -1
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +4 -4
- package/dest/fixtures/e2e_prover_test.d.ts +1 -1
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +1 -2
- package/dest/fixtures/fixtures.d.ts +2 -2
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +1 -1
- package/dest/fixtures/snapshot_manager.d.ts +1 -1
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +4 -9
- package/dest/fixtures/utils.d.ts +1 -4
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +1 -5
- package/dest/quality_of_service/grafana_client.d.ts +41 -0
- package/dest/quality_of_service/grafana_client.d.ts.map +1 -0
- package/dest/quality_of_service/{alert_checker.js → grafana_client.js} +1 -1
- package/dest/shared/cross_chain_test_harness.d.ts +3 -3
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +2 -2
- package/dest/shared/index.d.ts +2 -2
- package/dest/shared/index.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.d.ts +3 -28
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +39 -21
- package/dest/spartan/setup_test_wallets.d.ts +4 -3
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/utils.d.ts +24 -2
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +42 -3
- package/package.json +38 -38
- package/src/bench/client_flows/client_flows_benchmark.ts +1 -1
- package/src/bench/client_flows/data_extractor.ts +1 -1
- package/src/bench/utils.ts +22 -14
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +40 -22
- package/src/e2e_epochs/epochs_test.ts +1 -1
- package/src/e2e_fees/fees_test.ts +3 -5
- package/src/e2e_l1_publisher/write_json.ts +2 -5
- package/src/e2e_p2p/p2p_network.ts +1 -1
- package/src/e2e_p2p/shared.ts +6 -5
- package/src/fixtures/e2e_prover_test.ts +0 -1
- package/src/fixtures/fixtures.ts +1 -1
- package/src/fixtures/snapshot_manager.ts +4 -9
- package/src/fixtures/utils.ts +2 -8
- package/src/quality_of_service/{alert_checker.ts → grafana_client.ts} +1 -1
- package/src/shared/cross_chain_test_harness.ts +3 -9
- package/src/shared/index.ts +1 -1
- package/src/shared/uniswap_l1_l2.ts +46 -58
- package/src/spartan/setup_test_wallets.ts +7 -1
- package/src/spartan/utils.ts +83 -2
- package/dest/quality_of_service/alert_checker.d.ts +0 -41
- package/dest/quality_of_service/alert_checker.d.ts.map +0 -1
package/dest/spartan/utils.d.ts
CHANGED
|
@@ -84,6 +84,20 @@ export declare function waitForResourceByLabel({ resource, label, namespace, con
|
|
|
84
84
|
condition?: string;
|
|
85
85
|
timeout?: string;
|
|
86
86
|
}): Promise<string>;
|
|
87
|
+
export declare function waitForResourceByName({ resource, name, namespace, condition, timeout }: {
|
|
88
|
+
resource: string;
|
|
89
|
+
name: string;
|
|
90
|
+
namespace: string;
|
|
91
|
+
condition?: string;
|
|
92
|
+
timeout?: string;
|
|
93
|
+
}): Promise<string>;
|
|
94
|
+
export declare function waitForResourcesByName({ resource, names, namespace, condition, timeout }: {
|
|
95
|
+
resource: string;
|
|
96
|
+
names: string[];
|
|
97
|
+
namespace: string;
|
|
98
|
+
condition?: string;
|
|
99
|
+
timeout?: string;
|
|
100
|
+
}): Promise<void>;
|
|
87
101
|
export declare function getChartDir(spartanDir: string, chartName: string): string;
|
|
88
102
|
export declare function uninstallChaosMesh(instanceName: string, namespace: string, logger: Logger): Promise<void>;
|
|
89
103
|
/**
|
|
@@ -120,6 +134,13 @@ export declare function applyProverFailure({ namespace, spartanDir, durationSeco
|
|
|
120
134
|
durationSeconds: number;
|
|
121
135
|
logger: Logger;
|
|
122
136
|
}): Promise<string>;
|
|
137
|
+
export declare function applyValidatorFailure({ namespace, spartanDir, logger, values, instanceName }: {
|
|
138
|
+
namespace: string;
|
|
139
|
+
spartanDir: string;
|
|
140
|
+
logger: Logger;
|
|
141
|
+
values?: Record<string, string | number>;
|
|
142
|
+
instanceName?: string;
|
|
143
|
+
}): Promise<string>;
|
|
123
144
|
export declare function applyProverKill({ namespace, spartanDir, logger, values }: {
|
|
124
145
|
namespace: string;
|
|
125
146
|
spartanDir: string;
|
|
@@ -140,12 +161,13 @@ export declare function applyBootNodeFailure({ instanceName, namespace, spartanD
|
|
|
140
161
|
logger: Logger;
|
|
141
162
|
values?: Record<string, string | number>;
|
|
142
163
|
}): Promise<string>;
|
|
143
|
-
export declare function applyValidatorKill({ instanceName, namespace, spartanDir, logger, values }: {
|
|
164
|
+
export declare function applyValidatorKill({ instanceName, namespace, spartanDir, logger, values, clean }: {
|
|
144
165
|
instanceName?: string;
|
|
145
166
|
namespace: string;
|
|
146
167
|
spartanDir: string;
|
|
147
168
|
logger: Logger;
|
|
148
169
|
values?: Record<string, string | number>;
|
|
170
|
+
clean?: boolean;
|
|
149
171
|
}): Promise<string>;
|
|
150
172
|
export declare function applyNetworkShaping({ instanceName, valuesFile, namespace, spartanDir, logger }: {
|
|
151
173
|
instanceName?: string;
|
|
@@ -228,4 +250,4 @@ export declare function getNodeClient(env: TestConfig, index?: number): Promise<
|
|
|
228
250
|
process: ChildProcess;
|
|
229
251
|
}>;
|
|
230
252
|
export {};
|
|
231
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
253
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcGFydGFuL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFLcEQsT0FBTyxFQUNMLEtBQUssY0FBYyxFQUNuQixLQUFLLG9CQUFvQixFQUV6QixxQkFBcUIsRUFDdEIsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUF5QixNQUFNLGVBQWUsQ0FBQztBQUlwRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBTXhCLFFBQUEsTUFBTSxnQkFBZ0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVNwQixDQUFDO0FBRUgsTUFBTSxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sZ0JBQWdCLENBQUMsQ0FBQztBQUUxRCx3QkFBZ0IsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLE9BQU8sR0FBRyxVQUFVLENBSXpEO0FBeUJELHdCQUFnQixXQUFXLFdBRTFCO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLFdBQVcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxtQkFFdkY7QUFFRCx3QkFBZ0IsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLE1B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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spartan/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAyB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;EASpB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAIzD;AAyBD,wBAAgB,WAAW,WAE1B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAEvF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAG5G;AAED,wBAAsB,gBAAgB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,aAAa,EACb,QAAQ,EACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CA6DD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+BrF;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAI;;;GAMlE;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM;;;GAM5D;AAED,wBAAsB,oBAAoB,CAAC,EACzC,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAa,EACd,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,mBAOA;AAED,wBAAsB,qBAAqB,CAAC,EAC1C,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAc,EACd,KAAa,EACd,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/spartan/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAyB,MAAM,eAAe,CAAC;AAIpE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;EASpB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAIzD;AAyBD,wBAAgB,WAAW,WAE1B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAEvF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAG5G;AAED,wBAAsB,gBAAgB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,aAAa,EACb,QAAQ,EACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CA6DD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+BrF;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,SAAI;;;GAMlE;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM;;;GAM5D;AAED,wBAAsB,oBAAoB,CAAC,EACzC,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAa,EACd,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,mBAOA;AAED,wBAAsB,qBAAqB,CAAC,EAC1C,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAc,EACd,KAAa,EACd,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,mBAiBA;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,QAAQ,EACR,KAAK,EACL,SAAS,EACT,SAAmB,EACnB,OAAe,EAChB,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,mBAKA;AAED,wBAAsB,qBAAqB,CAAC,EAC1C,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,SAAmB,EACnB,OAAe,EAChB,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,mBAKA;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,QAAQ,EACR,KAAK,EACL,SAAS,EACT,SAAmB,EACnB,OAAe,EAChB,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,iBAmBA;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAEhE;AA6ED,wBAAsB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAwB/F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,YAAY,EACZ,eAAe,EACf,UAAU,EACV,YAAY,EACZ,OAAe,EACf,KAAY,EACZ,MAAW,EACX,MAAM,EACP,EAAE;IACD,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,mBAaA;AAED,wBAAgB,kBAAkB,CAAC,EACjC,SAAS,EACT,UAAU,EACV,eAAe,EACf,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB,mBAWA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACN,YAAY,EACb,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,mBASA;AAED,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC1C,mBAWA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC1C,mBAUA;AAED,wBAAgB,oBAAoB,CAAC,EACnC,YAAkC,EAClC,SAAS,EACT,UAAU,EACV,eAAe,EACf,MAAM,EACN,MAAM,EACP,EAAE;IACD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC1C,mBAYA;AAED,wBAAgB,kBAAkB,CAAC,EACjC,YAA+B,EAC/B,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACN,KAAY,EACb,EAAE;IACD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,mBAUA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,YAAgC,EAChC,UAAU,EACV,SAAS,EACT,UAAU,EACV,MAAM,EACP,EAAE;IACD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,mBAQA;AAED,wBAAsB,qBAAqB,CACzC,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,iBAef;AAED,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAajE;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,SAAS,EACT,UAAU,EACV,MAAM,EACN,QAAY,EACZ,iBAAsB,EACtB,WAAuB,EACvB,QAA2G,EAC3G,kBAAkB,EAClB,aAAsE,EACtE,OAAO,EACP,OAAe,EACf,WAAkB,EAClB,iBAAiE,EAClE,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,iBAgHA;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBAQ3E;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB,iBAgCA;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,iBA+BxE;AAED,wBAAsB,8BAA8B,CAClD,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,iBAgBf;AAED,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,qBA4BpD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,mCAK5F;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,mCAElD;AAED,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CA2BpH;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,UAAU;AACf,gDAAgD;AAChD,SAAS,CAAC,EAAE,YAAY,EAAE,GACzB,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,gBAAgB,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,CAAA;CAAE,CAAC,CAyB5E;AAED,4DAA4D;AAC5D,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAsB5F;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,iBAcpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAW1C;AAED,6EAA6E;AAC7E,wBAAsB,aAAa,CACjC,GAAG,EAAE,UAAU,EACf,KAAK,GAAE,MAAU,GAChB,OAAO,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,CA0BlG"}
|
package/dest/spartan/utils.js
CHANGED
|
@@ -187,7 +187,10 @@ export async function deleteResourceByName({ resource, namespace, name, force =
|
|
|
187
187
|
}
|
|
188
188
|
export async function deleteResourceByLabel({ resource, namespace, label, timeout = '5m', force = false }) {
|
|
189
189
|
try {
|
|
190
|
-
|
|
190
|
+
// Match both plain and group-qualified names (e.g., "podchaos" or "podchaos.chaos-mesh.org")
|
|
191
|
+
const escaped = resource.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
192
|
+
const regex = `(^|\\.)${escaped}(\\.|$)`;
|
|
193
|
+
await execAsync(`kubectl api-resources --no-headers -o name | grep -Eq '${regex}'`);
|
|
191
194
|
} catch (error) {
|
|
192
195
|
logger.warn(`Resource type '${resource}' not found in cluster, skipping deletion ${error}`);
|
|
193
196
|
return '';
|
|
@@ -203,6 +206,31 @@ export async function waitForResourceByLabel({ resource, label, namespace, condi
|
|
|
203
206
|
const { stdout } = await execAsync(command);
|
|
204
207
|
return stdout;
|
|
205
208
|
}
|
|
209
|
+
export async function waitForResourceByName({ resource, name, namespace, condition = 'Ready', timeout = '10m' }) {
|
|
210
|
+
const command = `kubectl wait ${resource}/${name} --for=condition=${condition} -n ${namespace} --timeout=${timeout}`;
|
|
211
|
+
logger.info(`command: ${command}`);
|
|
212
|
+
const { stdout } = await execAsync(command);
|
|
213
|
+
return stdout;
|
|
214
|
+
}
|
|
215
|
+
export async function waitForResourcesByName({ resource, names, namespace, condition = 'Ready', timeout = '10m' }) {
|
|
216
|
+
if (!names.length) {
|
|
217
|
+
throw new Error(`No ${resource} names provided to waitForResourcesByName`);
|
|
218
|
+
}
|
|
219
|
+
// Wait all in parallel; if any fails, surface which one.
|
|
220
|
+
await Promise.all(names.map(async (name)=>{
|
|
221
|
+
try {
|
|
222
|
+
await waitForResourceByName({
|
|
223
|
+
resource,
|
|
224
|
+
name,
|
|
225
|
+
namespace,
|
|
226
|
+
condition,
|
|
227
|
+
timeout
|
|
228
|
+
});
|
|
229
|
+
} catch (err) {
|
|
230
|
+
throw new Error(`Failed waiting for ${resource}/${name} condition=${condition} timeout=${timeout} namespace=${namespace}: ${String(err)}`);
|
|
231
|
+
}
|
|
232
|
+
}));
|
|
233
|
+
}
|
|
206
234
|
export function getChartDir(spartanDir, chartName) {
|
|
207
235
|
return path.join(spartanDir.trim(), chartName);
|
|
208
236
|
}
|
|
@@ -319,6 +347,16 @@ export function applyProverFailure({ namespace, spartanDir, durationSeconds, log
|
|
|
319
347
|
logger
|
|
320
348
|
});
|
|
321
349
|
}
|
|
350
|
+
export function applyValidatorFailure({ namespace, spartanDir, logger, values, instanceName }) {
|
|
351
|
+
return installChaosMeshChart({
|
|
352
|
+
instanceName: instanceName ?? 'validator-failure',
|
|
353
|
+
targetNamespace: namespace,
|
|
354
|
+
valuesFile: 'validator-failure.yaml',
|
|
355
|
+
helmChartDir: getChartDir(spartanDir, 'aztec-chaos-scenarios'),
|
|
356
|
+
values,
|
|
357
|
+
logger
|
|
358
|
+
});
|
|
359
|
+
}
|
|
322
360
|
export function applyProverKill({ namespace, spartanDir, logger, values }) {
|
|
323
361
|
return installChaosMeshChart({
|
|
324
362
|
instanceName: 'prover-kill',
|
|
@@ -355,12 +393,13 @@ export function applyBootNodeFailure({ instanceName = 'boot-node-failure', names
|
|
|
355
393
|
logger
|
|
356
394
|
});
|
|
357
395
|
}
|
|
358
|
-
export function applyValidatorKill({ instanceName = 'validator-kill', namespace, spartanDir, logger, values }) {
|
|
396
|
+
export function applyValidatorKill({ instanceName = 'validator-kill', namespace, spartanDir, logger, values, clean = true }) {
|
|
359
397
|
return installChaosMeshChart({
|
|
360
|
-
instanceName,
|
|
398
|
+
instanceName: instanceName ?? 'validator-kill',
|
|
361
399
|
targetNamespace: namespace,
|
|
362
400
|
valuesFile: 'validator-kill.yaml',
|
|
363
401
|
helmChartDir: getChartDir(spartanDir, 'aztec-chaos-scenarios'),
|
|
402
|
+
clean,
|
|
364
403
|
logger,
|
|
365
404
|
values
|
|
366
405
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/end-to-end",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.1142ef1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": "./dest/index.js",
|
|
6
6
|
"inherits": [
|
|
@@ -25,43 +25,43 @@
|
|
|
25
25
|
"formatting": "run -T prettier --check ./src && run -T eslint ./src"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@aztec/accounts": "0.0.1-commit.
|
|
29
|
-
"@aztec/archiver": "0.0.1-commit.
|
|
30
|
-
"@aztec/aztec": "0.0.1-commit.
|
|
31
|
-
"@aztec/aztec-node": "0.0.1-commit.
|
|
32
|
-
"@aztec/aztec.js": "0.0.1-commit.
|
|
33
|
-
"@aztec/bb-prover": "0.0.1-commit.
|
|
34
|
-
"@aztec/bb.js": "0.0.1-commit.
|
|
35
|
-
"@aztec/blob-client": "0.0.1-commit.
|
|
36
|
-
"@aztec/blob-lib": "0.0.1-commit.
|
|
37
|
-
"@aztec/bot": "0.0.1-commit.
|
|
38
|
-
"@aztec/cli": "0.0.1-commit.
|
|
39
|
-
"@aztec/constants": "0.0.1-commit.
|
|
40
|
-
"@aztec/entrypoints": "0.0.1-commit.
|
|
41
|
-
"@aztec/epoch-cache": "0.0.1-commit.
|
|
42
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
43
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
44
|
-
"@aztec/kv-store": "0.0.1-commit.
|
|
45
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
46
|
-
"@aztec/merkle-tree": "0.0.1-commit.
|
|
47
|
-
"@aztec/node-keystore": "0.0.1-commit.
|
|
48
|
-
"@aztec/noir-contracts.js": "0.0.1-commit.
|
|
49
|
-
"@aztec/noir-noirc_abi": "0.0.1-commit.
|
|
50
|
-
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.
|
|
51
|
-
"@aztec/noir-test-contracts.js": "0.0.1-commit.
|
|
52
|
-
"@aztec/p2p": "0.0.1-commit.
|
|
53
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
54
|
-
"@aztec/prover-client": "0.0.1-commit.
|
|
55
|
-
"@aztec/prover-node": "0.0.1-commit.
|
|
56
|
-
"@aztec/pxe": "0.0.1-commit.
|
|
57
|
-
"@aztec/sequencer-client": "0.0.1-commit.
|
|
58
|
-
"@aztec/simulator": "0.0.1-commit.
|
|
59
|
-
"@aztec/slasher": "0.0.1-commit.
|
|
60
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
61
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
62
|
-
"@aztec/test-wallet": "0.0.1-commit.
|
|
63
|
-
"@aztec/validator-client": "0.0.1-commit.
|
|
64
|
-
"@aztec/world-state": "0.0.1-commit.
|
|
28
|
+
"@aztec/accounts": "0.0.1-commit.1142ef1",
|
|
29
|
+
"@aztec/archiver": "0.0.1-commit.1142ef1",
|
|
30
|
+
"@aztec/aztec": "0.0.1-commit.1142ef1",
|
|
31
|
+
"@aztec/aztec-node": "0.0.1-commit.1142ef1",
|
|
32
|
+
"@aztec/aztec.js": "0.0.1-commit.1142ef1",
|
|
33
|
+
"@aztec/bb-prover": "0.0.1-commit.1142ef1",
|
|
34
|
+
"@aztec/bb.js": "0.0.1-commit.1142ef1",
|
|
35
|
+
"@aztec/blob-client": "0.0.1-commit.1142ef1",
|
|
36
|
+
"@aztec/blob-lib": "0.0.1-commit.1142ef1",
|
|
37
|
+
"@aztec/bot": "0.0.1-commit.1142ef1",
|
|
38
|
+
"@aztec/cli": "0.0.1-commit.1142ef1",
|
|
39
|
+
"@aztec/constants": "0.0.1-commit.1142ef1",
|
|
40
|
+
"@aztec/entrypoints": "0.0.1-commit.1142ef1",
|
|
41
|
+
"@aztec/epoch-cache": "0.0.1-commit.1142ef1",
|
|
42
|
+
"@aztec/ethereum": "0.0.1-commit.1142ef1",
|
|
43
|
+
"@aztec/foundation": "0.0.1-commit.1142ef1",
|
|
44
|
+
"@aztec/kv-store": "0.0.1-commit.1142ef1",
|
|
45
|
+
"@aztec/l1-artifacts": "0.0.1-commit.1142ef1",
|
|
46
|
+
"@aztec/merkle-tree": "0.0.1-commit.1142ef1",
|
|
47
|
+
"@aztec/node-keystore": "0.0.1-commit.1142ef1",
|
|
48
|
+
"@aztec/noir-contracts.js": "0.0.1-commit.1142ef1",
|
|
49
|
+
"@aztec/noir-noirc_abi": "0.0.1-commit.1142ef1",
|
|
50
|
+
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.1142ef1",
|
|
51
|
+
"@aztec/noir-test-contracts.js": "0.0.1-commit.1142ef1",
|
|
52
|
+
"@aztec/p2p": "0.0.1-commit.1142ef1",
|
|
53
|
+
"@aztec/protocol-contracts": "0.0.1-commit.1142ef1",
|
|
54
|
+
"@aztec/prover-client": "0.0.1-commit.1142ef1",
|
|
55
|
+
"@aztec/prover-node": "0.0.1-commit.1142ef1",
|
|
56
|
+
"@aztec/pxe": "0.0.1-commit.1142ef1",
|
|
57
|
+
"@aztec/sequencer-client": "0.0.1-commit.1142ef1",
|
|
58
|
+
"@aztec/simulator": "0.0.1-commit.1142ef1",
|
|
59
|
+
"@aztec/slasher": "0.0.1-commit.1142ef1",
|
|
60
|
+
"@aztec/stdlib": "0.0.1-commit.1142ef1",
|
|
61
|
+
"@aztec/telemetry-client": "0.0.1-commit.1142ef1",
|
|
62
|
+
"@aztec/test-wallet": "0.0.1-commit.1142ef1",
|
|
63
|
+
"@aztec/validator-client": "0.0.1-commit.1142ef1",
|
|
64
|
+
"@aztec/world-state": "0.0.1-commit.1142ef1",
|
|
65
65
|
"@iarna/toml": "^2.2.5",
|
|
66
66
|
"@jest/globals": "^30.0.0",
|
|
67
67
|
"@noble/curves": "=1.0.0",
|
|
@@ -439,7 +439,7 @@ export class ClientFlowsBenchmark {
|
|
|
439
439
|
public async getPrivateFPCPaymentMethodForWallet(wallet: Wallet, sender: AztecAddress) {
|
|
440
440
|
// The private fee paying method assembled on the app side requires knowledge of the maximum
|
|
441
441
|
// fee the user is willing to pay
|
|
442
|
-
const maxFeesPerGas = (await this.aztecNode.
|
|
442
|
+
const maxFeesPerGas = (await this.aztecNode.getCurrentMinFees()).mul(1.5);
|
|
443
443
|
const gasSettings = GasSettings.default({ maxFeesPerGas });
|
|
444
444
|
return new PrivateFeePaymentMethod(this.bananaFPC.address, sender, wallet, gasSettings);
|
|
445
445
|
}
|
|
@@ -22,7 +22,7 @@ async function main() {
|
|
|
22
22
|
logger.info(`Flows in ${ivcFolder}: \n${flows.map(flowName => `\t- ${flowName}`).join('\n')}`);
|
|
23
23
|
const simulator = new WASMSimulator();
|
|
24
24
|
const log = proxyLogger.createLogger('bb:prover');
|
|
25
|
-
const prover = new BBBundlePrivateKernelProver(simulator, log);
|
|
25
|
+
const prover = new BBBundlePrivateKernelProver(simulator, { logger: log });
|
|
26
26
|
|
|
27
27
|
const userLog = createLogger('chonk_flows:data_processor');
|
|
28
28
|
|
package/src/bench/utils.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { AztecNodeService } from '@aztec/aztec-node';
|
|
2
|
+
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
2
3
|
import { BatchCall, type SentTx, type WaitOpts } from '@aztec/aztec.js/contracts';
|
|
3
4
|
import { mean, stdDev, times } from '@aztec/foundation/collection';
|
|
4
5
|
import { BenchmarkingContract } from '@aztec/noir-test-contracts.js/Benchmarking';
|
|
5
|
-
import type {
|
|
6
|
+
import type { MetricDefinition } from '@aztec/telemetry-client';
|
|
6
7
|
import type { BenchmarkDataPoint, BenchmarkMetricsType, BenchmarkTelemetryClient } from '@aztec/telemetry-client/bench';
|
|
7
8
|
|
|
8
9
|
import { mkdirSync, writeFileSync } from 'fs';
|
|
@@ -15,7 +16,7 @@ import { type EndToEndContext, type SetupOptions, setup } from '../fixtures/util
|
|
|
15
16
|
*/
|
|
16
17
|
export async function benchmarkSetup(
|
|
17
18
|
opts: Partial<SetupOptions> & {
|
|
18
|
-
/** What metrics to export */ metrics: (
|
|
19
|
+
/** What metrics to export */ metrics: (MetricDefinition | MetricFilter)[];
|
|
19
20
|
/** Where to output the benchmark data (defaults to BENCH_OUTPUT or bench.json) */
|
|
20
21
|
benchOutput?: string;
|
|
21
22
|
},
|
|
@@ -46,7 +47,7 @@ export async function benchmarkSetup(
|
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
type MetricFilter = {
|
|
49
|
-
source:
|
|
50
|
+
source: MetricDefinition;
|
|
50
51
|
transform: (value: number) => number;
|
|
51
52
|
name: string;
|
|
52
53
|
unit?: string;
|
|
@@ -61,17 +62,21 @@ export type GithubActionBenchmarkResult = {
|
|
|
61
62
|
extra?: string;
|
|
62
63
|
};
|
|
63
64
|
|
|
65
|
+
function isMetricDefinition(f: MetricDefinition | MetricFilter): f is MetricDefinition {
|
|
66
|
+
return 'description' in f;
|
|
67
|
+
}
|
|
68
|
+
|
|
64
69
|
function formatMetricsForGithubBenchmarkAction(
|
|
65
70
|
data: BenchmarkMetricsType,
|
|
66
|
-
filter: (
|
|
71
|
+
filter: (MetricDefinition | MetricFilter)[],
|
|
67
72
|
): GithubActionBenchmarkResult[] {
|
|
68
73
|
const allFilters: MetricFilter[] = filter.map(f =>
|
|
69
|
-
|
|
74
|
+
isMetricDefinition(f) ? { name: f.name, source: f, transform: (x: number) => x, unit: f.unit } : f,
|
|
70
75
|
);
|
|
71
76
|
return data.flatMap(meter => {
|
|
72
77
|
return meter.metrics
|
|
73
|
-
.filter(metric => allFilters.map(f => f.source).includes(metric.name
|
|
74
|
-
.map(metric => [metric, allFilters.find(f => f.source === metric.name)!] as const)
|
|
78
|
+
.filter(metric => allFilters.map(f => f.source.name).includes(metric.name))
|
|
79
|
+
.map(metric => [metric, allFilters.find(f => f.source.name === metric.name)!] as const)
|
|
75
80
|
.map(([metric, filter]) => ({
|
|
76
81
|
name: `${meter.name}/${filter.name}`,
|
|
77
82
|
unit: filter.unit ?? metric.unit ?? 'unknown',
|
|
@@ -103,19 +108,22 @@ function getMetricValues(points: BenchmarkDataPoint[]) {
|
|
|
103
108
|
* @param heavyPublicCompute - Whether the transactions include heavy public compute (like a big sha256).
|
|
104
109
|
* @returns A BatchCall instance.
|
|
105
110
|
*/
|
|
106
|
-
function makeCall(
|
|
111
|
+
async function makeCall(
|
|
107
112
|
index: number,
|
|
108
113
|
context: EndToEndContext,
|
|
109
114
|
contract: BenchmarkingContract,
|
|
110
115
|
heavyPublicCompute: boolean,
|
|
111
116
|
) {
|
|
112
|
-
const [owner] = context.accounts;
|
|
113
117
|
if (heavyPublicCompute) {
|
|
114
118
|
return new BatchCall(context.wallet, [contract.methods.sha256_hash_1024(randomBytesAsBigInts(1024))]);
|
|
115
119
|
} else {
|
|
120
|
+
// We use random address for the new note owner because we can emit at most UNFINALIZED_TAGGING_INDEXES_WINDOW_LEN
|
|
121
|
+
// logs for a given sender-recipient-contract tuple.
|
|
122
|
+
const ownerOfNewNote = await AztecAddress.random();
|
|
123
|
+
const [ownerOfBalance] = context.accounts;
|
|
116
124
|
return new BatchCall(context.wallet, [
|
|
117
|
-
contract.methods.create_note(
|
|
118
|
-
contract.methods.increment_balance(
|
|
125
|
+
contract.methods.create_note(ownerOfNewNote, index + 1),
|
|
126
|
+
contract.methods.increment_balance(ownerOfBalance, index + 1),
|
|
119
127
|
]);
|
|
120
128
|
}
|
|
121
129
|
}
|
|
@@ -129,13 +137,13 @@ function makeCall(
|
|
|
129
137
|
* @param heavyPublicCompute - Whether the transactions include heavy public compute (like a big sha256).
|
|
130
138
|
* @returns Array of sent txs.
|
|
131
139
|
*/
|
|
132
|
-
export function sendTxs(
|
|
140
|
+
export async function sendTxs(
|
|
133
141
|
txCount: number,
|
|
134
142
|
context: EndToEndContext,
|
|
135
143
|
contract: BenchmarkingContract,
|
|
136
144
|
heavyPublicCompute: boolean = false,
|
|
137
|
-
): SentTx[] {
|
|
138
|
-
const calls = times(txCount, index => makeCall(index, context, contract, heavyPublicCompute));
|
|
145
|
+
): Promise<SentTx[]> {
|
|
146
|
+
const calls = await Promise.all(times(txCount, index => makeCall(index, context, contract, heavyPublicCompute)));
|
|
139
147
|
context.logger.info(`Creating ${txCount} txs`);
|
|
140
148
|
const [from] = context.accounts;
|
|
141
149
|
context.logger.info(`Sending ${txCount} txs`);
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import type { AztecNodeConfig } from '@aztec/aztec-node';
|
|
2
2
|
import { AztecAddress, EthAddress } from '@aztec/aztec.js/addresses';
|
|
3
|
+
import { waitForProven } from '@aztec/aztec.js/contracts';
|
|
3
4
|
import { type Logger, createLogger } from '@aztec/aztec.js/log';
|
|
4
5
|
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
6
|
+
import type { TxReceipt } from '@aztec/aztec.js/tx';
|
|
5
7
|
import { CheatCodes } from '@aztec/aztec/testing';
|
|
6
8
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
9
|
+
import { InboxContract, OutboxContract, RollupContract } from '@aztec/ethereum/contracts';
|
|
7
10
|
import type {
|
|
8
11
|
DeployAztecL1ContractsArgs,
|
|
9
12
|
DeployAztecL1ContractsReturnType,
|
|
10
13
|
} from '@aztec/ethereum/deploy-aztec-l1-contracts';
|
|
11
14
|
import { deployL1Contract } from '@aztec/ethereum/deploy-l1-contract';
|
|
12
15
|
import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
|
|
13
|
-
import {
|
|
16
|
+
import { CheckpointNumber, EpochNumber } from '@aztec/foundation/branded-types';
|
|
17
|
+
import { sleep } from '@aztec/foundation/sleep';
|
|
18
|
+
import { TestERC20Abi, TestERC20Bytecode } from '@aztec/l1-artifacts';
|
|
14
19
|
import { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
15
20
|
import { TokenBridgeContract } from '@aztec/noir-contracts.js/TokenBridge';
|
|
16
21
|
import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
|
|
17
22
|
import type { TestWallet } from '@aztec/test-wallet/server';
|
|
18
23
|
|
|
19
|
-
import { getContract } from 'viem';
|
|
20
|
-
|
|
21
24
|
import { MNEMONIC } from '../fixtures/fixtures.js';
|
|
22
25
|
import {
|
|
23
26
|
type ISnapshotManager,
|
|
@@ -33,6 +36,7 @@ const { E2E_DATA_PATH: dataPath } = process.env;
|
|
|
33
36
|
|
|
34
37
|
export class CrossChainMessagingTest {
|
|
35
38
|
private snapshotManager: ISnapshotManager;
|
|
39
|
+
private requireEpochProven: boolean;
|
|
36
40
|
logger: Logger;
|
|
37
41
|
aztecNode!: AztecNode;
|
|
38
42
|
aztecNodeConfig!: AztecNodeConfig;
|
|
@@ -50,8 +54,9 @@ export class CrossChainMessagingTest {
|
|
|
50
54
|
l2Token!: TokenContract;
|
|
51
55
|
l2Bridge!: TokenBridgeContract;
|
|
52
56
|
|
|
53
|
-
|
|
54
|
-
|
|
57
|
+
rollup!: RollupContract;
|
|
58
|
+
inbox!: InboxContract;
|
|
59
|
+
outbox!: OutboxContract;
|
|
55
60
|
cheatCodes!: CheatCodes;
|
|
56
61
|
|
|
57
62
|
deployL1ContractsValues!: DeployAztecL1ContractsReturnType;
|
|
@@ -66,10 +71,7 @@ export class CrossChainMessagingTest {
|
|
|
66
71
|
initialValidators: [],
|
|
67
72
|
...deployL1ContractsArgs,
|
|
68
73
|
});
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
async assumeProven() {
|
|
72
|
-
await this.cheatCodes.rollup.markAsProven();
|
|
74
|
+
this.requireEpochProven = opts.startProverNode ?? false;
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
async setup() {
|
|
@@ -80,6 +82,30 @@ export class CrossChainMessagingTest {
|
|
|
80
82
|
this.cheatCodes = this.ctx.cheatCodes;
|
|
81
83
|
this.deployL1ContractsValues = this.ctx.deployL1ContractsValues;
|
|
82
84
|
this.aztecNodeAdmin = this.ctx.aztecNode;
|
|
85
|
+
|
|
86
|
+
if (this.requireEpochProven) {
|
|
87
|
+
// Turn off the watcher to prevent it from keep marking blocks as proven.
|
|
88
|
+
this.ctx.watcher.setIsMarkingAsProven(false);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
async advanceToEpochProven(l2TxReceipt: TxReceipt): Promise<EpochNumber> {
|
|
93
|
+
const epoch = await this.rollup.getEpochNumberForCheckpoint(
|
|
94
|
+
CheckpointNumber.fromBlockNumber(l2TxReceipt.blockNumber!),
|
|
95
|
+
);
|
|
96
|
+
// Warp to the next epoch.
|
|
97
|
+
await this.cheatCodes.rollup.advanceToEpoch(EpochNumber(epoch + 1));
|
|
98
|
+
// Wait for the tx to be proven.
|
|
99
|
+
await waitForProven(this.aztecNode, l2TxReceipt, { provenTimeout: 300 });
|
|
100
|
+
// Return the epoch the tx is in.
|
|
101
|
+
return epoch;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
async catchUpProvenChain() {
|
|
105
|
+
const bn = await this.aztecNode.getBlockNumber();
|
|
106
|
+
while ((await this.aztecNode.getProvenBlockNumber()) < bn) {
|
|
107
|
+
await sleep(1000);
|
|
108
|
+
}
|
|
83
109
|
}
|
|
84
110
|
|
|
85
111
|
snapshot = <T>(
|
|
@@ -147,17 +173,12 @@ export class CrossChainMessagingTest {
|
|
|
147
173
|
const tokenPortalAddress = EthAddress.fromString(crossChainContext.tokenPortal.toString());
|
|
148
174
|
|
|
149
175
|
const l1Client = createExtendedL1Client(this.aztecNodeConfig.l1RpcUrls, MNEMONIC);
|
|
176
|
+
this.l1Client = l1Client;
|
|
150
177
|
|
|
151
|
-
const
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
});
|
|
156
|
-
const outbox = getContract({
|
|
157
|
-
address: this.aztecNodeConfig.l1Contracts.outboxAddress.toString(),
|
|
158
|
-
abi: OutboxAbi,
|
|
159
|
-
client: l1Client,
|
|
160
|
-
});
|
|
178
|
+
const l1Contracts = this.aztecNodeConfig.l1Contracts;
|
|
179
|
+
this.rollup = new RollupContract(l1Client, l1Contracts.rollupAddress.toString());
|
|
180
|
+
this.inbox = new InboxContract(l1Client, l1Contracts.inboxAddress.toString());
|
|
181
|
+
this.outbox = new OutboxContract(l1Client, l1Contracts.outboxAddress.toString());
|
|
161
182
|
|
|
162
183
|
this.crossChainTestHarness = new CrossChainTestHarness(
|
|
163
184
|
this.aztecNode,
|
|
@@ -173,9 +194,6 @@ export class CrossChainMessagingTest {
|
|
|
173
194
|
this.ownerAddress,
|
|
174
195
|
);
|
|
175
196
|
|
|
176
|
-
this.l1Client = l1Client;
|
|
177
|
-
this.inbox = inbox;
|
|
178
|
-
this.outbox = outbox;
|
|
179
197
|
return Promise.resolve();
|
|
180
198
|
},
|
|
181
199
|
);
|
|
@@ -348,7 +348,7 @@ export class EpochsTestContext {
|
|
|
348
348
|
]);
|
|
349
349
|
this.logger.info(`Wait for node synch ${blockNumber} ${type}`, { blockNumber, type, syncState, tips });
|
|
350
350
|
if (type === 'proven') {
|
|
351
|
-
synched = tips.proven.number >= blockNumber && syncState.latestBlockNumber >= blockNumber;
|
|
351
|
+
synched = tips.proven.block.number >= blockNumber && syncState.latestBlockNumber >= blockNumber;
|
|
352
352
|
} else if (type === 'finalized') {
|
|
353
353
|
synched = syncState.finalizedBlockNumber >= blockNumber;
|
|
354
354
|
} else {
|
|
@@ -144,9 +144,7 @@ export class FeesTest {
|
|
|
144
144
|
const blockReward = await this.rollupContract.getCheckpointReward();
|
|
145
145
|
const rewardConfig = await this.rollupContract.getRewardConfig();
|
|
146
146
|
|
|
147
|
-
const balance = await this.feeJuiceBridgeTestHarness.getL1FeeJuiceBalance(
|
|
148
|
-
EthAddress.fromString(rewardConfig.rewardDistributor),
|
|
149
|
-
);
|
|
147
|
+
const balance = await this.feeJuiceBridgeTestHarness.getL1FeeJuiceBalance(rewardConfig.rewardDistributor);
|
|
150
148
|
|
|
151
149
|
const toDistribute = balance > blockReward ? blockReward : balance;
|
|
152
150
|
const sequencerBlockRewards = (toDistribute * BigInt(rewardConfig.sequencerBps)) / 10000n;
|
|
@@ -193,7 +191,7 @@ export class FeesTest {
|
|
|
193
191
|
this.wallet = wallet;
|
|
194
192
|
this.aztecNode = aztecNode;
|
|
195
193
|
this.aztecNodeAdmin = aztecNode;
|
|
196
|
-
this.gasSettings = GasSettings.default({ maxFeesPerGas: (await this.aztecNode.
|
|
194
|
+
this.gasSettings = GasSettings.default({ maxFeesPerGas: (await this.aztecNode.getCurrentMinFees()).mul(2) });
|
|
197
195
|
this.cheatCodes = cheatCodes;
|
|
198
196
|
this.accounts = deployedAccounts.map(a => a.address);
|
|
199
197
|
this.accounts.forEach((a, i) => this.logger.verbose(`Account ${i} address: ${a}`));
|
|
@@ -325,7 +323,7 @@ export class FeesTest {
|
|
|
325
323
|
const { baseFee } = await this.rollupContract.getL1FeesAt(block!.header.globalVariables.timestamp);
|
|
326
324
|
const proverCost =
|
|
327
325
|
mulDiv(
|
|
328
|
-
mulDiv(L1_GAS_PER_EPOCH_VERIFIED, baseFee, await this.rollupContract.getEpochDuration()),
|
|
326
|
+
mulDiv(L1_GAS_PER_EPOCH_VERIFIED, baseFee, BigInt(await this.rollupContract.getEpochDuration())),
|
|
329
327
|
1n,
|
|
330
328
|
await this.rollupContract.getManaTarget(),
|
|
331
329
|
) + (await this.rollupContract.getProvingCostPerMana());
|
|
@@ -52,11 +52,8 @@ export async function writeJson(
|
|
|
52
52
|
header: {
|
|
53
53
|
lastArchiveRoot: asHex(block.header.lastArchive.root),
|
|
54
54
|
blockHeadersHash: asHex(block.header.blockHeadersHash),
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
inHash: asHex(block.header.contentCommitment.inHash),
|
|
58
|
-
outHash: asHex(block.header.contentCommitment.outHash),
|
|
59
|
-
},
|
|
55
|
+
blobsHash: asHex(block.header.blobsHash),
|
|
56
|
+
inHash: asHex(block.header.inHash),
|
|
60
57
|
slotNumber: Number(block.header.globalVariables.slotNumber),
|
|
61
58
|
timestamp: Number(block.header.globalVariables.timestamp),
|
|
62
59
|
coinbase: asHex(block.header.globalVariables.coinbase, 40),
|
|
@@ -451,7 +451,7 @@ export class P2PNetworkTest {
|
|
|
451
451
|
);
|
|
452
452
|
|
|
453
453
|
const slasherContract = getContract({
|
|
454
|
-
address: getAddress(await rollup.getSlasherAddress()),
|
|
454
|
+
address: getAddress((await rollup.getSlasherAddress()).toString()),
|
|
455
455
|
abi: SlasherAbi,
|
|
456
456
|
client: this.ctx.deployL1ContractsValues.l1Client,
|
|
457
457
|
});
|