@aztec/end-to-end 3.0.0-nightly.20251124 → 3.0.0-nightly.20251126
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/e2e_epochs/epochs_test.js +3 -3
- package/dest/e2e_fees/bridging_race.notest.js +1 -1
- package/dest/e2e_fees/fees_test.js +1 -1
- package/dest/e2e_l1_publisher/write_json.js +2 -2
- package/dest/e2e_p2p/p2p_network.js +1 -1
- package/dest/e2e_p2p/shared.js +2 -2
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +2 -2
- package/dest/shared/uniswap_l1_l2.js +11 -11
- package/dest/simulators/lending_simulator.js +1 -1
- package/dest/spartan/setup_test_wallets.d.ts +3 -1
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +35 -1
- package/dest/spartan/utils.d.ts +1 -1
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +2 -2
- package/package.json +38 -38
- package/src/e2e_epochs/epochs_test.ts +3 -3
- package/src/e2e_fees/bridging_race.notest.ts +1 -1
- package/src/e2e_fees/fees_test.ts +1 -1
- package/src/e2e_l1_publisher/write_json.ts +2 -2
- package/src/e2e_p2p/p2p_network.ts +1 -1
- package/src/e2e_p2p/shared.ts +2 -2
- package/src/fixtures/utils.ts +4 -2
- package/src/shared/uniswap_l1_l2.ts +11 -11
- package/src/simulators/lending_simulator.ts +1 -1
- package/src/spartan/setup_test_wallets.ts +37 -1
- package/src/spartan/utils.ts +2 -2
|
@@ -217,11 +217,11 @@ export const DEFAULT_L1_BLOCK_TIME = process.env.CI ? 12 : 8;
|
|
|
217
217
|
return start;
|
|
218
218
|
}
|
|
219
219
|
/** Waits until the given L2 block number is mined. */ async waitUntilL2BlockNumber(target, timeout = 60) {
|
|
220
|
-
await retryUntil(()=>Promise.resolve(target <= this.monitor.
|
|
220
|
+
await retryUntil(()=>Promise.resolve(target <= this.monitor.checkpointNumber), `Wait until L2 block ${target}`, timeout, 0.1);
|
|
221
221
|
}
|
|
222
222
|
/** Waits until the given L2 block number is marked as proven. */ async waitUntilProvenL2BlockNumber(t, timeout = 60) {
|
|
223
|
-
await retryUntil(()=>Promise.resolve(t <= this.monitor.
|
|
224
|
-
return this.monitor.
|
|
223
|
+
await retryUntil(()=>Promise.resolve(t <= this.monitor.provenCheckpointNumber), `Wait proven L2 block ${t}`, timeout, 0.1);
|
|
224
|
+
return this.monitor.provenCheckpointNumber;
|
|
225
225
|
}
|
|
226
226
|
/** Waits until the last slot of the proof submission window for a given epoch. */ async waitUntilLastSlotOfProofSubmissionWindow(epochNumber) {
|
|
227
227
|
const deadline = getProofSubmissionDeadlineTimestamp(BigInt(epochNumber), this.constants);
|
|
@@ -45,7 +45,7 @@ describe('e2e_fees bridging_race', ()=>{
|
|
|
45
45
|
const origApprove = l1TokenManager.approve.bind(l1TokenManager);
|
|
46
46
|
l1TokenManager.approve = async (amount, address, addressName = '')=>{
|
|
47
47
|
await origApprove(amount, address, addressName);
|
|
48
|
-
const sleepTime = (Number(t.chainMonitor.
|
|
48
|
+
const sleepTime = (Number(t.chainMonitor.checkpointTimestamp) + AZTEC_SLOT_DURATION) * 1000 - Date.now() - 500;
|
|
49
49
|
logger.info(`Sleeping for ${sleepTime}ms until near end of L2 slot before sending L1 fee juice to L2 inbox`);
|
|
50
50
|
await sleep(sleepTime);
|
|
51
51
|
};
|
|
@@ -99,7 +99,7 @@ const { E2E_DATA_PATH: dataPath } = process.env;
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
async getBlockRewards() {
|
|
102
|
-
const blockReward = await this.rollupContract.
|
|
102
|
+
const blockReward = await this.rollupContract.getCheckpointReward();
|
|
103
103
|
const rewardConfig = await this.rollupContract.getRewardConfig();
|
|
104
104
|
const balance = await this.feeJuiceBridgeTestHarness.getL1FeeJuiceBalance(EthAddress.fromString(rewardConfig.rewardDistributor));
|
|
105
105
|
const toDistribute = balance > blockReward ? blockReward : balance;
|
|
@@ -23,13 +23,13 @@ const AZTEC_GENERATE_TEST_DATA = !!process.env.AZTEC_GENERATE_TEST_DATA;
|
|
|
23
23
|
messages: {
|
|
24
24
|
l2ToL1Messages: block.body.txEffects.flatMap((txEffect)=>txEffect.l2ToL1Msgs).map((value)=>asHex(value))
|
|
25
25
|
},
|
|
26
|
-
|
|
26
|
+
checkpoint: {
|
|
27
27
|
// The json formatting in forge is a bit brittle, so we convert Fr to a number in the few values below.
|
|
28
28
|
// This should not be a problem for testing as long as the values are not larger than u32.
|
|
29
29
|
archive: asHex(block.archive.root),
|
|
30
30
|
blobCommitments: getPrefixedEthBlobCommitments(blobs),
|
|
31
31
|
batchedBlobInputs: batchedBlob.getEthBlobEvaluationInputs(),
|
|
32
|
-
|
|
32
|
+
checkpointNumber: block.number,
|
|
33
33
|
body: `0x${block.body.toBuffer().toString('hex')}`,
|
|
34
34
|
header: {
|
|
35
35
|
lastArchiveRoot: asHex(block.header.lastArchive.root),
|
|
@@ -193,7 +193,7 @@ export class P2PNetworkTest {
|
|
|
193
193
|
validatorTuples
|
|
194
194
|
])
|
|
195
195
|
});
|
|
196
|
-
await cheatCodes.rollup.advanceToEpoch(await cheatCodes.rollup.getEpoch() + await rollup.read.
|
|
196
|
+
await cheatCodes.rollup.advanceToEpoch(await cheatCodes.rollup.getEpoch() + await rollup.read.getLagInEpochsForValidatorSet() + 1n);
|
|
197
197
|
// Send and await a tx to make sure we mine a block for the warp to correctly progress.
|
|
198
198
|
await this._sendDummyTx(deployL1ContractsValues.l1Client);
|
|
199
199
|
});
|
package/dest/e2e_p2p/shared.js
CHANGED
|
@@ -129,7 +129,7 @@ export async function awaitOffenseDetected({ logger, nodeAdmin, slashingRoundSiz
|
|
|
129
129
|
await cheatCodes.debugRollup();
|
|
130
130
|
if (slashingProposer.type === 'empire') {
|
|
131
131
|
// Await for the slash payload to be created if empire (no payload is created on tally until execution time)
|
|
132
|
-
const targetEpoch = await cheatCodes.getEpoch() + await rollup.
|
|
132
|
+
const targetEpoch = await cheatCodes.getEpoch() + await rollup.getLagInEpochsForValidatorSet() + 1n;
|
|
133
133
|
logger.info(`Advancing to epoch ${targetEpoch} so we start slashing`);
|
|
134
134
|
await cheatCodes.advanceToEpoch(targetEpoch);
|
|
135
135
|
const slashPayloadEvents = await retryUntil(async ()=>{
|
|
@@ -172,7 +172,7 @@ export async function awaitOffenseDetected({ logger, nodeAdmin, slashingRoundSiz
|
|
|
172
172
|
}
|
|
173
173
|
logger.info(`Advancing to check current committee`);
|
|
174
174
|
await cheatCodes.debugRollup();
|
|
175
|
-
await cheatCodes.advanceToEpoch(await cheatCodes.getEpoch() + await rollup.
|
|
175
|
+
await cheatCodes.advanceToEpoch(await cheatCodes.getEpoch() + await rollup.getLagInEpochsForValidatorSet() + 1n);
|
|
176
176
|
await cheatCodes.debugRollup();
|
|
177
177
|
const committeeNextEpoch = await rollup.getCurrentEpochCommittee();
|
|
178
178
|
// The committee should be undefined, since the validator set is empty
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/fixtures/utils.ts"],"names":[],"mappings":"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"}
|
package/dest/fixtures/utils.js
CHANGED
|
@@ -281,7 +281,7 @@ export const setupL1Contracts = async (l1RpcUrls, account, logger, args = {}, ch
|
|
|
281
281
|
if (opts.fundRewardDistributor) {
|
|
282
282
|
// Mints block rewards for 10000 blocks to the rewardDistributor contract
|
|
283
283
|
const rollup = new RollupContract(deployL1ContractsValues.l1Client, deployL1ContractsValues.l1ContractAddresses.rollupAddress);
|
|
284
|
-
const blockReward = await rollup.
|
|
284
|
+
const blockReward = await rollup.getCheckpointReward();
|
|
285
285
|
const mintAmount = 10_000n * blockReward;
|
|
286
286
|
const feeJuice = getContract({
|
|
287
287
|
address: deployL1ContractsValues.l1ContractAddresses.feeJuiceAddress.toString(),
|
|
@@ -406,7 +406,7 @@ export const setupL1Contracts = async (l1RpcUrls, account, logger, args = {}, ch
|
|
|
406
406
|
const cheatCodes = await CheatCodes.create(config.l1RpcUrls, aztecNode, dateProvider);
|
|
407
407
|
if (opts.aztecTargetCommitteeSize && opts.aztecTargetCommitteeSize > 0 || opts.initialValidators && opts.initialValidators.length > 0) {
|
|
408
408
|
// We need to advance such that the committee is set up.
|
|
409
|
-
await cheatCodes.rollup.advanceToEpoch(await cheatCodes.rollup.getEpoch() + BigInt(config.
|
|
409
|
+
await cheatCodes.rollup.advanceToEpoch(await cheatCodes.rollup.getEpoch() + BigInt(config.lagInEpochsForValidatorSet + 1));
|
|
410
410
|
await cheatCodes.rollup.setupEpoch();
|
|
411
411
|
await cheatCodes.rollup.debugRollup();
|
|
412
412
|
}
|
|
@@ -159,7 +159,7 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
|
|
|
159
159
|
// ensure that uniswap contract didn't eat the funds.
|
|
160
160
|
await wethCrossChainHarness.expectPublicBalanceOnL2(uniswapL2Contract.address, 0n);
|
|
161
161
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
162
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
162
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
163
163
|
// 5. Consume L2 to L1 message by calling uniswapPortal.swap_private()
|
|
164
164
|
logger.info('Execute withdraw and swap on the uniswapPortal!');
|
|
165
165
|
const daiL1BalanceOfPortalBeforeSwap = await daiCrossChainHarness.getL1BalanceOf(daiCrossChainHarness.tokenPortalAddress);
|
|
@@ -170,12 +170,12 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
|
|
|
170
170
|
const withdrawL2MessageIndex = withdrawResult.leafIndex;
|
|
171
171
|
const withdrawSiblingPath = withdrawResult.siblingPath;
|
|
172
172
|
const withdrawMessageMetadata = {
|
|
173
|
-
|
|
173
|
+
_checkpointNumber: BigInt(l2UniswapInteractionReceipt.blockNumber),
|
|
174
174
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
175
175
|
_path: withdrawSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
176
176
|
};
|
|
177
177
|
const swapPrivateMessageMetadata = {
|
|
178
|
-
|
|
178
|
+
_checkpointNumber: BigInt(l2UniswapInteractionReceipt.blockNumber),
|
|
179
179
|
_leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
180
180
|
_path: swapPrivateSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
181
181
|
};
|
|
@@ -357,14 +357,14 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
|
|
|
357
357
|
// withdrawLeaf,
|
|
358
358
|
// );
|
|
359
359
|
// const withdrawMessageMetadata = {
|
|
360
|
-
//
|
|
360
|
+
// _checkpointNumber: BigInt(uniswapL2Interaction.blockNumber!),
|
|
361
361
|
// _leafIndex: BigInt(withdrawL2MessageIndex),
|
|
362
362
|
// _path: withdrawSiblingPath
|
|
363
363
|
// .toBufferArray()
|
|
364
364
|
// .map((buf: Buffer) => `0x${buf.toString('hex')}`) as readonly `0x${string}`[],
|
|
365
365
|
// };
|
|
366
366
|
// const swapPrivateMessageMetadata = {
|
|
367
|
-
//
|
|
367
|
+
// _checkpointNumber: BigInt(uniswapL2Interaction.blockNumber!),
|
|
368
368
|
// _leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
369
369
|
// _path: swapPrivateSiblingPath
|
|
370
370
|
// .toBufferArray()
|
|
@@ -569,19 +569,19 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
|
|
|
569
569
|
const withdrawL2MessageIndex = withdrawResult.leafIndex;
|
|
570
570
|
const withdrawSiblingPath = withdrawResult.siblingPath;
|
|
571
571
|
const withdrawMessageMetadata = {
|
|
572
|
-
|
|
572
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber),
|
|
573
573
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
574
574
|
_path: withdrawSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
575
575
|
};
|
|
576
576
|
const swapPrivateMessageMetadata = {
|
|
577
|
-
|
|
577
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber),
|
|
578
578
|
_leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
579
579
|
_path: swapPrivateSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
580
580
|
};
|
|
581
581
|
// ensure that user's funds were burnt
|
|
582
582
|
await wethCrossChainHarness.expectPrivateBalanceOnL2(ownerAddress, wethL2BalanceBeforeSwap - wethAmountToBridge);
|
|
583
583
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
584
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
584
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
585
585
|
// On L1 call swap_public!
|
|
586
586
|
logger.info('call swap_public on L1');
|
|
587
587
|
const swapArgs = [
|
|
@@ -655,19 +655,19 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
|
|
|
655
655
|
const withdrawL2MessageIndex = withdrawResult.leafIndex;
|
|
656
656
|
const withdrawSiblingPath = withdrawResult.siblingPath;
|
|
657
657
|
const withdrawMessageMetadata = {
|
|
658
|
-
|
|
658
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber),
|
|
659
659
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
660
660
|
_path: withdrawSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
661
661
|
};
|
|
662
662
|
const swapPublicMessageMetadata = {
|
|
663
|
-
|
|
663
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber),
|
|
664
664
|
_leafIndex: BigInt(swapPublicL2MessageIndex),
|
|
665
665
|
_path: swapPublicSiblingPath.toBufferArray().map((buf)=>`0x${buf.toString('hex')}`)
|
|
666
666
|
};
|
|
667
667
|
// check weth balance of owner on L2 (we first bridged `wethAmountToBridge` into L2 and now withdrew it!)
|
|
668
668
|
await wethCrossChainHarness.expectPublicBalanceOnL2(ownerAddress, 0n);
|
|
669
669
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
670
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
670
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
671
671
|
// Call swap_private on L1
|
|
672
672
|
logger.info('Execute withdraw and swap on the uniswapPortal!');
|
|
673
673
|
const swapArgs = [
|
|
@@ -93,7 +93,7 @@ const computeMultiplier = (rate, dt)=>{
|
|
|
93
93
|
if (dateProvider) {
|
|
94
94
|
dateProvider.setTime(this.time * 1000);
|
|
95
95
|
}
|
|
96
|
-
await this.cc.rollup.markAsProven(await this.rollup.
|
|
96
|
+
await this.cc.rollup.markAsProven(await this.rollup.getCheckpointNumber());
|
|
97
97
|
this.accumulator = muldivDown(this.accumulator, computeMultiplier(this.rate, BigInt(timeDiff)), BASE);
|
|
98
98
|
}
|
|
99
99
|
depositPrivate(from, onBehalfOf, amount) {
|
|
@@ -14,8 +14,10 @@ export interface TestAccounts {
|
|
|
14
14
|
recipientAddress: AztecAddress;
|
|
15
15
|
tokenAddress: AztecAddress;
|
|
16
16
|
}
|
|
17
|
+
export type TestAccountsWithoutTokens = Omit<TestAccounts, 'tokenAddress' | 'tokenContract' | 'tokenName' | 'tokenAdminAddress'>;
|
|
17
18
|
export declare function setupTestAccountsWithTokens(nodeUrl: string, mintAmount: bigint, logger: Logger): Promise<TestAccounts>;
|
|
18
|
-
export declare function
|
|
19
|
+
export declare function deploySponsoredTestAccountsWithTokens(wallet: TestWallet, aztecNode: AztecNode, mintAmount: bigint, logger: Logger, numberOfFundedWallets?: number): Promise<TestAccounts>;
|
|
20
|
+
export declare function deploySponsoredTestAccounts(wallet: TestWallet, aztecNode: AztecNode, logger: Logger, numberOfFundedWallets?: number): Promise<TestAccountsWithoutTokens>;
|
|
19
21
|
export declare function deployTestAccountsWithTokens(nodeUrl: string, l1RpcUrls: string[], mnemonicOrPrivateKey: string, mintAmount: bigint, logger: Logger, numberOfFundedWallets?: number): Promise<TestAccounts>;
|
|
20
22
|
export declare function performTransfers({ wallet, testAccounts, rounds, transferAmount, logger, feePaymentMethod, }: {
|
|
21
23
|
wallet: TestWallet;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup_test_wallets.d.ts","sourceRoot":"","sources":["../../src/spartan/setup_test_wallets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,KAAK,gBAAgB,EAA6B,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,KAAK,SAAS,EAAyB,MAAM,sBAAsB,CAAC;AAG7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAiE,MAAM,2BAA2B,CAAC;AAMtH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,YAAY,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;CAC5B;
|
|
1
|
+
{"version":3,"file":"setup_test_wallets.d.ts","sourceRoot":"","sources":["../../src/spartan/setup_test_wallets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,KAAK,gBAAgB,EAA6B,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,KAAK,SAAS,EAAyB,MAAM,sBAAsB,CAAC;AAG7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAiE,MAAM,2BAA2B,CAAC;AAMtH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,iBAAiB,EAAE,YAAY,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,YAAY,EACZ,cAAc,GAAG,eAAe,GAAG,WAAW,GAAG,mBAAmB,CACrE,CAAC;AAMF,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,CAyBvB;AAED,wBAAsB,qCAAqC,CACzD,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,qBAAqB,SAAI,GACxB,OAAO,CAAC,YAAY,CAAC,CAuCvB;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,EACd,qBAAqB,SAAI,GACxB,OAAO,CAAC,yBAAyB,CAAC,CAwBpC;AAED,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EAAE,EACnB,oBAAoB,EAAE,MAAM,EAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,qBAAqB,SAAI,GACxB,OAAO,CAAC,YAAY,CAAC,CA+CvB;AA6ED,wBAAsB,gBAAgB,CAAC,EACrC,MAAM,EACN,YAAY,EACZ,MAAM,EACN,cAAc,EACd,MAAM,EACN,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC,iBAqBA;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAqBrF"}
|
|
@@ -34,7 +34,7 @@ export async function setupTestAccountsWithTokens(nodeUrl, mintAmount, logger) {
|
|
|
34
34
|
recipientAddress: recipientAccount
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
|
-
export async function
|
|
37
|
+
export async function deploySponsoredTestAccountsWithTokens(wallet, aztecNode, mintAmount, logger, numberOfFundedWallets = 1) {
|
|
38
38
|
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
39
39
|
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
40
40
|
const fundedAccounts = await Promise.all(funded.map((a)=>wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
@@ -75,6 +75,40 @@ export async function deploySponsoredTestAccounts(wallet, aztecNode, mintAmount,
|
|
|
75
75
|
recipientAddress: recipientAccount.address
|
|
76
76
|
};
|
|
77
77
|
}
|
|
78
|
+
export async function deploySponsoredTestAccounts(wallet, aztecNode, logger, numberOfFundedWallets = 1) {
|
|
79
|
+
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
80
|
+
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
81
|
+
const fundedAccounts = await Promise.all(funded.map((a)=>wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
82
|
+
await registerSponsoredFPC(wallet);
|
|
83
|
+
const paymentMethod = new SponsoredFeePaymentMethod(await getSponsoredFPCAddress());
|
|
84
|
+
const recipientDeployMethod = await recipientAccount.getDeployMethod();
|
|
85
|
+
await recipientDeployMethod.send({
|
|
86
|
+
from: AztecAddress.ZERO,
|
|
87
|
+
fee: {
|
|
88
|
+
paymentMethod
|
|
89
|
+
}
|
|
90
|
+
}).wait({
|
|
91
|
+
timeout: 2400
|
|
92
|
+
});
|
|
93
|
+
await Promise.all(fundedAccounts.map(async (a)=>{
|
|
94
|
+
const deployMethod = await a.getDeployMethod();
|
|
95
|
+
await deployMethod.send({
|
|
96
|
+
from: AztecAddress.ZERO,
|
|
97
|
+
fee: {
|
|
98
|
+
paymentMethod
|
|
99
|
+
}
|
|
100
|
+
}).wait({
|
|
101
|
+
timeout: 2400
|
|
102
|
+
}); // increase timeout on purpose in order to account for two empty epochs
|
|
103
|
+
logger.info(`Account deployed at ${a.address}`);
|
|
104
|
+
}));
|
|
105
|
+
return {
|
|
106
|
+
aztecNode,
|
|
107
|
+
wallet,
|
|
108
|
+
accounts: fundedAccounts.map((acc)=>acc.address),
|
|
109
|
+
recipientAddress: recipientAccount.address
|
|
110
|
+
};
|
|
111
|
+
}
|
|
78
112
|
export async function deployTestAccountsWithTokens(nodeUrl, l1RpcUrls, mnemonicOrPrivateKey, mintAmount, logger, numberOfFundedWallets = 1) {
|
|
79
113
|
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
80
114
|
const wallet = await TestWallet.create(aztecNode);
|
package/dest/spartan/utils.d.ts
CHANGED
|
@@ -50,7 +50,7 @@ export declare function startPortForward({ resource, namespace, containerPort, h
|
|
|
50
50
|
process: ChildProcess;
|
|
51
51
|
port: number;
|
|
52
52
|
}>;
|
|
53
|
-
export declare function startPortForwardForRPC(namespace: string): Promise<{
|
|
53
|
+
export declare function startPortForwardForRPC(namespace: string, resourceType?: string, index?: number): Promise<{
|
|
54
54
|
process: ChildProcess;
|
|
55
55
|
port: number;
|
|
56
56
|
}>;
|
|
@@ -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,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,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;;;;;;;;;;;;;;;;;;;;;;;;EAQpB,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,GACT,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,sBAAsB,CAAC,SAAS,EAAE,MAAM;
|
|
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,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAIpD,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;;;;;;;;;;;;;;;;;;;;;;;;EAQpB,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,GACT,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,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,SAAa,EAAE,KAAK,SAAI;aAjEnF,YAAY;UACf,MAAM;GAsEb;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM;aAzElD,YAAY;UACf,MAAM;GA8Eb;AAED,wBAAsB,oBAAoB,CAAC,EACzC,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAa,GACd,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,GACd,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,GAChB,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,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAEhE;AAgDD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CAAC,EAC1C,YAAY,EACZ,eAAe,EACf,UAAU,EACV,YAAY,EACZ,kBAAiC,EACjC,OAAe,EACf,KAAY,EACZ,MAAW,EACX,MAAM,GACP,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,mBAgCA;AAED,wBAAgB,kBAAkB,CAAC,EACjC,SAAS,EACT,UAAU,EACV,eAAe,EACf,MAAM,GACP,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,eAAe,CAAC,EAC9B,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,mBASA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,mBASA;AAED,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,UAAU,EACV,eAAe,EACf,MAAM,GACP,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,kBAAkB,CAAC,EACjC,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,GACP,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,mBASA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,UAAU,EACV,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,mBAQA;AAED,wBAAsB,kBAAkB,CACtC,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,MAAM,EACnB,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,GAClE,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,iBAsFA;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,GACP,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,qBAMpD;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,CAuB5E;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
|
@@ -137,9 +137,9 @@ export async function startPortForward({ resource, namespace, containerPort, hos
|
|
|
137
137
|
port
|
|
138
138
|
};
|
|
139
139
|
}
|
|
140
|
-
export function startPortForwardForRPC(namespace) {
|
|
140
|
+
export function startPortForwardForRPC(namespace, resourceType = 'services', index = 0) {
|
|
141
141
|
return startPortForward({
|
|
142
|
-
resource:
|
|
142
|
+
resource: `${resourceType}/${namespace}-rpc-aztec-node-${index}`,
|
|
143
143
|
namespace,
|
|
144
144
|
containerPort: 8080
|
|
145
145
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/end-to-end",
|
|
3
|
-
"version": "3.0.0-nightly.
|
|
3
|
+
"version": "3.0.0-nightly.20251126",
|
|
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": "3.0.0-nightly.
|
|
29
|
-
"@aztec/archiver": "3.0.0-nightly.
|
|
30
|
-
"@aztec/aztec": "3.0.0-nightly.
|
|
31
|
-
"@aztec/aztec-node": "3.0.0-nightly.
|
|
32
|
-
"@aztec/aztec.js": "3.0.0-nightly.
|
|
33
|
-
"@aztec/bb-prover": "3.0.0-nightly.
|
|
34
|
-
"@aztec/bb.js": "3.0.0-nightly.
|
|
35
|
-
"@aztec/blob-lib": "3.0.0-nightly.
|
|
36
|
-
"@aztec/blob-sink": "3.0.0-nightly.
|
|
37
|
-
"@aztec/bot": "3.0.0-nightly.
|
|
38
|
-
"@aztec/cli": "3.0.0-nightly.
|
|
39
|
-
"@aztec/constants": "3.0.0-nightly.
|
|
40
|
-
"@aztec/entrypoints": "3.0.0-nightly.
|
|
41
|
-
"@aztec/epoch-cache": "3.0.0-nightly.
|
|
42
|
-
"@aztec/ethereum": "3.0.0-nightly.
|
|
43
|
-
"@aztec/foundation": "3.0.0-nightly.
|
|
44
|
-
"@aztec/kv-store": "3.0.0-nightly.
|
|
45
|
-
"@aztec/l1-artifacts": "3.0.0-nightly.
|
|
46
|
-
"@aztec/merkle-tree": "3.0.0-nightly.
|
|
47
|
-
"@aztec/node-keystore": "3.0.0-nightly.
|
|
48
|
-
"@aztec/noir-contracts.js": "3.0.0-nightly.
|
|
49
|
-
"@aztec/noir-noirc_abi": "3.0.0-nightly.
|
|
50
|
-
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.
|
|
51
|
-
"@aztec/noir-test-contracts.js": "3.0.0-nightly.
|
|
52
|
-
"@aztec/p2p": "3.0.0-nightly.
|
|
53
|
-
"@aztec/protocol-contracts": "3.0.0-nightly.
|
|
54
|
-
"@aztec/prover-client": "3.0.0-nightly.
|
|
55
|
-
"@aztec/prover-node": "3.0.0-nightly.
|
|
56
|
-
"@aztec/pxe": "3.0.0-nightly.
|
|
57
|
-
"@aztec/sequencer-client": "3.0.0-nightly.
|
|
58
|
-
"@aztec/simulator": "3.0.0-nightly.
|
|
59
|
-
"@aztec/slasher": "3.0.0-nightly.
|
|
60
|
-
"@aztec/stdlib": "3.0.0-nightly.
|
|
61
|
-
"@aztec/telemetry-client": "3.0.0-nightly.
|
|
62
|
-
"@aztec/test-wallet": "3.0.0-nightly.
|
|
63
|
-
"@aztec/validator-client": "3.0.0-nightly.
|
|
64
|
-
"@aztec/world-state": "3.0.0-nightly.
|
|
28
|
+
"@aztec/accounts": "3.0.0-nightly.20251126",
|
|
29
|
+
"@aztec/archiver": "3.0.0-nightly.20251126",
|
|
30
|
+
"@aztec/aztec": "3.0.0-nightly.20251126",
|
|
31
|
+
"@aztec/aztec-node": "3.0.0-nightly.20251126",
|
|
32
|
+
"@aztec/aztec.js": "3.0.0-nightly.20251126",
|
|
33
|
+
"@aztec/bb-prover": "3.0.0-nightly.20251126",
|
|
34
|
+
"@aztec/bb.js": "3.0.0-nightly.20251126",
|
|
35
|
+
"@aztec/blob-lib": "3.0.0-nightly.20251126",
|
|
36
|
+
"@aztec/blob-sink": "3.0.0-nightly.20251126",
|
|
37
|
+
"@aztec/bot": "3.0.0-nightly.20251126",
|
|
38
|
+
"@aztec/cli": "3.0.0-nightly.20251126",
|
|
39
|
+
"@aztec/constants": "3.0.0-nightly.20251126",
|
|
40
|
+
"@aztec/entrypoints": "3.0.0-nightly.20251126",
|
|
41
|
+
"@aztec/epoch-cache": "3.0.0-nightly.20251126",
|
|
42
|
+
"@aztec/ethereum": "3.0.0-nightly.20251126",
|
|
43
|
+
"@aztec/foundation": "3.0.0-nightly.20251126",
|
|
44
|
+
"@aztec/kv-store": "3.0.0-nightly.20251126",
|
|
45
|
+
"@aztec/l1-artifacts": "3.0.0-nightly.20251126",
|
|
46
|
+
"@aztec/merkle-tree": "3.0.0-nightly.20251126",
|
|
47
|
+
"@aztec/node-keystore": "3.0.0-nightly.20251126",
|
|
48
|
+
"@aztec/noir-contracts.js": "3.0.0-nightly.20251126",
|
|
49
|
+
"@aztec/noir-noirc_abi": "3.0.0-nightly.20251126",
|
|
50
|
+
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.20251126",
|
|
51
|
+
"@aztec/noir-test-contracts.js": "3.0.0-nightly.20251126",
|
|
52
|
+
"@aztec/p2p": "3.0.0-nightly.20251126",
|
|
53
|
+
"@aztec/protocol-contracts": "3.0.0-nightly.20251126",
|
|
54
|
+
"@aztec/prover-client": "3.0.0-nightly.20251126",
|
|
55
|
+
"@aztec/prover-node": "3.0.0-nightly.20251126",
|
|
56
|
+
"@aztec/pxe": "3.0.0-nightly.20251126",
|
|
57
|
+
"@aztec/sequencer-client": "3.0.0-nightly.20251126",
|
|
58
|
+
"@aztec/simulator": "3.0.0-nightly.20251126",
|
|
59
|
+
"@aztec/slasher": "3.0.0-nightly.20251126",
|
|
60
|
+
"@aztec/stdlib": "3.0.0-nightly.20251126",
|
|
61
|
+
"@aztec/telemetry-client": "3.0.0-nightly.20251126",
|
|
62
|
+
"@aztec/test-wallet": "3.0.0-nightly.20251126",
|
|
63
|
+
"@aztec/validator-client": "3.0.0-nightly.20251126",
|
|
64
|
+
"@aztec/world-state": "3.0.0-nightly.20251126",
|
|
65
65
|
"@iarna/toml": "^2.2.5",
|
|
66
66
|
"@jest/globals": "^30.0.0",
|
|
67
67
|
"@noble/curves": "=1.0.0",
|
|
@@ -293,7 +293,7 @@ export class EpochsTestContext {
|
|
|
293
293
|
/** Waits until the given L2 block number is mined. */
|
|
294
294
|
public async waitUntilL2BlockNumber(target: number, timeout = 60) {
|
|
295
295
|
await retryUntil(
|
|
296
|
-
() => Promise.resolve(target <= this.monitor.
|
|
296
|
+
() => Promise.resolve(target <= this.monitor.checkpointNumber),
|
|
297
297
|
`Wait until L2 block ${target}`,
|
|
298
298
|
timeout,
|
|
299
299
|
0.1,
|
|
@@ -303,12 +303,12 @@ export class EpochsTestContext {
|
|
|
303
303
|
/** Waits until the given L2 block number is marked as proven. */
|
|
304
304
|
public async waitUntilProvenL2BlockNumber(t: number, timeout = 60) {
|
|
305
305
|
await retryUntil(
|
|
306
|
-
() => Promise.resolve(t <= this.monitor.
|
|
306
|
+
() => Promise.resolve(t <= this.monitor.provenCheckpointNumber),
|
|
307
307
|
`Wait proven L2 block ${t}`,
|
|
308
308
|
timeout,
|
|
309
309
|
0.1,
|
|
310
310
|
);
|
|
311
|
-
return this.monitor.
|
|
311
|
+
return this.monitor.provenCheckpointNumber;
|
|
312
312
|
}
|
|
313
313
|
|
|
314
314
|
/** Waits until the last slot of the proof submission window for a given epoch. */
|
|
@@ -60,7 +60,7 @@ describe('e2e_fees bridging_race', () => {
|
|
|
60
60
|
const origApprove = l1TokenManager.approve.bind(l1TokenManager);
|
|
61
61
|
l1TokenManager.approve = async (amount: bigint, address: Hex, addressName = '') => {
|
|
62
62
|
await origApprove(amount, address, addressName);
|
|
63
|
-
const sleepTime = (Number(t.chainMonitor.
|
|
63
|
+
const sleepTime = (Number(t.chainMonitor.checkpointTimestamp) + AZTEC_SLOT_DURATION) * 1000 - Date.now() - 500;
|
|
64
64
|
logger.info(`Sleeping for ${sleepTime}ms until near end of L2 slot before sending L1 fee juice to L2 inbox`);
|
|
65
65
|
await sleep(sleepTime);
|
|
66
66
|
};
|
|
@@ -136,7 +136,7 @@ export class FeesTest {
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
async getBlockRewards() {
|
|
139
|
-
const blockReward = await this.rollupContract.
|
|
139
|
+
const blockReward = await this.rollupContract.getCheckpointReward();
|
|
140
140
|
const rewardConfig = await this.rollupContract.getRewardConfig();
|
|
141
141
|
|
|
142
142
|
const balance = await this.feeJuiceBridgeTestHarness.getL1FeeJuiceBalance(
|
|
@@ -41,13 +41,13 @@ export async function writeJson(
|
|
|
41
41
|
messages: {
|
|
42
42
|
l2ToL1Messages: block.body.txEffects.flatMap(txEffect => txEffect.l2ToL1Msgs).map(value => asHex(value)),
|
|
43
43
|
},
|
|
44
|
-
|
|
44
|
+
checkpoint: {
|
|
45
45
|
// The json formatting in forge is a bit brittle, so we convert Fr to a number in the few values below.
|
|
46
46
|
// This should not be a problem for testing as long as the values are not larger than u32.
|
|
47
47
|
archive: asHex(block.archive.root),
|
|
48
48
|
blobCommitments: getPrefixedEthBlobCommitments(blobs),
|
|
49
49
|
batchedBlobInputs: batchedBlob.getEthBlobEvaluationInputs(),
|
|
50
|
-
|
|
50
|
+
checkpointNumber: block.number,
|
|
51
51
|
body: `0x${block.body.toBuffer().toString('hex')}`,
|
|
52
52
|
header: {
|
|
53
53
|
lastArchiveRoot: asHex(block.header.lastArchive.root),
|
|
@@ -292,7 +292,7 @@ export class P2PNetworkTest {
|
|
|
292
292
|
});
|
|
293
293
|
|
|
294
294
|
await cheatCodes.rollup.advanceToEpoch(
|
|
295
|
-
(await cheatCodes.rollup.getEpoch()) + (await rollup.read.
|
|
295
|
+
(await cheatCodes.rollup.getEpoch()) + (await rollup.read.getLagInEpochsForValidatorSet()) + 1n,
|
|
296
296
|
);
|
|
297
297
|
|
|
298
298
|
// Send and await a tx to make sure we mine a block for the warp to correctly progress.
|
package/src/e2e_p2p/shared.ts
CHANGED
|
@@ -213,7 +213,7 @@ export async function awaitCommitteeKicked({
|
|
|
213
213
|
|
|
214
214
|
if (slashingProposer.type === 'empire') {
|
|
215
215
|
// Await for the slash payload to be created if empire (no payload is created on tally until execution time)
|
|
216
|
-
const targetEpoch = (await cheatCodes.getEpoch()) + (await rollup.
|
|
216
|
+
const targetEpoch = (await cheatCodes.getEpoch()) + (await rollup.getLagInEpochsForValidatorSet()) + 1n;
|
|
217
217
|
logger.info(`Advancing to epoch ${targetEpoch} so we start slashing`);
|
|
218
218
|
await cheatCodes.advanceToEpoch(targetEpoch);
|
|
219
219
|
|
|
@@ -269,7 +269,7 @@ export async function awaitCommitteeKicked({
|
|
|
269
269
|
|
|
270
270
|
logger.info(`Advancing to check current committee`);
|
|
271
271
|
await cheatCodes.debugRollup();
|
|
272
|
-
await cheatCodes.advanceToEpoch((await cheatCodes.getEpoch()) + (await rollup.
|
|
272
|
+
await cheatCodes.advanceToEpoch((await cheatCodes.getEpoch()) + (await rollup.getLagInEpochsForValidatorSet()) + 1n);
|
|
273
273
|
await cheatCodes.debugRollup();
|
|
274
274
|
|
|
275
275
|
const committeeNextEpoch = await rollup.getCurrentEpochCommittee();
|
package/src/fixtures/utils.ts
CHANGED
|
@@ -499,7 +499,7 @@ export async function setup(
|
|
|
499
499
|
deployL1ContractsValues.l1ContractAddresses.rollupAddress,
|
|
500
500
|
);
|
|
501
501
|
|
|
502
|
-
const blockReward = await rollup.
|
|
502
|
+
const blockReward = await rollup.getCheckpointReward();
|
|
503
503
|
const mintAmount = 10_000n * (blockReward as bigint);
|
|
504
504
|
|
|
505
505
|
const feeJuice = getContract({
|
|
@@ -646,7 +646,9 @@ export async function setup(
|
|
|
646
646
|
(opts.initialValidators && opts.initialValidators.length > 0)
|
|
647
647
|
) {
|
|
648
648
|
// We need to advance such that the committee is set up.
|
|
649
|
-
await cheatCodes.rollup.advanceToEpoch(
|
|
649
|
+
await cheatCodes.rollup.advanceToEpoch(
|
|
650
|
+
(await cheatCodes.rollup.getEpoch()) + BigInt(config.lagInEpochsForValidatorSet + 1),
|
|
651
|
+
);
|
|
650
652
|
await cheatCodes.rollup.setupEpoch();
|
|
651
653
|
await cheatCodes.rollup.debugRollup();
|
|
652
654
|
}
|
|
@@ -262,7 +262,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
262
262
|
await wethCrossChainHarness.expectPublicBalanceOnL2(uniswapL2Contract.address, 0n);
|
|
263
263
|
|
|
264
264
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
265
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
265
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
266
266
|
|
|
267
267
|
// 5. Consume L2 to L1 message by calling uniswapPortal.swap_private()
|
|
268
268
|
logger.info('Execute withdraw and swap on the uniswapPortal!');
|
|
@@ -287,7 +287,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
287
287
|
const withdrawSiblingPath = withdrawResult!.siblingPath;
|
|
288
288
|
|
|
289
289
|
const withdrawMessageMetadata = {
|
|
290
|
-
|
|
290
|
+
_checkpointNumber: BigInt(l2UniswapInteractionReceipt.blockNumber!),
|
|
291
291
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
292
292
|
_path: withdrawSiblingPath
|
|
293
293
|
.toBufferArray()
|
|
@@ -295,7 +295,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
295
295
|
};
|
|
296
296
|
|
|
297
297
|
const swapPrivateMessageMetadata = {
|
|
298
|
-
|
|
298
|
+
_checkpointNumber: BigInt(l2UniswapInteractionReceipt.blockNumber!),
|
|
299
299
|
_leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
300
300
|
_path: swapPrivateSiblingPath
|
|
301
301
|
.toBufferArray()
|
|
@@ -506,7 +506,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
506
506
|
// );
|
|
507
507
|
|
|
508
508
|
// const withdrawMessageMetadata = {
|
|
509
|
-
//
|
|
509
|
+
// _checkpointNumber: BigInt(uniswapL2Interaction.blockNumber!),
|
|
510
510
|
// _leafIndex: BigInt(withdrawL2MessageIndex),
|
|
511
511
|
// _path: withdrawSiblingPath
|
|
512
512
|
// .toBufferArray()
|
|
@@ -514,7 +514,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
514
514
|
// };
|
|
515
515
|
|
|
516
516
|
// const swapPrivateMessageMetadata = {
|
|
517
|
-
//
|
|
517
|
+
// _checkpointNumber: BigInt(uniswapL2Interaction.blockNumber!),
|
|
518
518
|
// _leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
519
519
|
// _path: swapPrivateSiblingPath
|
|
520
520
|
// .toBufferArray()
|
|
@@ -872,7 +872,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
872
872
|
const withdrawSiblingPath = withdrawResult!.siblingPath;
|
|
873
873
|
|
|
874
874
|
const withdrawMessageMetadata = {
|
|
875
|
-
|
|
875
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber!),
|
|
876
876
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
877
877
|
_path: withdrawSiblingPath
|
|
878
878
|
.toBufferArray()
|
|
@@ -880,7 +880,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
880
880
|
};
|
|
881
881
|
|
|
882
882
|
const swapPrivateMessageMetadata = {
|
|
883
|
-
|
|
883
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber!),
|
|
884
884
|
_leafIndex: BigInt(swapPrivateL2MessageIndex),
|
|
885
885
|
_path: swapPrivateSiblingPath
|
|
886
886
|
.toBufferArray()
|
|
@@ -891,7 +891,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
891
891
|
await wethCrossChainHarness.expectPrivateBalanceOnL2(ownerAddress, wethL2BalanceBeforeSwap - wethAmountToBridge);
|
|
892
892
|
|
|
893
893
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
894
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
894
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
895
895
|
|
|
896
896
|
// On L1 call swap_public!
|
|
897
897
|
logger.info('call swap_public on L1');
|
|
@@ -1007,7 +1007,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
1007
1007
|
const withdrawSiblingPath = withdrawResult!.siblingPath;
|
|
1008
1008
|
|
|
1009
1009
|
const withdrawMessageMetadata = {
|
|
1010
|
-
|
|
1010
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber!),
|
|
1011
1011
|
_leafIndex: BigInt(withdrawL2MessageIndex),
|
|
1012
1012
|
_path: withdrawSiblingPath
|
|
1013
1013
|
.toBufferArray()
|
|
@@ -1015,7 +1015,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
1015
1015
|
};
|
|
1016
1016
|
|
|
1017
1017
|
const swapPublicMessageMetadata = {
|
|
1018
|
-
|
|
1018
|
+
_checkpointNumber: BigInt(withdrawReceipt.blockNumber!),
|
|
1019
1019
|
_leafIndex: BigInt(swapPublicL2MessageIndex),
|
|
1020
1020
|
_path: swapPublicSiblingPath
|
|
1021
1021
|
.toBufferArray()
|
|
@@ -1026,7 +1026,7 @@ export const uniswapL1L2TestSuite = (
|
|
|
1026
1026
|
await wethCrossChainHarness.expectPublicBalanceOnL2(ownerAddress, 0n);
|
|
1027
1027
|
|
|
1028
1028
|
// Since the outbox is only consumable when the block is proven, we need to set the block to be proven
|
|
1029
|
-
await cheatCodes.rollup.markAsProven(await rollup.
|
|
1029
|
+
await cheatCodes.rollup.markAsProven(await rollup.getCheckpointNumber());
|
|
1030
1030
|
|
|
1031
1031
|
// Call swap_private on L1
|
|
1032
1032
|
logger.info('Execute withdraw and swap on the uniswapPortal!');
|
|
@@ -112,7 +112,7 @@ export class LendingSimulator {
|
|
|
112
112
|
if (dateProvider) {
|
|
113
113
|
dateProvider.setTime(this.time * 1000);
|
|
114
114
|
}
|
|
115
|
-
await this.cc.rollup.markAsProven(await this.rollup.
|
|
115
|
+
await this.cc.rollup.markAsProven(await this.rollup.getCheckpointNumber());
|
|
116
116
|
this.accumulator = muldivDown(this.accumulator, computeMultiplier(this.rate, BigInt(timeDiff)), BASE);
|
|
117
117
|
}
|
|
118
118
|
|
|
@@ -28,6 +28,11 @@ export interface TestAccounts {
|
|
|
28
28
|
tokenAddress: AztecAddress;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
export type TestAccountsWithoutTokens = Omit<
|
|
32
|
+
TestAccounts,
|
|
33
|
+
'tokenAddress' | 'tokenContract' | 'tokenName' | 'tokenAdminAddress'
|
|
34
|
+
>;
|
|
35
|
+
|
|
31
36
|
const TOKEN_NAME = 'USDC';
|
|
32
37
|
const TOKEN_SYMBOL = 'USD';
|
|
33
38
|
const TOKEN_DECIMALS = 18n;
|
|
@@ -63,7 +68,7 @@ export async function setupTestAccountsWithTokens(
|
|
|
63
68
|
};
|
|
64
69
|
}
|
|
65
70
|
|
|
66
|
-
export async function
|
|
71
|
+
export async function deploySponsoredTestAccountsWithTokens(
|
|
67
72
|
wallet: TestWallet,
|
|
68
73
|
aztecNode: AztecNode,
|
|
69
74
|
mintAmount: bigint,
|
|
@@ -110,6 +115,37 @@ export async function deploySponsoredTestAccounts(
|
|
|
110
115
|
};
|
|
111
116
|
}
|
|
112
117
|
|
|
118
|
+
export async function deploySponsoredTestAccounts(
|
|
119
|
+
wallet: TestWallet,
|
|
120
|
+
aztecNode: AztecNode,
|
|
121
|
+
logger: Logger,
|
|
122
|
+
numberOfFundedWallets = 1,
|
|
123
|
+
): Promise<TestAccountsWithoutTokens> {
|
|
124
|
+
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
125
|
+
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
126
|
+
const fundedAccounts = await Promise.all(funded.map(a => wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
127
|
+
|
|
128
|
+
await registerSponsoredFPC(wallet);
|
|
129
|
+
|
|
130
|
+
const paymentMethod = new SponsoredFeePaymentMethod(await getSponsoredFPCAddress());
|
|
131
|
+
const recipientDeployMethod = await recipientAccount.getDeployMethod();
|
|
132
|
+
await recipientDeployMethod.send({ from: AztecAddress.ZERO, fee: { paymentMethod } }).wait({ timeout: 2400 });
|
|
133
|
+
await Promise.all(
|
|
134
|
+
fundedAccounts.map(async a => {
|
|
135
|
+
const deployMethod = await a.getDeployMethod();
|
|
136
|
+
await deployMethod.send({ from: AztecAddress.ZERO, fee: { paymentMethod } }).wait({ timeout: 2400 }); // increase timeout on purpose in order to account for two empty epochs
|
|
137
|
+
logger.info(`Account deployed at ${a.address}`);
|
|
138
|
+
}),
|
|
139
|
+
);
|
|
140
|
+
|
|
141
|
+
return {
|
|
142
|
+
aztecNode,
|
|
143
|
+
wallet,
|
|
144
|
+
accounts: fundedAccounts.map(acc => acc.address),
|
|
145
|
+
recipientAddress: recipientAccount.address,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
|
|
113
149
|
export async function deployTestAccountsWithTokens(
|
|
114
150
|
nodeUrl: string,
|
|
115
151
|
l1RpcUrls: string[],
|
package/src/spartan/utils.ts
CHANGED
|
@@ -160,9 +160,9 @@ export async function startPortForward({
|
|
|
160
160
|
return { process, port };
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
export function startPortForwardForRPC(namespace: string) {
|
|
163
|
+
export function startPortForwardForRPC(namespace: string, resourceType = 'services', index = 0) {
|
|
164
164
|
return startPortForward({
|
|
165
|
-
resource:
|
|
165
|
+
resource: `${resourceType}/${namespace}-rpc-aztec-node-${index}`,
|
|
166
166
|
namespace,
|
|
167
167
|
containerPort: 8080,
|
|
168
168
|
});
|