@aztec/end-to-end 0.0.1-commit.9593d84 → 0.0.1-commit.96bb3f7
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.d.ts +3 -3
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/client_flows_benchmark.js +6 -4
- 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 +14 -7
- 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 +36 -19
- package/dest/e2e_epochs/epochs_test.d.ts +11 -9
- package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
- package/dest/e2e_epochs/epochs_test.js +14 -12
- package/dest/e2e_fees/bridging_race.notest.js +1 -1
- package/dest/e2e_fees/fees_test.d.ts +8 -4
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +7 -4
- 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_multi_validator/utils.js +1 -1
- package/dest/e2e_p2p/inactivity_slash_test.d.ts +2 -2
- package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -1
- package/dest/e2e_p2p/inactivity_slash_test.js +3 -6
- package/dest/e2e_p2p/p2p_network.d.ts +7 -6
- package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
- package/dest/e2e_p2p/p2p_network.js +11 -9
- package/dest/e2e_p2p/shared.d.ts +2 -2
- 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 +3 -5
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +6 -10
- package/dest/fixtures/fixtures.d.ts +2 -3
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +2 -3
- package/dest/fixtures/get_acvm_config.js +1 -1
- package/dest/fixtures/l1_to_l2_messaging.d.ts +4 -3
- package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
- package/dest/fixtures/l1_to_l2_messaging.js +2 -2
- package/dest/fixtures/setup_p2p_test.js +3 -3
- package/dest/fixtures/snapshot_manager.d.ts +6 -8
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +27 -44
- package/dest/fixtures/utils.d.ts +17 -463
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +45 -77
- package/dest/fixtures/web3signer.js +1 -1
- package/dest/fixtures/with_telemetry_utils.d.ts +2 -2
- package/dest/fixtures/with_telemetry_utils.d.ts.map +1 -1
- package/dest/fixtures/with_telemetry_utils.js +2 -2
- 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 +5 -3
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +3 -3
- package/dest/shared/gas_portal_test_harness.d.ts +2 -2
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- 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 -27
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +43 -23
- package/dest/simulators/lending_simulator.d.ts +2 -2
- package/dest/simulators/lending_simulator.d.ts.map +1 -1
- package/dest/simulators/lending_simulator.js +1 -1
- package/dest/spartan/setup_test_wallets.d.ts +4 -3
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +2 -1
- package/dest/spartan/tx_metrics.d.ts +39 -0
- package/dest/spartan/tx_metrics.d.ts.map +1 -0
- package/dest/spartan/tx_metrics.js +95 -0
- package/dest/spartan/utils.d.ts +45 -10
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +203 -60
- package/package.json +40 -40
- package/src/bench/client_flows/client_flows_benchmark.ts +8 -5
- 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 +53 -31
- package/src/e2e_epochs/epochs_test.ts +34 -21
- package/src/e2e_fees/bridging_race.notest.ts +1 -1
- package/src/e2e_fees/fees_test.ts +13 -9
- package/src/e2e_l1_publisher/write_json.ts +2 -5
- package/src/e2e_multi_validator/utils.ts +1 -1
- package/src/e2e_p2p/inactivity_slash_test.ts +4 -7
- package/src/e2e_p2p/p2p_network.ts +10 -17
- package/src/e2e_p2p/shared.ts +11 -6
- package/src/fixtures/e2e_prover_test.ts +7 -10
- package/src/fixtures/fixtures.ts +2 -5
- package/src/fixtures/get_acvm_config.ts +1 -1
- package/src/fixtures/l1_to_l2_messaging.ts +4 -2
- package/src/fixtures/setup_p2p_test.ts +3 -3
- package/src/fixtures/snapshot_manager.ts +44 -63
- package/src/fixtures/utils.ts +74 -139
- package/src/fixtures/web3signer.ts +1 -1
- package/src/fixtures/with_telemetry_utils.ts +2 -2
- package/src/quality_of_service/{alert_checker.ts → grafana_client.ts} +1 -1
- package/src/shared/cross_chain_test_harness.ts +6 -9
- package/src/shared/gas_portal_test_harness.ts +1 -1
- package/src/shared/index.ts +1 -1
- package/src/shared/uniswap_l1_l2.ts +53 -67
- package/src/simulators/lending_simulator.ts +2 -2
- package/src/spartan/DEVELOP.md +7 -0
- package/src/spartan/setup_test_wallets.ts +9 -2
- package/src/spartan/tx_metrics.ts +130 -0
- package/src/spartan/utils.ts +267 -51
- package/dest/fixtures/setup_l1_contracts.d.ts +0 -477
- package/dest/fixtures/setup_l1_contracts.d.ts.map +0 -1
- package/dest/fixtures/setup_l1_contracts.js +0 -17
- package/dest/quality_of_service/alert_checker.d.ts +0 -41
- package/dest/quality_of_service/alert_checker.d.ts.map +0 -1
- package/src/fixtures/setup_l1_contracts.ts +0 -26
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
|
|
2
|
+
import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
|
|
3
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
4
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
5
|
export declare function sendL1ToL2Message(message: {
|
|
5
6
|
recipient: AztecAddress;
|
|
@@ -13,4 +14,4 @@ export declare function sendL1ToL2Message(message: {
|
|
|
13
14
|
globalLeafIndex: Fr;
|
|
14
15
|
txReceipt: import("viem").TransactionReceipt;
|
|
15
16
|
}>;
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfdG9fbDJfbWVzc2FnaW5nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZml4dHVyZXMvbDFfdG9fbDJfbWVzc2FnaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDakYsT0FBTyxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHcEQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFNaEUsd0JBQXNCLGlCQUFpQixDQUNyQyxPQUFPLEVBQUU7SUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDO0lBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUFDLFVBQVUsRUFBRSxFQUFFLENBQUE7Q0FBRSxFQUNqRSxHQUFHLEVBQUU7SUFDSCxRQUFRLEVBQUUsd0JBQXdCLENBQUM7SUFDbkMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLGNBQWMsR0FBRyxlQUFlLENBQUMsQ0FBQztDQUNsRjs7OztHQWdFRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"l1_to_l2_messaging.d.ts","sourceRoot":"","sources":["../../src/fixtures/l1_to_l2_messaging.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"l1_to_l2_messaging.d.ts","sourceRoot":"","sources":["../../src/fixtures/l1_to_l2_messaging.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAMhE,wBAAsB,iBAAiB,CACrC,OAAO,EAAE;IAAE,SAAS,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;IAAC,UAAU,EAAE,EAAE,CAAA;CAAE,EACjE,GAAG,EAAE;IACH,QAAQ,EAAE,wBAAwB,CAAC;IACnC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,eAAe,CAAC,CAAC;CAClF;;;;GAgEF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { RollupContract } from '@aztec/ethereum';
|
|
2
|
-
import { Fr } from '@aztec/foundation/
|
|
1
|
+
import { RollupContract } from '@aztec/ethereum/contracts';
|
|
2
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { tryJsonStringify } from '@aztec/foundation/json-rpc';
|
|
4
4
|
import { InboxAbi } from '@aztec/l1-artifacts';
|
|
5
5
|
import { decodeEventLog, getContract } from 'viem';
|
|
@@ -50,7 +50,7 @@ export async function createNodes(config, dateProvider, bootstrapNodeEnr, numNod
|
|
|
50
50
|
/** Creates a P2P enabled instance of Aztec Node Service with a validator */ export async function createNode(config, dateProvider, tcpPort, bootstrapNode, addressIndex, prefilledPublicData, dataDirectory, metricsPort, loggerIdStorage) {
|
|
51
51
|
const createNode = async ()=>{
|
|
52
52
|
const validatorConfig = await createValidatorConfig(config, bootstrapNode, tcpPort, addressIndex, dataDirectory);
|
|
53
|
-
const telemetry = getEndToEndTestTelemetryClient(metricsPort);
|
|
53
|
+
const telemetry = await getEndToEndTestTelemetryClient(metricsPort);
|
|
54
54
|
return await AztecNodeService.createAndSync(validatorConfig, {
|
|
55
55
|
telemetry,
|
|
56
56
|
dateProvider
|
|
@@ -70,7 +70,7 @@ export async function createNodes(config, dateProvider, bootstrapNodeEnr, numNod
|
|
|
70
70
|
validatorPrivateKeys: undefined,
|
|
71
71
|
publisherPrivateKeys: []
|
|
72
72
|
};
|
|
73
|
-
const telemetry = getEndToEndTestTelemetryClient(metricsPort);
|
|
73
|
+
const telemetry = await getEndToEndTestTelemetryClient(metricsPort);
|
|
74
74
|
return await AztecNodeService.createAndSync(config, {
|
|
75
75
|
telemetry,
|
|
76
76
|
dateProvider
|
|
@@ -83,7 +83,7 @@ export async function createNodes(config, dateProvider, bootstrapNodeEnr, numNod
|
|
|
83
83
|
export async function createProverNode(config, tcpPort, bootstrapNode, addressIndex, proverNodeDeps, prefilledPublicData, dataDirectory, metricsPort, loggerIdStorage) {
|
|
84
84
|
const createProverNode = async ()=>{
|
|
85
85
|
const proverNodePrivateKey = getPrivateKeyFromIndex(ATTESTER_PRIVATE_KEYS_START_INDEX + addressIndex);
|
|
86
|
-
const telemetry = getEndToEndTestTelemetryClient(metricsPort);
|
|
86
|
+
const telemetry = await getEndToEndTestTelemetryClient(metricsPort);
|
|
87
87
|
const proverConfig = await createP2PConfig(config, bootstrapNode, tcpPort, dataDirectory);
|
|
88
88
|
const aztecNodeRpcTxProvider = undefined;
|
|
89
89
|
return await createAndSyncProverNode(bufferToHex(proverNodePrivateKey), config, {
|
|
@@ -5,8 +5,7 @@ import type { Logger } from '@aztec/aztec.js/log';
|
|
|
5
5
|
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
6
6
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
7
7
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
8
|
-
import { type
|
|
9
|
-
import { type DeployL1ContractsArgs, type DeployL1ContractsReturnType } from '@aztec/ethereum';
|
|
8
|
+
import { type DeployAztecL1ContractsArgs, type DeployAztecL1ContractsReturnType } from '@aztec/ethereum/deploy-aztec-l1-contracts';
|
|
10
9
|
import { TestDateProvider } from '@aztec/foundation/timer';
|
|
11
10
|
import type { ProverNode } from '@aztec/prover-node';
|
|
12
11
|
import type { SequencerClient } from '@aztec/sequencer-client';
|
|
@@ -20,17 +19,16 @@ export type SubsystemsContext = {
|
|
|
20
19
|
aztecNode: AztecNodeService;
|
|
21
20
|
aztecNodeConfig: AztecNodeConfig;
|
|
22
21
|
wallet: TestWallet;
|
|
23
|
-
deployL1ContractsValues:
|
|
22
|
+
deployL1ContractsValues: DeployAztecL1ContractsReturnType;
|
|
24
23
|
proverNode?: ProverNode;
|
|
25
24
|
watcher: AnvilTestWatcher;
|
|
26
25
|
cheatCodes: CheatCodes;
|
|
27
26
|
sequencer: SequencerClient;
|
|
28
27
|
dateProvider: TestDateProvider;
|
|
29
|
-
blobSink: BlobSinkServer;
|
|
30
28
|
initialFundedAccounts: InitialAccountData[];
|
|
31
29
|
directoryToCleanup?: string;
|
|
32
30
|
};
|
|
33
|
-
export declare function createSnapshotManager(testName: string, dataPath?: string, config?: Partial<SetupOptions>, deployL1ContractsArgs?: Partial<
|
|
31
|
+
export declare function createSnapshotManager(testName: string, dataPath?: string, config?: Partial<SetupOptions>, deployL1ContractsArgs?: Partial<DeployAztecL1ContractsArgs>): MockSnapshotManager | SnapshotManager;
|
|
34
32
|
export interface ISnapshotManager {
|
|
35
33
|
snapshot<T>(name: string, apply: (context: SubsystemsContext) => Promise<T>, restore?: (snapshotData: T, context: SubsystemsContext) => Promise<void>): Promise<void>;
|
|
36
34
|
setup(): Promise<SubsystemsContext>;
|
|
@@ -42,7 +40,7 @@ declare class MockSnapshotManager implements ISnapshotManager {
|
|
|
42
40
|
private deployL1ContractsArgs;
|
|
43
41
|
private context?;
|
|
44
42
|
private logger;
|
|
45
|
-
constructor(testName: string, config?: Partial<AztecNodeConfig>, deployL1ContractsArgs?: Partial<
|
|
43
|
+
constructor(testName: string, config?: Partial<AztecNodeConfig>, deployL1ContractsArgs?: Partial<DeployAztecL1ContractsArgs>);
|
|
46
44
|
snapshot<T>(name: string, apply: (context: SubsystemsContext) => Promise<T>, restore?: (snapshotData: T, context: SubsystemsContext) => Promise<void>): Promise<void>;
|
|
47
45
|
setup(): Promise<SubsystemsContext>;
|
|
48
46
|
teardown(): Promise<void>;
|
|
@@ -59,7 +57,7 @@ declare class SnapshotManager implements ISnapshotManager {
|
|
|
59
57
|
private context?;
|
|
60
58
|
private livePath;
|
|
61
59
|
private logger;
|
|
62
|
-
constructor(testName: string, dataPath: string, config?: Partial<SetupOptions>, deployL1ContractsArgs?: Partial<
|
|
60
|
+
constructor(testName: string, dataPath: string, config?: Partial<SetupOptions>, deployL1ContractsArgs?: Partial<DeployAztecL1ContractsArgs>);
|
|
63
61
|
snapshot<T>(name: string, apply: (context: SubsystemsContext) => Promise<T>, restore?: (snapshotData: T, context: SubsystemsContext) => Promise<void>): Promise<void>;
|
|
64
62
|
/**
|
|
65
63
|
* Creates and returns the subsystem context based on the current snapshot stack.
|
|
@@ -92,4 +90,4 @@ export declare const deployAccounts: (numberOfAccounts: number, logger: Logger)
|
|
|
92
90
|
*/
|
|
93
91
|
export declare function publicDeployAccounts(wallet: Wallet, accountsToDeploy: AztecAddress[], waitUntilProven?: boolean, node?: AztecNode): Promise<void>;
|
|
94
92
|
export {};
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hcHNob3RfbWFuYWdlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpeHR1cmVzL3NuYXBzaG90X21hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssa0JBQWtCLEVBQTJCLE1BQU0seUJBQXlCLENBQUM7QUFDM0YsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFFLGdCQUFnQixFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQzdGLE9BQU8sRUFBRSxZQUFZLEVBQWMsTUFBTSwyQkFBMkIsQ0FBQztBQUlyRSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFJcEUsT0FBTyxFQUNMLEtBQUssMEJBQTBCLEVBQy9CLEtBQUssZ0NBQWdDLEVBRXRDLE1BQU0sMkNBQTJDLENBQUM7QUFRbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHM0QsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR3ZELE9BQU8sS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQWF6QyxPQUFPLEVBQ0wsS0FBSyxZQUFZLEVBTWxCLE1BQU0sWUFBWSxDQUFDO0FBR3BCLE1BQU0sTUFBTSxpQkFBaUIsR0FBRztJQUM5QixLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQ2IsVUFBVSxF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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot_manager.d.ts","sourceRoot":"","sources":["../../src/fixtures/snapshot_manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAA2B,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAoB,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAc,MAAM,2BAA2B,CAAC;AAIrE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot_manager.d.ts","sourceRoot":"","sources":["../../src/fixtures/snapshot_manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,16 +6,20 @@ import { getContractClassFromArtifact } from '@aztec/aztec.js/contracts';
|
|
|
6
6
|
import { BatchCall, waitForProven } from '@aztec/aztec.js/contracts';
|
|
7
7
|
import { publishContractClass, publishInstance } from '@aztec/aztec.js/deployment';
|
|
8
8
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
9
|
+
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
10
|
+
import { getL1ContractsConfigEnvVars } from '@aztec/ethereum/config';
|
|
11
|
+
import { deployMulticall3 } from '@aztec/ethereum/contracts';
|
|
12
|
+
import { deployAztecL1Contracts } from '@aztec/ethereum/deploy-aztec-l1-contracts';
|
|
11
13
|
import { EthCheatCodesWithState, startAnvil } from '@aztec/ethereum/test';
|
|
12
14
|
import { asyncMap } from '@aztec/foundation/async-map';
|
|
13
15
|
import { SecretValue } from '@aztec/foundation/config';
|
|
14
|
-
import { randomBytes } from '@aztec/foundation/crypto';
|
|
16
|
+
import { randomBytes } from '@aztec/foundation/crypto/random';
|
|
15
17
|
import { tryRmDir } from '@aztec/foundation/fs';
|
|
16
18
|
import { createLogger } from '@aztec/foundation/log';
|
|
17
19
|
import { resolver, reviver } from '@aztec/foundation/serialize';
|
|
18
20
|
import { TestDateProvider } from '@aztec/foundation/timer';
|
|
21
|
+
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
|
|
22
|
+
import { protocolContractsHash } from '@aztec/protocol-contracts';
|
|
19
23
|
import { getPXEConfig } from '@aztec/pxe/server';
|
|
20
24
|
import { tryStop } from '@aztec/stdlib/interfaces/server';
|
|
21
25
|
import { getConfigEnvVars as getTelemetryConfig, initTelemetryClient } from '@aztec/telemetry-client';
|
|
@@ -24,16 +28,14 @@ import { getGenesisValues } from '@aztec/world-state/testing';
|
|
|
24
28
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
|
|
25
29
|
import { copySync, removeSync } from 'fs-extra/esm';
|
|
26
30
|
import fs from 'fs/promises';
|
|
27
|
-
import getPort from 'get-port';
|
|
28
31
|
import { tmpdir } from 'os';
|
|
29
32
|
import path, { join } from 'path';
|
|
30
33
|
import { mnemonicToAccount } from 'viem/accounts';
|
|
31
34
|
import { foundry } from 'viem/chains';
|
|
32
|
-
import { MNEMONIC,
|
|
35
|
+
import { MNEMONIC, TEST_MAX_PENDING_TX_POOL_COUNT, TEST_PEER_CHECK_INTERVAL_MS } from './fixtures.js';
|
|
33
36
|
import { getACVMConfig } from './get_acvm_config.js';
|
|
34
37
|
import { getBBConfig } from './get_bb_config.js';
|
|
35
|
-
import {
|
|
36
|
-
import { createAndSyncProverNode, getLogger, getPrivateKeyFromIndex, getSponsoredFPCAddress } from './utils.js';
|
|
38
|
+
import { createAndSyncProverNode, getLogger, getPrivateKeyFromIndex, getSponsoredFPCAddress, setupSharedBlobStorage } from './utils.js';
|
|
37
39
|
import { getEndToEndTestTelemetryClient } from './with_telemetry_utils.js';
|
|
38
40
|
export function createSnapshotManager(testName, dataPath, config = {}, deployL1ContractsArgs = {
|
|
39
41
|
initialValidators: []
|
|
@@ -192,7 +194,6 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
192
194
|
await context.bbConfig?.cleanup();
|
|
193
195
|
await tryStop(context.anvil);
|
|
194
196
|
await tryStop(context.watcher);
|
|
195
|
-
await tryStop(context.blobSink);
|
|
196
197
|
await tryRmDir(context.directoryToCleanup, logger);
|
|
197
198
|
} catch (err) {
|
|
198
199
|
logger.error('Error during teardown', err);
|
|
@@ -206,7 +207,6 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
206
207
|
initialValidators: []
|
|
207
208
|
}) {
|
|
208
209
|
logger.verbose(`Initializing state...`);
|
|
209
|
-
const blobSinkPort = await getPort();
|
|
210
210
|
// Default to no slashing
|
|
211
211
|
opts.slasherFlavor ??= 'none';
|
|
212
212
|
deployL1ContractsArgs.slasherFlavor ??= opts.slasherFlavor;
|
|
@@ -217,7 +217,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
217
217
|
...opts
|
|
218
218
|
};
|
|
219
219
|
aztecNodeConfig.peerCheckIntervalMS = TEST_PEER_CHECK_INTERVAL_MS;
|
|
220
|
-
aztecNodeConfig.
|
|
220
|
+
aztecNodeConfig.maxPendingTxCount = opts.maxPendingTxCount ?? TEST_MAX_PENDING_TX_POOL_COUNT;
|
|
221
221
|
// Only enable proving if specifically requested.
|
|
222
222
|
aztecNodeConfig.realProofs = !!opts.realProofs;
|
|
223
223
|
// Only enforce the time table if requested
|
|
@@ -236,19 +236,20 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
236
236
|
} else {
|
|
237
237
|
aztecNodeConfig.dataDirectory = statePath;
|
|
238
238
|
}
|
|
239
|
-
aztecNodeConfig
|
|
239
|
+
await setupSharedBlobStorage(aztecNodeConfig);
|
|
240
240
|
const hdAccount = mnemonicToAccount(MNEMONIC, {
|
|
241
241
|
addressIndex: 0
|
|
242
242
|
});
|
|
243
243
|
const publisherPrivKeyRaw = hdAccount.getHdKey().privateKey;
|
|
244
244
|
const publisherPrivKey = publisherPrivKeyRaw === null ? null : Buffer.from(publisherPrivKeyRaw);
|
|
245
|
+
const publisherPrivKeyHex = `0x${publisherPrivKey.toString('hex')}`;
|
|
245
246
|
const l1Client = createExtendedL1Client([
|
|
246
247
|
aztecNodeConfig.l1RpcUrls[0]
|
|
247
248
|
], hdAccount, foundry);
|
|
248
249
|
const validatorPrivKey = getPrivateKeyFromIndex(0);
|
|
249
250
|
const proverNodePrivateKey = getPrivateKeyFromIndex(0);
|
|
250
251
|
aztecNodeConfig.publisherPrivateKeys = [
|
|
251
|
-
new SecretValue(
|
|
252
|
+
new SecretValue(publisherPrivKeyHex)
|
|
252
253
|
];
|
|
253
254
|
aztecNodeConfig.validatorPrivateKeys = new SecretValue([
|
|
254
255
|
`0x${validatorPrivKey.toString('hex')}`
|
|
@@ -267,7 +268,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
267
268
|
const dateProvider = new TestDateProvider();
|
|
268
269
|
const ethCheatCodes = new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls, dateProvider);
|
|
269
270
|
// Deploy our L1 contracts.
|
|
270
|
-
logger.verbose('Deploying L1 contracts...');
|
|
271
|
+
logger.verbose('Deploying Aztec L1 contracts...');
|
|
271
272
|
if (opts.l1StartTime) {
|
|
272
273
|
await ethCheatCodes.warp(opts.l1StartTime, {
|
|
273
274
|
resetBlockInterval: true
|
|
@@ -276,15 +277,20 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
276
277
|
const initialFundedAccounts = await generateSchnorrAccounts(numberOfInitialFundedAccounts);
|
|
277
278
|
const sponsoredFPCAddress = await getSponsoredFPCAddress();
|
|
278
279
|
const { genesisArchiveRoot, prefilledPublicData, fundingNeeded } = await getGenesisValues(initialFundedAccounts.map((a)=>a.address).concat(sponsoredFPCAddress), opts.initialAccountFeeJuice);
|
|
280
|
+
const vkTreeRoot = getVKTreeRoot();
|
|
279
281
|
await deployMulticall3(l1Client, logger);
|
|
280
|
-
|
|
282
|
+
// Define args, defaulted to our environment variables.
|
|
283
|
+
const args = {
|
|
281
284
|
...getL1ContractsConfigEnvVars(),
|
|
285
|
+
...deployL1ContractsArgs,
|
|
286
|
+
vkTreeRoot,
|
|
282
287
|
genesisArchiveRoot,
|
|
288
|
+
protocolContractsHash,
|
|
289
|
+
initialValidators: opts.initialValidators,
|
|
283
290
|
feeJuicePortalInitialBalance: fundingNeeded,
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
});
|
|
291
|
+
realVerifier: false
|
|
292
|
+
};
|
|
293
|
+
const deployL1ContractsValues = await deployAztecL1Contracts(aztecNodeConfig.l1RpcUrls[0], publisherPrivKeyHex, foundry.id, args);
|
|
288
294
|
aztecNodeConfig.l1Contracts = deployL1ContractsValues.l1ContractAddresses;
|
|
289
295
|
aztecNodeConfig.rollupVersion = deployL1ContractsValues.rollupVersion;
|
|
290
296
|
const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(aztecNodeConfig.l1RpcUrls, dateProvider), deployL1ContractsValues.l1ContractAddresses.rollupAddress, deployL1ContractsValues.l1Client, dateProvider);
|
|
@@ -299,17 +305,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
299
305
|
aztecNodeConfig.bbBinaryPath = bbConfig.bbBinaryPath;
|
|
300
306
|
aztecNodeConfig.bbWorkingDirectory = bbConfig.bbWorkingDirectory;
|
|
301
307
|
}
|
|
302
|
-
const telemetry = getEndToEndTestTelemetryClient(opts.metricsPort);
|
|
303
|
-
// Setup blob sink service
|
|
304
|
-
const blobSink = await createBlobSinkServer({
|
|
305
|
-
l1ChainId: aztecNodeConfig.l1ChainId,
|
|
306
|
-
l1RpcUrls: aztecNodeConfig.l1RpcUrls,
|
|
307
|
-
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
308
|
-
port: blobSinkPort,
|
|
309
|
-
dataDirectory: aztecNodeConfig.dataDirectory,
|
|
310
|
-
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb
|
|
311
|
-
}, telemetry);
|
|
312
|
-
await blobSink.start();
|
|
308
|
+
const telemetry = await getEndToEndTestTelemetryClient(opts.metricsPort);
|
|
313
309
|
logger.info('Creating and synching an aztec node...');
|
|
314
310
|
const aztecNode = await AztecNodeService.createAndSync(aztecNodeConfig, {
|
|
315
311
|
telemetry,
|
|
@@ -350,7 +346,6 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
350
346
|
watcher,
|
|
351
347
|
cheatCodes,
|
|
352
348
|
dateProvider,
|
|
353
|
-
blobSink,
|
|
354
349
|
initialFundedAccounts,
|
|
355
350
|
directoryToCleanup
|
|
356
351
|
};
|
|
@@ -363,13 +358,11 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
363
358
|
await fs.mkdir(directoryToCleanup, {
|
|
364
359
|
recursive: true
|
|
365
360
|
});
|
|
366
|
-
// Run the blob sink on a random port
|
|
367
|
-
const blobSinkPort = await getPort();
|
|
368
361
|
// TODO: For some reason this is currently the union of a bunch of subsystems. That needs fixing.
|
|
369
362
|
const aztecNodeConfig = JSON.parse(readFileSync(`${statePath}/aztec_node_config.json`, 'utf-8'), reviver);
|
|
370
363
|
aztecNodeConfig.dataDirectory = statePath;
|
|
371
|
-
aztecNodeConfig.blobSinkUrl = `http://127.0.0.1:${blobSinkPort}`;
|
|
372
364
|
aztecNodeConfig.listenAddress = '127.0.0.1';
|
|
365
|
+
await setupSharedBlobStorage(aztecNodeConfig);
|
|
373
366
|
const initialFundedAccounts = JSON.parse(readFileSync(`${statePath}/accounts.json`, 'utf-8'), reviver) || [];
|
|
374
367
|
const { prefilledPublicData } = await getGenesisValues(initialFundedAccounts.map((a)=>a.address));
|
|
375
368
|
// Start anvil. We go via a wrapper script to ensure if the parent dies, anvil dies.
|
|
@@ -397,16 +390,7 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
397
390
|
const l1Client = createExtendedL1Client(aztecNodeConfig.l1RpcUrls, mnemonicToAccount(MNEMONIC));
|
|
398
391
|
const watcher = new AnvilTestWatcher(ethCheatCodes, aztecNodeConfig.l1Contracts.rollupAddress, l1Client, dateProvider);
|
|
399
392
|
await watcher.start();
|
|
400
|
-
const telemetry = initTelemetryClient(getTelemetryConfig());
|
|
401
|
-
const blobSink = await createBlobSinkServer({
|
|
402
|
-
l1ChainId: aztecNodeConfig.l1ChainId,
|
|
403
|
-
l1RpcUrls: aztecNodeConfig.l1RpcUrls,
|
|
404
|
-
l1Contracts: aztecNodeConfig.l1Contracts,
|
|
405
|
-
port: blobSinkPort,
|
|
406
|
-
dataDirectory: statePath,
|
|
407
|
-
dataStoreMapSizeKb: aztecNodeConfig.dataStoreMapSizeKb
|
|
408
|
-
}, telemetry);
|
|
409
|
-
await blobSink.start();
|
|
393
|
+
const telemetry = await initTelemetryClient(getTelemetryConfig());
|
|
410
394
|
logger.verbose('Creating aztec node...');
|
|
411
395
|
const aztecNode = await AztecNodeService.createAndSync(aztecNodeConfig, {
|
|
412
396
|
telemetry,
|
|
@@ -447,7 +431,6 @@ export function createSnapshotManager(testName, dataPath, config = {}, deployL1C
|
|
|
447
431
|
watcher,
|
|
448
432
|
cheatCodes,
|
|
449
433
|
dateProvider,
|
|
450
|
-
blobSink,
|
|
451
434
|
initialFundedAccounts,
|
|
452
435
|
directoryToCleanup
|
|
453
436
|
};
|