@aztec/end-to-end 0.0.1-commit.6230efd → 0.0.1-commit.6d3c34e
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 +4 -4
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +8 -5
- 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/snapshot_manager.d.ts +1 -1
- package/dest/fixtures/snapshot_manager.d.ts.map +1 -1
- package/dest/fixtures/snapshot_manager.js +2 -7
- 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/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 +11 -7
- 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/snapshot_manager.ts +2 -7
- 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/dest/quality_of_service/alert_checker.d.ts +0 -41
- package/dest/quality_of_service/alert_checker.d.ts.map +0 -1
|
@@ -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
|
@@ -3,7 +3,7 @@ import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
|
3
3
|
import { BatchCall, type SentTx, type WaitOpts } from '@aztec/aztec.js/contracts';
|
|
4
4
|
import { mean, stdDev, times } from '@aztec/foundation/collection';
|
|
5
5
|
import { BenchmarkingContract } from '@aztec/noir-test-contracts.js/Benchmarking';
|
|
6
|
-
import type {
|
|
6
|
+
import type { MetricDefinition } from '@aztec/telemetry-client';
|
|
7
7
|
import type { BenchmarkDataPoint, BenchmarkMetricsType, BenchmarkTelemetryClient } from '@aztec/telemetry-client/bench';
|
|
8
8
|
|
|
9
9
|
import { mkdirSync, writeFileSync } from 'fs';
|
|
@@ -16,7 +16,7 @@ import { type EndToEndContext, type SetupOptions, setup } from '../fixtures/util
|
|
|
16
16
|
*/
|
|
17
17
|
export async function benchmarkSetup(
|
|
18
18
|
opts: Partial<SetupOptions> & {
|
|
19
|
-
/** What metrics to export */ metrics: (
|
|
19
|
+
/** What metrics to export */ metrics: (MetricDefinition | MetricFilter)[];
|
|
20
20
|
/** Where to output the benchmark data (defaults to BENCH_OUTPUT or bench.json) */
|
|
21
21
|
benchOutput?: string;
|
|
22
22
|
},
|
|
@@ -47,7 +47,7 @@ export async function benchmarkSetup(
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
type MetricFilter = {
|
|
50
|
-
source:
|
|
50
|
+
source: MetricDefinition;
|
|
51
51
|
transform: (value: number) => number;
|
|
52
52
|
name: string;
|
|
53
53
|
unit?: string;
|
|
@@ -62,17 +62,21 @@ export type GithubActionBenchmarkResult = {
|
|
|
62
62
|
extra?: string;
|
|
63
63
|
};
|
|
64
64
|
|
|
65
|
+
function isMetricDefinition(f: MetricDefinition | MetricFilter): f is MetricDefinition {
|
|
66
|
+
return 'description' in f;
|
|
67
|
+
}
|
|
68
|
+
|
|
65
69
|
function formatMetricsForGithubBenchmarkAction(
|
|
66
70
|
data: BenchmarkMetricsType,
|
|
67
|
-
filter: (
|
|
71
|
+
filter: (MetricDefinition | MetricFilter)[],
|
|
68
72
|
): GithubActionBenchmarkResult[] {
|
|
69
73
|
const allFilters: MetricFilter[] = filter.map(f =>
|
|
70
|
-
|
|
74
|
+
isMetricDefinition(f) ? { name: f.name, source: f, transform: (x: number) => x, unit: f.unit } : f,
|
|
71
75
|
);
|
|
72
76
|
return data.flatMap(meter => {
|
|
73
77
|
return meter.metrics
|
|
74
|
-
.filter(metric => allFilters.map(f => f.source).includes(metric.name
|
|
75
|
-
.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)
|
|
76
80
|
.map(([metric, filter]) => ({
|
|
77
81
|
name: `${meter.name}/${filter.name}`,
|
|
78
82
|
unit: filter.unit ?? metric.unit ?? 'unknown',
|
|
@@ -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
|
});
|
package/src/e2e_p2p/shared.ts
CHANGED
|
@@ -13,6 +13,7 @@ import type {
|
|
|
13
13
|
} from '@aztec/ethereum/contracts';
|
|
14
14
|
import { EpochNumber } from '@aztec/foundation/branded-types';
|
|
15
15
|
import { timesAsync, unique } from '@aztec/foundation/collection';
|
|
16
|
+
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
16
17
|
import { retryUntil } from '@aztec/foundation/retry';
|
|
17
18
|
import { pluralize } from '@aztec/foundation/string';
|
|
18
19
|
import type { SpamContract } from '@aztec/noir-test-contracts.js/Spam';
|
|
@@ -137,7 +138,7 @@ export async function awaitCommitteeExists({
|
|
|
137
138
|
logger: Logger;
|
|
138
139
|
}): Promise<readonly `0x${string}`[]> {
|
|
139
140
|
logger.info(`Waiting for committee to be set`);
|
|
140
|
-
let committee:
|
|
141
|
+
let committee: EthAddress[] | undefined;
|
|
141
142
|
await retryUntil(
|
|
142
143
|
async () => {
|
|
143
144
|
committee = await rollup.getCurrentEpochCommittee();
|
|
@@ -146,7 +147,7 @@ export async function awaitCommitteeExists({
|
|
|
146
147
|
'non-empty committee',
|
|
147
148
|
60,
|
|
148
149
|
);
|
|
149
|
-
return committee
|
|
150
|
+
return committee!.map(c => c.toString() as `0x${string}`);
|
|
150
151
|
}
|
|
151
152
|
|
|
152
153
|
export async function awaitOffenseDetected({
|
|
@@ -218,9 +219,9 @@ export async function awaitCommitteeKicked({
|
|
|
218
219
|
|
|
219
220
|
if (slashingProposer.type === 'empire') {
|
|
220
221
|
// Await for the slash payload to be created if empire (no payload is created on tally until execution time)
|
|
221
|
-
const targetEpoch =
|
|
222
|
+
const targetEpoch = EpochNumber((await cheatCodes.getEpoch()) + (await rollup.getLagInEpochsForValidatorSet()) + 1);
|
|
222
223
|
logger.info(`Advancing to epoch ${targetEpoch} so we start slashing`);
|
|
223
|
-
await cheatCodes.advanceToEpoch(
|
|
224
|
+
await cheatCodes.advanceToEpoch(targetEpoch);
|
|
224
225
|
|
|
225
226
|
const slashPayloadEvents = await retryUntil(
|
|
226
227
|
async () => {
|
|
@@ -275,7 +276,7 @@ export async function awaitCommitteeKicked({
|
|
|
275
276
|
logger.info(`Advancing to check current committee`);
|
|
276
277
|
await cheatCodes.debugRollup();
|
|
277
278
|
await cheatCodes.advanceToEpoch(
|
|
278
|
-
EpochNumber
|
|
279
|
+
EpochNumber((await cheatCodes.getEpoch()) + (await rollup.getLagInEpochsForValidatorSet()) + 1),
|
|
279
280
|
);
|
|
280
281
|
await cheatCodes.debugRollup();
|
|
281
282
|
|
|
@@ -9,7 +9,6 @@ import type { Logger } from '@aztec/aztec.js/log';
|
|
|
9
9
|
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
10
10
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
11
11
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
12
|
-
import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
|
|
13
12
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
14
13
|
import { getL1ContractsConfigEnvVars } from '@aztec/ethereum/config';
|
|
15
14
|
import { deployMulticall3 } from '@aztec/ethereum/contracts';
|
|
@@ -410,12 +409,10 @@ async function setupFromFresh(
|
|
|
410
409
|
|
|
411
410
|
const telemetry = await getEndToEndTestTelemetryClient(opts.metricsPort);
|
|
412
411
|
|
|
413
|
-
const blobClient = await createBlobClientWithFileStores(aztecNodeConfig, createLogger('node:blob-client:client'));
|
|
414
|
-
|
|
415
412
|
logger.info('Creating and synching an aztec node...');
|
|
416
413
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
417
414
|
aztecNodeConfig,
|
|
418
|
-
{ telemetry, dateProvider
|
|
415
|
+
{ telemetry, dateProvider },
|
|
419
416
|
{ prefilledPublicData },
|
|
420
417
|
);
|
|
421
418
|
|
|
@@ -525,12 +522,10 @@ async function setupFromState(statePath: string, logger: Logger): Promise<Subsys
|
|
|
525
522
|
|
|
526
523
|
const telemetry = await initTelemetryClient(getTelemetryConfig());
|
|
527
524
|
|
|
528
|
-
const blobClient = await createBlobClientWithFileStores(aztecNodeConfig, createLogger('node:blob-client:client'));
|
|
529
|
-
|
|
530
525
|
logger.verbose('Creating aztec node...');
|
|
531
526
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
532
527
|
aztecNodeConfig,
|
|
533
|
-
{ telemetry, dateProvider
|
|
528
|
+
{ telemetry, dateProvider },
|
|
534
529
|
{ prefilledPublicData },
|
|
535
530
|
);
|
|
536
531
|
|
package/src/fixtures/utils.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { type Logger, createLogger } from '@aztec/aztec.js/log';
|
|
|
10
10
|
import { type AztecNode, createAztecNodeClient, waitForNode } from '@aztec/aztec.js/node';
|
|
11
11
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
12
12
|
import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
|
|
13
|
-
import {
|
|
13
|
+
import { createBlobClientWithFileStores } from '@aztec/blob-client/client';
|
|
14
14
|
import { SPONSORED_FPC_SALT } from '@aztec/constants';
|
|
15
15
|
import { isAnvilTestChain } from '@aztec/ethereum/chain';
|
|
16
16
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
@@ -241,7 +241,6 @@ async function setupWithRemoteEnvironment(
|
|
|
241
241
|
watcher: undefined,
|
|
242
242
|
dateProvider: undefined,
|
|
243
243
|
telemetryClient: undefined,
|
|
244
|
-
blobClient: undefined,
|
|
245
244
|
teardown,
|
|
246
245
|
};
|
|
247
246
|
}
|
|
@@ -326,8 +325,6 @@ export type EndToEndContext = {
|
|
|
326
325
|
mockGossipSubNetwork: MockGossipSubNetwork | undefined;
|
|
327
326
|
/** Prefilled public data used for setting up nodes. */
|
|
328
327
|
prefilledPublicData: PublicDataTreeLeaf[] | undefined;
|
|
329
|
-
/** The blob client client used for blob storage (undefined if connected to remote environment) */
|
|
330
|
-
blobClient: BlobClientInterface | undefined;
|
|
331
328
|
/** Function to stop the started services. */
|
|
332
329
|
teardown: () => Promise<void>;
|
|
333
330
|
};
|
|
@@ -513,8 +510,6 @@ export async function setup(
|
|
|
513
510
|
config.bbWorkingDirectory = bbConfig.bbWorkingDirectory;
|
|
514
511
|
}
|
|
515
512
|
|
|
516
|
-
const blobClient = await createBlobClientWithFileStores(config, createLogger('node:blob-client:client'));
|
|
517
|
-
|
|
518
513
|
let mockGossipSubNetwork: MockGossipSubNetwork | undefined;
|
|
519
514
|
let p2pClientDeps: P2PClientDeps<P2PClientType.Full> | undefined = undefined;
|
|
520
515
|
|
|
@@ -553,7 +548,7 @@ export async function setup(
|
|
|
553
548
|
|
|
554
549
|
const aztecNode = await AztecNodeService.createAndSync(
|
|
555
550
|
config, // REFACTOR: createAndSync mutates this config
|
|
556
|
-
{ dateProvider,
|
|
551
|
+
{ dateProvider, telemetry, p2pClientDeps, logger: createLogger('node:MAIN-aztec-node') },
|
|
557
552
|
{ prefilledPublicData },
|
|
558
553
|
);
|
|
559
554
|
const sequencerClient = aztecNode.getSequencer();
|
|
@@ -666,7 +661,6 @@ export async function setup(
|
|
|
666
661
|
wallet,
|
|
667
662
|
accounts,
|
|
668
663
|
watcher,
|
|
669
|
-
blobClient,
|
|
670
664
|
};
|
|
671
665
|
} catch (err) {
|
|
672
666
|
// TODO: Just hoisted anvil for now to ensure cleanup. Prob need to hoist the rest.
|
|
@@ -16,7 +16,7 @@ import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
|
16
16
|
import { deployL1Contract } from '@aztec/ethereum/deploy-l1-contract';
|
|
17
17
|
import type { L1ContractAddresses } from '@aztec/ethereum/l1-contract-addresses';
|
|
18
18
|
import type { ExtendedViemWalletClient } from '@aztec/ethereum/types';
|
|
19
|
-
import {
|
|
19
|
+
import { EpochNumber } from '@aztec/foundation/branded-types';
|
|
20
20
|
import { retryUntil } from '@aztec/foundation/retry';
|
|
21
21
|
import type { FieldsOf } from '@aztec/foundation/types';
|
|
22
22
|
import { TestERC20Abi, TokenPortalAbi, TokenPortalBytecode } from '@aztec/l1-artifacts';
|
|
@@ -324,17 +324,11 @@ export class CrossChainTestHarness {
|
|
|
324
324
|
|
|
325
325
|
withdrawFundsFromBridgeOnL1(
|
|
326
326
|
amount: bigint,
|
|
327
|
-
|
|
327
|
+
epochNumber: EpochNumber,
|
|
328
328
|
messageIndex: bigint,
|
|
329
329
|
siblingPath: SiblingPath<number>,
|
|
330
330
|
) {
|
|
331
|
-
return this.l1TokenPortalManager.withdrawFunds(
|
|
332
|
-
amount,
|
|
333
|
-
this.ethAccount,
|
|
334
|
-
BigInt(blockNumber),
|
|
335
|
-
messageIndex,
|
|
336
|
-
siblingPath,
|
|
337
|
-
);
|
|
331
|
+
return this.l1TokenPortalManager.withdrawFunds(amount, this.ethAccount, epochNumber, messageIndex, siblingPath);
|
|
338
332
|
}
|
|
339
333
|
|
|
340
334
|
async transferToPrivateOnL2(shieldAmount: bigint) {
|
package/src/shared/index.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { uniswapL1L2TestSuite
|
|
1
|
+
export { uniswapL1L2TestSuite } from './uniswap_l1_l2.js';
|