@aztec/aztec 0.0.1-commit.d1f2d6c → 0.0.1-commit.d431d1c
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/cli/aztec_start_options.d.ts +1 -1
- package/dest/cli/aztec_start_options.d.ts.map +1 -1
- package/dest/cli/aztec_start_options.js +2 -4
- package/dest/examples/token.js +3 -3
- package/dest/local-network/banana_fpc.d.ts +1 -1
- package/dest/local-network/banana_fpc.d.ts.map +1 -1
- package/dest/local-network/banana_fpc.js +2 -2
- package/dest/local-network/local-network.d.ts +2 -1
- package/dest/local-network/local-network.d.ts.map +1 -1
- package/dest/local-network/local-network.js +3 -2
- package/dest/testing/epoch_test_settler.d.ts +2 -4
- package/dest/testing/epoch_test_settler.d.ts.map +1 -1
- package/dest/testing/epoch_test_settler.js +5 -15
- package/package.json +34 -34
- package/scripts/aztec.sh +1 -1
- package/src/cli/aztec_start_options.ts +1 -3
- package/src/examples/token.ts +5 -3
- package/src/local-network/banana_fpc.ts +6 -10
- package/src/local-network/local-network.ts +6 -8
- package/src/testing/epoch_test_settler.ts +4 -16
|
@@ -14,4 +14,4 @@ export declare const NETWORK_FLAG = "network";
|
|
|
14
14
|
export declare const aztecStartOptions: {
|
|
15
15
|
[key: string]: AztecStartOption[];
|
|
16
16
|
};
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfc3RhcnRfb3B0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9henRlY19zdGFydF9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFDTCxLQUFLLGFBQWEsRUFDbEIsS0FBSyxNQUFNLEVBSVosTUFBTSwwQkFBMEIsQ0FBQztBQWVsQyxNQUFNLFdBQVcsZ0JBQWdCO0lBQy9CLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3BCLFlBQVksRUFBRSxHQUFHLENBQUM7SUFDbEIsWUFBWSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLE1BQU0sQ0FBQztJQUNwQyxHQUFHLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUN4QixRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNwQixRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssR0FBRyxDQUFDO0NBQ2pDO0FBRUQsZUFBTyxNQUFNLFVBQVUsMEZBb0J0QixDQUFDO0FBdUJGLGVBQU8sTUFBTSxnQkFBZ0IsVUFZNUIsQ0FBQztBQUVGLGVBQU8sTUFBTSxZQUFZLFlBQVksQ0FBQztBQUd0QyxlQUFPLE1BQU0saUJBQWlCLEVBQUU7SUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQTtDQWlObEUsQ0FBQyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aztec_start_options.d.ts","sourceRoot":"","sources":["../../src/cli/aztec_start_options.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,MAAM,EAIZ,MAAM,0BAA0B,CAAC;AAelC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC;IACpC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;CACjC;AAED,eAAO,MAAM,UAAU,0FAoBtB,CAAC;AAuBF,eAAO,MAAM,gBAAgB,UAY5B,CAAC;AAEF,eAAO,MAAM,YAAY,YAAY,CAAC;AAGtC,eAAO,MAAM,iBAAiB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"aztec_start_options.d.ts","sourceRoot":"","sources":["../../src/cli/aztec_start_options.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,MAAM,EAIZ,MAAM,0BAA0B,CAAC;AAelC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,GAAG,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC;IACpC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;CACjC;AAED,eAAO,MAAM,UAAU,0FAoBtB,CAAC;AAuBF,eAAO,MAAM,gBAAgB,UAY5B,CAAC;AAEF,eAAO,MAAM,YAAY,YAAY,CAAC;AAGtC,eAAO,MAAM,iBAAiB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;CAiNlE,CAAC"}
|
|
@@ -13,7 +13,7 @@ import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/pr
|
|
|
13
13
|
import { proverNodeConfigMappings } from '@aztec/prover-node/config';
|
|
14
14
|
import { allPxeConfigMappings } from '@aztec/pxe/config';
|
|
15
15
|
import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
|
|
16
|
-
import { chainConfigMappings
|
|
16
|
+
import { chainConfigMappings } from '@aztec/stdlib/config';
|
|
17
17
|
import { telemetryClientConfigMappings } from '@aztec/telemetry-client/config';
|
|
18
18
|
import { worldStateConfigMappings } from '@aztec/world-state/config';
|
|
19
19
|
import { DefaultMnemonic } from '../mnemonic.js';
|
|
@@ -116,9 +116,7 @@ export const aztecStartOptions = {
|
|
|
116
116
|
description: 'Prefix for API routes on any service that is started',
|
|
117
117
|
defaultValue: '',
|
|
118
118
|
env: 'API_PREFIX'
|
|
119
|
-
}
|
|
120
|
-
configToFlag('--rpcMaxBatchSize', nodeRpcConfigMappings.rpcMaxBatchSize),
|
|
121
|
-
configToFlag('--rpcMaxBodySize', nodeRpcConfigMappings.rpcMaxBodySize)
|
|
119
|
+
}
|
|
122
120
|
],
|
|
123
121
|
ETHEREUM: [
|
|
124
122
|
configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
|
package/dest/examples/token.js
CHANGED
|
@@ -23,13 +23,13 @@ const TRANSFER_AMOUNT = 33n;
|
|
|
23
23
|
logger.info('Deploying Token...');
|
|
24
24
|
const token = await TokenContract.deploy(wallet, alice, 'TokenName', 'TokenSymbol', 18).send({
|
|
25
25
|
from: alice
|
|
26
|
-
});
|
|
26
|
+
}).deployed();
|
|
27
27
|
logger.info('Token deployed');
|
|
28
28
|
// Mint tokens to Alice
|
|
29
29
|
logger.info(`Minting ${ALICE_MINT_BALANCE} more coins to Alice...`);
|
|
30
30
|
await token.methods.mint_to_private(alice, ALICE_MINT_BALANCE).send({
|
|
31
31
|
from: alice
|
|
32
|
-
});
|
|
32
|
+
}).wait();
|
|
33
33
|
logger.info(`${ALICE_MINT_BALANCE} tokens were successfully minted by Alice and transferred to private`);
|
|
34
34
|
const balanceAfterMint = await token.methods.balance_of_private(alice).simulate({
|
|
35
35
|
from: alice
|
|
@@ -39,7 +39,7 @@ const TRANSFER_AMOUNT = 33n;
|
|
|
39
39
|
logger.info(`Transferring ${TRANSFER_AMOUNT} tokens from Alice to Bob...`);
|
|
40
40
|
await token.methods.transfer(bob, TRANSFER_AMOUNT).send({
|
|
41
41
|
from: alice
|
|
42
|
-
});
|
|
42
|
+
}).wait();
|
|
43
43
|
// Check the new balances
|
|
44
44
|
const aliceBalance = await token.methods.balance_of_private(alice).simulate({
|
|
45
45
|
from: alice
|
|
@@ -7,4 +7,4 @@ export declare function getBananaFPCAddress(initialAccounts: InitialAccountData[
|
|
|
7
7
|
export declare function setupBananaFPC(initialAccounts: InitialAccountData[], wallet: Wallet, log: LogFn): Promise<void>;
|
|
8
8
|
export declare function registerDeployedBananaCoinInWalletAndGetAddress(wallet: Wallet): Promise<AztecAddress>;
|
|
9
9
|
export declare function registerDeployedBananaFPCInWalletAndGetAddress(wallet: Wallet): Promise<AztecAddress>;
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuYW5hX2ZwYy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvY2FsLW5ldHdvcmsvYmFuYW5hX2ZwYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxrQkFBa0IsRUFBOEIsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RixPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRCxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUduRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUF3QjNELHdCQUFzQixvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsa0JBQWtCLEVBQUUseUJBRS9FO0FBV0Qsd0JBQXNCLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSx5QkFFOUU7QUFFRCx3QkFBc0IsY0FBYyxDQUFDLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssaUJBY3JHO0FBRUQsd0JBQXNCLCtDQUErQyxDQUFDLE1BQU0sRUFBRSxNQUFNLHlCQU1uRjtBQUVELHdCQUFzQiw4Q0FBOEMsQ0FBQyxNQUFNLEVBQUUsTUFBTSx5QkFNbEYifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"banana_fpc.d.ts","sourceRoot":"","sources":["../../src/local-network/banana_fpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,yBAAyB,CAAC;AAC9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAwB3D,wBAAsB,oBAAoB,CAAC,eAAe,EAAE,kBAAkB,EAAE,yBAE/E;AAWD,wBAAsB,mBAAmB,CAAC,eAAe,EAAE,kBAAkB,EAAE,yBAE9E;AAED,wBAAsB,cAAc,CAAC,eAAe,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"banana_fpc.d.ts","sourceRoot":"","sources":["../../src/local-network/banana_fpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAA8B,MAAM,yBAAyB,CAAC;AAC9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAwB3D,wBAAsB,oBAAoB,CAAC,eAAe,EAAE,kBAAkB,EAAE,yBAE/E;AAWD,wBAAsB,mBAAmB,CAAC,eAAe,EAAE,kBAAkB,EAAE,yBAE9E;AAED,wBAAsB,cAAc,CAAC,eAAe,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,iBAcrG;AAED,wBAAsB,+CAA+C,CAAC,MAAM,EAAE,MAAM,yBAMnF;AAED,wBAAsB,8CAA8C,CAAC,MAAM,EAAE,MAAM,yBAMlF"}
|
|
@@ -51,12 +51,12 @@ export async function setupBananaFPC(initialAccounts, wallet, log) {
|
|
|
51
51
|
from: admin,
|
|
52
52
|
contractAddressSalt: BANANA_COIN_SALT,
|
|
53
53
|
universalDeploy: true
|
|
54
|
-
}),
|
|
54
|
+
}).deployed(),
|
|
55
55
|
FPCContract.deploy(wallet, bananaCoinAddress, admin).send({
|
|
56
56
|
from: admin,
|
|
57
57
|
contractAddressSalt: BANANA_FPC_SALT,
|
|
58
58
|
universalDeploy: true
|
|
59
|
-
})
|
|
59
|
+
}).deployed()
|
|
60
60
|
]);
|
|
61
61
|
log(`BananaCoin: ${bananaCoin.address}`);
|
|
62
62
|
log(`FPC: ${fpc.address}`);
|
|
@@ -15,6 +15,7 @@ import { type Hex } from 'viem';
|
|
|
15
15
|
* @param hdAccount - Account for publishing L1 contracts
|
|
16
16
|
*/
|
|
17
17
|
export declare function deployContractsToL1(aztecNodeConfig: AztecNodeConfig, privateKey: Hex, opts?: {
|
|
18
|
+
assumeProvenThroughBlockNumber?: number;
|
|
18
19
|
genesisArchiveRoot?: Fr;
|
|
19
20
|
feeJuicePortalInitialBalance?: bigint;
|
|
20
21
|
}): Promise<{
|
|
@@ -68,4 +69,4 @@ export declare function createAztecNode(config?: Partial<AztecNodeConfig>, deps?
|
|
|
68
69
|
}, options?: {
|
|
69
70
|
prefilledPublicData?: PublicDataTreeLeaf[];
|
|
70
71
|
}): Promise<AztecNodeService>;
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbmV0d29yay5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvY2FsLW5ldHdvcmsvbG9jYWwtbmV0d29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFvQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsS0FBSyxtQkFBbUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQVN2RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBb0IsTUFBTSx5QkFBeUIsQ0FBQztBQUd6RSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlELE9BQU8sRUFDTCxLQUFLLGVBQWUsRUFHckIsTUFBTSx5QkFBeUIsQ0FBQztBQUlqQyxPQUFPLEVBQUUsS0FBSyxHQUFHLEVBQTJELE1BQU0sTUFBTSxDQUFDO0FBZXpGOzs7O0dBSUc7QUFDSCx3QkFBc0IsbUJBQW1CLENBQ3ZDLGVBQWUsRUFBRSxlQUFlLEVBQ2hDLFVBQVUsRUFBRSxHQUFHLEVBQ2YsSUFBSSxHQUFFO0lBQ0osOEJBQThCLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDeEMsa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDeEIsNEJBQTRCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDbEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JQO0FBRUQsOEJBQThCO0FBQzlCLE1BQU0sTUFBTSxrQkFBa0IsR0FBRyxlQUFlLEdBQUc7SUFDakQsMERBQTBEO0lBQzFELFVBQVUsRUFBRSxNQUFNLENBQUM7SUFDbkIsNkRBQTZEO0lBQzdELFlBQVksRUFBRSxPQUFPLENBQUM7Q0FDdkIsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCx3QkFBc0Isa0JBQWtCLENBQUMsTUFBTSx5Q0FBa0MsRUFBRSxPQUFPLEVBQUUsS0FBSzs7O0dBOEhoRztBQUVEOzs7R0FHRztBQUNILHdCQUFzQixlQUFlLENBQ25DLE1BQU0sR0FBRSxPQUFPLENBQUMsZUFBZSxDQUFNLEVBQ3JDLElBQUksR0FBRTtJQUFFLFNBQVMsQ0FBQyxFQUFFLGVBQWUsQ0FBQztJQUFDLFVBQVUsQ0FBQyxFQUFFLG1CQUFtQixDQUFDO0lBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxDQUFBO0NBQU8sRUFDekcsT0FBTyxHQUFFO0lBQUUsbUJBQW1CLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxDQUFBO0NBQU8sNkJBVzdEIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-network.d.ts","sourceRoot":"","sources":["../../src/local-network/local-network.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,2BAA2B,CAAC;AASvF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAoB,MAAM,yBAAyB,CAAC;AAGzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,KAAK,GAAG,EAA2D,MAAM,MAAM,CAAC;AAezF;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,GAAG,EACf,IAAI,GAAE;IACJ,kBAAkB,CAAC,EAAE,EAAE,CAAC;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAClC;;;;;;;;;;;;;;;;;;;;;;;GAoBP;AAED,8BAA8B;AAC9B,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,yCAAkC,EAAE,OAAO,EAAE,KAAK;;;
|
|
1
|
+
{"version":3,"file":"local-network.d.ts","sourceRoot":"","sources":["../../src/local-network/local-network.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAE5C,OAAO,EAAE,KAAK,mBAAmB,EAAoB,MAAM,2BAA2B,CAAC;AASvF,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAoB,MAAM,yBAAyB,CAAC;AAGzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,KAAK,GAAG,EAA2D,MAAM,MAAM,CAAC;AAezF;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,GAAG,EACf,IAAI,GAAE;IACJ,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,kBAAkB,CAAC,EAAE,EAAE,CAAC;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAClC;;;;;;;;;;;;;;;;;;;;;;;GAoBP;AAED,8BAA8B;AAC9B,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,yCAAkC,EAAE,OAAO,EAAE,KAAK;;;GA8HhG;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,eAAe,CAAC;IAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,YAAY,CAAA;CAAO,EACzG,OAAO,GAAE;IAAE,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAO,6BAW7D"}
|
|
@@ -108,6 +108,7 @@ const localAnvil = foundry;
|
|
|
108
108
|
let watcher;
|
|
109
109
|
if (!aztecNodeConfig.p2pEnabled) {
|
|
110
110
|
({ rollupAddress } = await deployContractsToL1(aztecNodeConfig, aztecNodeConfig.validatorPrivateKeys.getValue()[0], {
|
|
111
|
+
assumeProvenThroughBlockNumber: Number.MAX_SAFE_INTEGER,
|
|
111
112
|
genesisArchiveRoot,
|
|
112
113
|
feeJuicePortalInitialBalance: fundingNeeded
|
|
113
114
|
}));
|
|
@@ -142,7 +143,7 @@ const localAnvil = foundry;
|
|
|
142
143
|
});
|
|
143
144
|
let epochTestSettler;
|
|
144
145
|
if (!aztecNodeConfig.p2pEnabled) {
|
|
145
|
-
epochTestSettler = new EpochTestSettler(cheatcodes, rollupAddress, node.getBlockSource(),
|
|
146
|
+
epochTestSettler = new EpochTestSettler(cheatcodes, rollupAddress, node.getBlockSource(), {
|
|
146
147
|
pollingIntervalMs: 200
|
|
147
148
|
});
|
|
148
149
|
await epochTestSettler.start();
|
|
@@ -153,7 +154,7 @@ const localAnvil = foundry;
|
|
|
153
154
|
};
|
|
154
155
|
const wallet = await TestWallet.create(node, PXEConfig);
|
|
155
156
|
userLog('Setting up funded test accounts...');
|
|
156
|
-
const accountManagers = await deployFundedSchnorrAccounts(wallet, initialAccounts);
|
|
157
|
+
const accountManagers = await deployFundedSchnorrAccounts(wallet, node, initialAccounts);
|
|
157
158
|
const accountsWithSecrets = accountManagers.map((manager, i)=>({
|
|
158
159
|
account: manager,
|
|
159
160
|
secretKey: initialAccounts[i].secret
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { type EthCheatCodes } from '@aztec/ethereum/test';
|
|
2
2
|
import { type EpochNumber } from '@aztec/foundation/branded-types';
|
|
3
|
-
import type { Logger } from '@aztec/foundation/log';
|
|
4
3
|
import type { EthAddress, L2BlockSource } from '@aztec/stdlib/block';
|
|
5
4
|
export declare class EpochTestSettler {
|
|
6
5
|
private l2BlockSource;
|
|
7
|
-
private log;
|
|
8
6
|
private options;
|
|
9
7
|
private rollupCheatCodes;
|
|
10
8
|
private epochMonitor?;
|
|
11
|
-
constructor(cheatcodes: EthCheatCodes, rollupAddress: EthAddress, l2BlockSource: L2BlockSource,
|
|
9
|
+
constructor(cheatcodes: EthCheatCodes, rollupAddress: EthAddress, l2BlockSource: L2BlockSource, options: {
|
|
12
10
|
pollingIntervalMs: number;
|
|
13
11
|
provingDelayMs?: number;
|
|
14
12
|
});
|
|
@@ -16,4 +14,4 @@ export declare class EpochTestSettler {
|
|
|
16
14
|
stop(): Promise<void>;
|
|
17
15
|
handleEpochReadyToProve(epoch: EpochNumber): Promise<boolean>;
|
|
18
16
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2hfdGVzdF9zZXR0bGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdGluZy9lcG9jaF90ZXN0X3NldHRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssYUFBYSxFQUFvQixNQUFNLHNCQUFzQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBYyxNQUFNLGlDQUFpQyxDQUFDO0FBRS9FLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRSxxQkFBYSxnQkFBZ0I7SUFPekIsT0FBTyxDQUFDLGFBQWE7SUFDckIsT0FBTyxDQUFDLE9BQU87SUFQakIsT0FBTyxDQUFDLGdCQUFnQixDQUFtQjtJQUMzQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQWU7SUFFcEMsWUFDRSxVQUFVLEVBQUUsYUFBYSxFQUN6QixhQUFhLEVBQUUsVUFBVSxFQUNqQixhQUFhLEVBQUUsYUFBYSxFQUM1QixPQUFPLEVBQUU7UUFBRSxpQkFBaUIsRUFBRSxNQUFNLENBQUM7UUFBQyxjQUFjLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxFQUd4RTtJQUVLLEtBQUssa0JBSVY7SUFFSyxJQUFJLGtCQUVUO0lBRUssdUJBQXVCLENBQUMsS0FBSyxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBMkJsRTtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epoch_test_settler.d.ts","sourceRoot":"","sources":["../../src/testing/epoch_test_settler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,KAAK,WAAW,EAAc,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"epoch_test_settler.d.ts","sourceRoot":"","sources":["../../src/testing/epoch_test_settler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAoB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,KAAK,WAAW,EAAc,MAAM,iCAAiC,CAAC;AAE/E,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGrE,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,OAAO;IAPjB,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC,YACE,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,UAAU,EACjB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,EAGxE;IAEK,KAAK,kBAIV;IAEK,IAAI,kBAET;IAEK,uBAAuB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CA2BlE;CACF"}
|
|
@@ -4,13 +4,11 @@ import { EpochMonitor } from '@aztec/prover-node';
|
|
|
4
4
|
import { computeL2ToL1MembershipWitnessFromMessagesInEpoch } from '@aztec/stdlib/messaging';
|
|
5
5
|
export class EpochTestSettler {
|
|
6
6
|
l2BlockSource;
|
|
7
|
-
log;
|
|
8
7
|
options;
|
|
9
8
|
rollupCheatCodes;
|
|
10
9
|
epochMonitor;
|
|
11
|
-
constructor(cheatcodes, rollupAddress, l2BlockSource,
|
|
10
|
+
constructor(cheatcodes, rollupAddress, l2BlockSource, options){
|
|
12
11
|
this.l2BlockSource = l2BlockSource;
|
|
13
|
-
this.log = log;
|
|
14
12
|
this.options = options;
|
|
15
13
|
this.rollupCheatCodes = new RollupCheatCodes(cheatcodes, {
|
|
16
14
|
rollupAddress
|
|
@@ -27,11 +25,7 @@ export class EpochTestSettler {
|
|
|
27
25
|
await this.epochMonitor?.stop();
|
|
28
26
|
}
|
|
29
27
|
async handleEpochReadyToProve(epoch) {
|
|
30
|
-
const
|
|
31
|
-
const blocks = checkpointedBlocks.map((b)=>b.block);
|
|
32
|
-
this.log.info(`Settling epoch ${epoch} with blocks ${blocks[0]?.header.getBlockNumber()} to ${blocks.at(-1)?.header.getBlockNumber()}`, {
|
|
33
|
-
blocks: blocks.map((b)=>b.toBlockInfo())
|
|
34
|
-
});
|
|
28
|
+
const blocks = await this.l2BlockSource.getBlocksForEpoch(epoch);
|
|
35
29
|
const messagesInEpoch = [];
|
|
36
30
|
let previousSlotNumber = SlotNumber.ZERO;
|
|
37
31
|
let checkpointIndex = -1;
|
|
@@ -48,14 +42,10 @@ export class EpochTestSettler {
|
|
|
48
42
|
if (firstMessage) {
|
|
49
43
|
const { root: outHash } = computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, firstMessage);
|
|
50
44
|
await this.rollupCheatCodes.insertOutbox(epoch, outHash.toBigInt());
|
|
51
|
-
} else {
|
|
52
|
-
this.log.info(`No L2 to L1 messages in epoch ${epoch}`);
|
|
53
45
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
await this.rollupCheatCodes.markAsProven(
|
|
57
|
-
} else {
|
|
58
|
-
this.log.warn(`No checkpoint found for epoch ${epoch}`);
|
|
46
|
+
// Mark the blocks as proven.
|
|
47
|
+
for (const block of blocks){
|
|
48
|
+
await this.rollupCheatCodes.markAsProven(block.number);
|
|
59
49
|
}
|
|
60
50
|
return true;
|
|
61
51
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/aztec",
|
|
3
|
-
"version": "0.0.1-commit.
|
|
3
|
+
"version": "0.0.1-commit.d431d1c",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
@@ -28,39 +28,39 @@
|
|
|
28
28
|
"../package.common.json"
|
|
29
29
|
],
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@aztec/accounts": "0.0.1-commit.
|
|
32
|
-
"@aztec/archiver": "0.0.1-commit.
|
|
33
|
-
"@aztec/aztec-faucet": "0.0.1-commit.
|
|
34
|
-
"@aztec/aztec-node": "0.0.1-commit.
|
|
35
|
-
"@aztec/aztec.js": "0.0.1-commit.
|
|
36
|
-
"@aztec/bb-prover": "0.0.1-commit.
|
|
37
|
-
"@aztec/bb.js": "0.0.1-commit.
|
|
38
|
-
"@aztec/blob-client": "0.0.1-commit.
|
|
39
|
-
"@aztec/bot": "0.0.1-commit.
|
|
40
|
-
"@aztec/builder": "0.0.1-commit.
|
|
41
|
-
"@aztec/cli": "0.0.1-commit.
|
|
42
|
-
"@aztec/constants": "0.0.1-commit.
|
|
43
|
-
"@aztec/entrypoints": "0.0.1-commit.
|
|
44
|
-
"@aztec/ethereum": "0.0.1-commit.
|
|
45
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
46
|
-
"@aztec/kv-store": "0.0.1-commit.
|
|
47
|
-
"@aztec/l1-artifacts": "0.0.1-commit.
|
|
48
|
-
"@aztec/node-lib": "0.0.1-commit.
|
|
49
|
-
"@aztec/noir-contracts.js": "0.0.1-commit.
|
|
50
|
-
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.
|
|
51
|
-
"@aztec/p2p": "0.0.1-commit.
|
|
52
|
-
"@aztec/p2p-bootstrap": "0.0.1-commit.
|
|
53
|
-
"@aztec/protocol-contracts": "0.0.1-commit.
|
|
54
|
-
"@aztec/prover-client": "0.0.1-commit.
|
|
55
|
-
"@aztec/prover-node": "0.0.1-commit.
|
|
56
|
-
"@aztec/pxe": "0.0.1-commit.
|
|
57
|
-
"@aztec/sequencer-client": "0.0.1-commit.
|
|
58
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
59
|
-
"@aztec/telemetry-client": "0.0.1-commit.
|
|
60
|
-
"@aztec/test-wallet": "0.0.1-commit.
|
|
61
|
-
"@aztec/txe": "0.0.1-commit.
|
|
62
|
-
"@aztec/validator-ha-signer": "0.0.1-commit.
|
|
63
|
-
"@aztec/world-state": "0.0.1-commit.
|
|
31
|
+
"@aztec/accounts": "0.0.1-commit.d431d1c",
|
|
32
|
+
"@aztec/archiver": "0.0.1-commit.d431d1c",
|
|
33
|
+
"@aztec/aztec-faucet": "0.0.1-commit.d431d1c",
|
|
34
|
+
"@aztec/aztec-node": "0.0.1-commit.d431d1c",
|
|
35
|
+
"@aztec/aztec.js": "0.0.1-commit.d431d1c",
|
|
36
|
+
"@aztec/bb-prover": "0.0.1-commit.d431d1c",
|
|
37
|
+
"@aztec/bb.js": "0.0.1-commit.d431d1c",
|
|
38
|
+
"@aztec/blob-client": "0.0.1-commit.d431d1c",
|
|
39
|
+
"@aztec/bot": "0.0.1-commit.d431d1c",
|
|
40
|
+
"@aztec/builder": "0.0.1-commit.d431d1c",
|
|
41
|
+
"@aztec/cli": "0.0.1-commit.d431d1c",
|
|
42
|
+
"@aztec/constants": "0.0.1-commit.d431d1c",
|
|
43
|
+
"@aztec/entrypoints": "0.0.1-commit.d431d1c",
|
|
44
|
+
"@aztec/ethereum": "0.0.1-commit.d431d1c",
|
|
45
|
+
"@aztec/foundation": "0.0.1-commit.d431d1c",
|
|
46
|
+
"@aztec/kv-store": "0.0.1-commit.d431d1c",
|
|
47
|
+
"@aztec/l1-artifacts": "0.0.1-commit.d431d1c",
|
|
48
|
+
"@aztec/node-lib": "0.0.1-commit.d431d1c",
|
|
49
|
+
"@aztec/noir-contracts.js": "0.0.1-commit.d431d1c",
|
|
50
|
+
"@aztec/noir-protocol-circuits-types": "0.0.1-commit.d431d1c",
|
|
51
|
+
"@aztec/p2p": "0.0.1-commit.d431d1c",
|
|
52
|
+
"@aztec/p2p-bootstrap": "0.0.1-commit.d431d1c",
|
|
53
|
+
"@aztec/protocol-contracts": "0.0.1-commit.d431d1c",
|
|
54
|
+
"@aztec/prover-client": "0.0.1-commit.d431d1c",
|
|
55
|
+
"@aztec/prover-node": "0.0.1-commit.d431d1c",
|
|
56
|
+
"@aztec/pxe": "0.0.1-commit.d431d1c",
|
|
57
|
+
"@aztec/sequencer-client": "0.0.1-commit.d431d1c",
|
|
58
|
+
"@aztec/stdlib": "0.0.1-commit.d431d1c",
|
|
59
|
+
"@aztec/telemetry-client": "0.0.1-commit.d431d1c",
|
|
60
|
+
"@aztec/test-wallet": "0.0.1-commit.d431d1c",
|
|
61
|
+
"@aztec/txe": "0.0.1-commit.d431d1c",
|
|
62
|
+
"@aztec/validator-ha-signer": "0.0.1-commit.d431d1c",
|
|
63
|
+
"@aztec/world-state": "0.0.1-commit.d431d1c",
|
|
64
64
|
"@types/chalk": "^2.2.0",
|
|
65
65
|
"abitype": "^0.8.11",
|
|
66
66
|
"chalk": "^5.3.0",
|
package/scripts/aztec.sh
CHANGED
|
@@ -27,7 +27,7 @@ case $cmd in
|
|
|
27
27
|
trap 'kill $server_pid &>/dev/null || true' EXIT
|
|
28
28
|
while ! nc -z 127.0.0.1 8081 &>/dev/null; do sleep 0.2; done
|
|
29
29
|
export NARGO_FOREIGN_CALL_TIMEOUT=300000
|
|
30
|
-
nargo test --silence-warnings
|
|
30
|
+
nargo test --silence-warnings --pedantic-solving --oracle-resolver http://127.0.0.1:8081 "$@"
|
|
31
31
|
;;
|
|
32
32
|
start)
|
|
33
33
|
if [ "${1:-}" == "--local-network" ]; then
|
|
@@ -19,7 +19,7 @@ import { proverAgentConfigMappings, proverBrokerConfigMappings } from '@aztec/pr
|
|
|
19
19
|
import { proverNodeConfigMappings } from '@aztec/prover-node/config';
|
|
20
20
|
import { allPxeConfigMappings } from '@aztec/pxe/config';
|
|
21
21
|
import { sequencerClientConfigMappings } from '@aztec/sequencer-client/config';
|
|
22
|
-
import { chainConfigMappings
|
|
22
|
+
import { chainConfigMappings } from '@aztec/stdlib/config';
|
|
23
23
|
import { telemetryClientConfigMappings } from '@aztec/telemetry-client/config';
|
|
24
24
|
import { worldStateConfigMappings } from '@aztec/world-state/config';
|
|
25
25
|
|
|
@@ -148,8 +148,6 @@ export const aztecStartOptions: { [key: string]: AztecStartOption[] } = {
|
|
|
148
148
|
defaultValue: '',
|
|
149
149
|
env: 'API_PREFIX',
|
|
150
150
|
},
|
|
151
|
-
configToFlag('--rpcMaxBatchSize', nodeRpcConfigMappings.rpcMaxBatchSize),
|
|
152
|
-
configToFlag('--rpcMaxBodySize', nodeRpcConfigMappings.rpcMaxBodySize),
|
|
153
151
|
],
|
|
154
152
|
ETHEREUM: [
|
|
155
153
|
configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
|
package/src/examples/token.ts
CHANGED
|
@@ -32,12 +32,14 @@ async function main() {
|
|
|
32
32
|
logger.info(`Fetched Alice and Bob accounts: ${alice.toString()}, ${bob.toString()}`);
|
|
33
33
|
|
|
34
34
|
logger.info('Deploying Token...');
|
|
35
|
-
const token = await TokenContract.deploy(wallet, alice, 'TokenName', 'TokenSymbol', 18)
|
|
35
|
+
const token = await TokenContract.deploy(wallet, alice, 'TokenName', 'TokenSymbol', 18)
|
|
36
|
+
.send({ from: alice })
|
|
37
|
+
.deployed();
|
|
36
38
|
logger.info('Token deployed');
|
|
37
39
|
|
|
38
40
|
// Mint tokens to Alice
|
|
39
41
|
logger.info(`Minting ${ALICE_MINT_BALANCE} more coins to Alice...`);
|
|
40
|
-
await token.methods.mint_to_private(alice, ALICE_MINT_BALANCE).send({ from: alice });
|
|
42
|
+
await token.methods.mint_to_private(alice, ALICE_MINT_BALANCE).send({ from: alice }).wait();
|
|
41
43
|
|
|
42
44
|
logger.info(`${ALICE_MINT_BALANCE} tokens were successfully minted by Alice and transferred to private`);
|
|
43
45
|
|
|
@@ -46,7 +48,7 @@ async function main() {
|
|
|
46
48
|
|
|
47
49
|
// We will now transfer tokens from Alice to Bob
|
|
48
50
|
logger.info(`Transferring ${TRANSFER_AMOUNT} tokens from Alice to Bob...`);
|
|
49
|
-
await token.methods.transfer(bob, TRANSFER_AMOUNT).send({ from: alice });
|
|
51
|
+
await token.methods.transfer(bob, TRANSFER_AMOUNT).send({ from: alice }).wait();
|
|
50
52
|
|
|
51
53
|
// Check the new balances
|
|
52
54
|
const aliceBalance = await token.methods.balance_of_private(alice).simulate({ from: alice });
|
|
@@ -49,16 +49,12 @@ export async function setupBananaFPC(initialAccounts: InitialAccountData[], wall
|
|
|
49
49
|
const bananaCoinAddress = await getBananaCoinAddress(initialAccounts);
|
|
50
50
|
const admin = getBananaAdmin(initialAccounts);
|
|
51
51
|
const [bananaCoin, fpc] = await Promise.all([
|
|
52
|
-
TokenContract.deploy(wallet, admin, bananaCoinArgs.name, bananaCoinArgs.symbol, bananaCoinArgs.decimal)
|
|
53
|
-
from: admin,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
from: admin,
|
|
59
|
-
contractAddressSalt: BANANA_FPC_SALT,
|
|
60
|
-
universalDeploy: true,
|
|
61
|
-
}),
|
|
52
|
+
TokenContract.deploy(wallet, admin, bananaCoinArgs.name, bananaCoinArgs.symbol, bananaCoinArgs.decimal)
|
|
53
|
+
.send({ from: admin, contractAddressSalt: BANANA_COIN_SALT, universalDeploy: true })
|
|
54
|
+
.deployed(),
|
|
55
|
+
FPCContract.deploy(wallet, bananaCoinAddress, admin)
|
|
56
|
+
.send({ from: admin, contractAddressSalt: BANANA_FPC_SALT, universalDeploy: true })
|
|
57
|
+
.deployed(),
|
|
62
58
|
]);
|
|
63
59
|
|
|
64
60
|
log(`BananaCoin: ${bananaCoin.address}`);
|
|
@@ -51,6 +51,7 @@ export async function deployContractsToL1(
|
|
|
51
51
|
aztecNodeConfig: AztecNodeConfig,
|
|
52
52
|
privateKey: Hex,
|
|
53
53
|
opts: {
|
|
54
|
+
assumeProvenThroughBlockNumber?: number;
|
|
54
55
|
genesisArchiveRoot?: Fr;
|
|
55
56
|
feeJuicePortalInitialBalance?: bigint;
|
|
56
57
|
} = {},
|
|
@@ -148,6 +149,7 @@ export async function createLocalNetwork(config: Partial<LocalNetworkConfig> = {
|
|
|
148
149
|
aztecNodeConfig,
|
|
149
150
|
aztecNodeConfig.validatorPrivateKeys.getValue()[0],
|
|
150
151
|
{
|
|
152
|
+
assumeProvenThroughBlockNumber: Number.MAX_SAFE_INTEGER,
|
|
151
153
|
genesisArchiveRoot,
|
|
152
154
|
feeJuicePortalInitialBalance: fundingNeeded,
|
|
153
155
|
},
|
|
@@ -179,13 +181,9 @@ export async function createLocalNetwork(config: Partial<LocalNetworkConfig> = {
|
|
|
179
181
|
|
|
180
182
|
let epochTestSettler: EpochTestSettler | undefined;
|
|
181
183
|
if (!aztecNodeConfig.p2pEnabled) {
|
|
182
|
-
epochTestSettler = new EpochTestSettler(
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
node.getBlockSource(),
|
|
186
|
-
logger.createChild('epoch-settler'),
|
|
187
|
-
{ pollingIntervalMs: 200 },
|
|
188
|
-
);
|
|
184
|
+
epochTestSettler = new EpochTestSettler(cheatcodes!, rollupAddress!, node.getBlockSource(), {
|
|
185
|
+
pollingIntervalMs: 200,
|
|
186
|
+
});
|
|
189
187
|
await epochTestSettler.start();
|
|
190
188
|
}
|
|
191
189
|
|
|
@@ -194,7 +192,7 @@ export async function createLocalNetwork(config: Partial<LocalNetworkConfig> = {
|
|
|
194
192
|
const wallet = await TestWallet.create(node, PXEConfig);
|
|
195
193
|
|
|
196
194
|
userLog('Setting up funded test accounts...');
|
|
197
|
-
const accountManagers = await deployFundedSchnorrAccounts(wallet, initialAccounts);
|
|
195
|
+
const accountManagers = await deployFundedSchnorrAccounts(wallet, node, initialAccounts);
|
|
198
196
|
const accountsWithSecrets = accountManagers.map((manager, i) => ({
|
|
199
197
|
account: manager,
|
|
200
198
|
secretKey: initialAccounts[i].secret,
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Fr } from '@aztec/aztec.js/fields';
|
|
2
2
|
import { type EthCheatCodes, RollupCheatCodes } from '@aztec/ethereum/test';
|
|
3
3
|
import { type EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
4
|
-
import type { Logger } from '@aztec/foundation/log';
|
|
5
4
|
import { EpochMonitor } from '@aztec/prover-node';
|
|
6
5
|
import type { EthAddress, L2BlockSource } from '@aztec/stdlib/block';
|
|
7
6
|
import { computeL2ToL1MembershipWitnessFromMessagesInEpoch } from '@aztec/stdlib/messaging';
|
|
@@ -14,7 +13,6 @@ export class EpochTestSettler {
|
|
|
14
13
|
cheatcodes: EthCheatCodes,
|
|
15
14
|
rollupAddress: EthAddress,
|
|
16
15
|
private l2BlockSource: L2BlockSource,
|
|
17
|
-
private log: Logger,
|
|
18
16
|
private options: { pollingIntervalMs: number; provingDelayMs?: number },
|
|
19
17
|
) {
|
|
20
18
|
this.rollupCheatCodes = new RollupCheatCodes(cheatcodes, { rollupAddress });
|
|
@@ -31,16 +29,10 @@ export class EpochTestSettler {
|
|
|
31
29
|
}
|
|
32
30
|
|
|
33
31
|
async handleEpochReadyToProve(epoch: EpochNumber): Promise<boolean> {
|
|
34
|
-
const
|
|
35
|
-
const blocks = checkpointedBlocks.map(b => b.block);
|
|
36
|
-
this.log.info(
|
|
37
|
-
`Settling epoch ${epoch} with blocks ${blocks[0]?.header.getBlockNumber()} to ${blocks.at(-1)?.header.getBlockNumber()}`,
|
|
38
|
-
{ blocks: blocks.map(b => b.toBlockInfo()) },
|
|
39
|
-
);
|
|
32
|
+
const blocks = await this.l2BlockSource.getBlocksForEpoch(epoch);
|
|
40
33
|
const messagesInEpoch: Fr[][][][] = [];
|
|
41
34
|
let previousSlotNumber = SlotNumber.ZERO;
|
|
42
35
|
let checkpointIndex = -1;
|
|
43
|
-
|
|
44
36
|
for (const block of blocks) {
|
|
45
37
|
const slotNumber = block.header.globalVariables.slotNumber;
|
|
46
38
|
if (slotNumber !== previousSlotNumber) {
|
|
@@ -55,15 +47,11 @@ export class EpochTestSettler {
|
|
|
55
47
|
if (firstMessage) {
|
|
56
48
|
const { root: outHash } = computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, firstMessage);
|
|
57
49
|
await this.rollupCheatCodes.insertOutbox(epoch, outHash.toBigInt());
|
|
58
|
-
} else {
|
|
59
|
-
this.log.info(`No L2 to L1 messages in epoch ${epoch}`);
|
|
60
50
|
}
|
|
61
51
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
await this.rollupCheatCodes.markAsProven(
|
|
65
|
-
} else {
|
|
66
|
-
this.log.warn(`No checkpoint found for epoch ${epoch}`);
|
|
52
|
+
// Mark the blocks as proven.
|
|
53
|
+
for (const block of blocks) {
|
|
54
|
+
await this.rollupCheatCodes.markAsProven(block.number);
|
|
67
55
|
}
|
|
68
56
|
|
|
69
57
|
return true;
|