@aztec/aztec 4.0.0-nightly.20260121 → 4.0.0-nightly.20260123
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 +4 -2
- package/dest/local-network/local-network.d.ts +1 -2
- package/dest/local-network/local-network.d.ts.map +1 -1
- package/dest/local-network/local-network.js +1 -2
- package/dest/testing/epoch_test_settler.d.ts +4 -2
- package/dest/testing/epoch_test_settler.d.ts.map +1 -1
- package/dest/testing/epoch_test_settler.js +15 -5
- package/package.json +34 -34
- package/scripts/aztec.sh +1 -1
- package/src/cli/aztec_start_options.ts +3 -1
- package/src/local-network/local-network.ts +7 -5
- package/src/testing/epoch_test_settler.ts +16 -4
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfc3RhcnRfb3B0aW9ucy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaS9henRlY19zdGFydF9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFDTCxLQUFLLGFBQWEsRUFDbEIsS0FBSyxNQUFNLEVBSVosTUFBTSwwQkFBMEIsQ0FBQztBQWVsQyxNQUFNLFdBQVcsZ0JBQWdCO0lBQy9CLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3BCLFlBQVksRUFBRSxHQUFHLENBQUM7SUFDbEIsWUFBWSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLE1BQU0sQ0FBQztJQUNwQyxHQUFHLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUN4QixRQUFRLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztJQUNwQixRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEtBQUssR0FBRyxDQUFDO0NBQ2pDO0FBRUQsZUFBTyxNQUFNLFVBQVUsMEZBb0J0QixDQUFDO0FBdUJGLGVBQU8sTUFBTSxnQkFBZ0IsVUFZNUIsQ0FBQztBQUVGLGVBQU8sTUFBTSxZQUFZLFlBQVksQ0FBQztBQUd0QyxlQUFPLE1BQU0saUJBQWlCLEVBQUU7SUFBRSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQTtDQW1ObEUsQ0FBQyJ9
|
|
@@ -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;CAmNlE,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 } from '@aztec/stdlib/config';
|
|
16
|
+
import { chainConfigMappings, nodeRpcConfigMappings } 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,7 +116,9 @@ 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
|
-
}
|
|
119
|
+
},
|
|
120
|
+
configToFlag('--rpcMaxBatchSize', nodeRpcConfigMappings.rpcMaxBatchSize),
|
|
121
|
+
configToFlag('--rpcMaxBodySize', nodeRpcConfigMappings.rpcMaxBodySize)
|
|
120
122
|
],
|
|
121
123
|
ETHEREUM: [
|
|
122
124
|
configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
|
|
@@ -15,7 +15,6 @@ 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;
|
|
19
18
|
genesisArchiveRoot?: Fr;
|
|
20
19
|
feeJuicePortalInitialBalance?: bigint;
|
|
21
20
|
}): Promise<{
|
|
@@ -69,4 +68,4 @@ export declare function createAztecNode(config?: Partial<AztecNodeConfig>, deps?
|
|
|
69
68
|
}, options?: {
|
|
70
69
|
prefilledPublicData?: PublicDataTreeLeaf[];
|
|
71
70
|
}): Promise<AztecNodeService>;
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtbmV0d29yay5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvY2FsLW5ldHdvcmsvbG9jYWwtbmV0d29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssZUFBZSxFQUFvQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsS0FBSyxtQkFBbUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQVN2RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBb0IsTUFBTSx5QkFBeUIsQ0FBQztBQUd6RSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlELE9BQU8sRUFDTCxLQUFLLGVBQWUsRUFHckIsTUFBTSx5QkFBeUIsQ0FBQztBQUlqQyxPQUFPLEVBQUUsS0FBSyxHQUFHLEVBQTJELE1BQU0sTUFBTSxDQUFDO0FBZXpGOzs7O0dBSUc7QUFDSCx3QkFBc0IsbUJBQW1CLENBQ3ZDLGVBQWUsRUFBRSxlQUFlLEVBQ2hDLFVBQVUsRUFBRSxHQUFHLEVBQ2YsSUFBSSxHQUFFO0lBQ0osa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDeEIsNEJBQTRCLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDbEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JQO0FBRUQsOEJBQThCO0FBQzlCLE1BQU0sTUFBTSxrQkFBa0IsR0FBRyxlQUFlLEdBQUc7SUFDakQsMERBQTBEO0lBQzFELFVBQVUsRUFBRSxNQUFNLENBQUM7SUFDbkIsNkRBQTZEO0lBQzdELFlBQVksRUFBRSxPQUFPLENBQUM7Q0FDdkIsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCx3QkFBc0Isa0JBQWtCLENBQUMsTUFBTSx5Q0FBa0MsRUFBRSxPQUFPLEVBQUUsS0FBSzs7O0dBaUloRztBQUVEOzs7R0FHRztBQUNILHdCQUFzQixlQUFlLENBQ25DLE1BQU0sR0FBRSxPQUFPLENBQUMsZUFBZSxDQUFNLEVBQ3JDLElBQUksR0FBRTtJQUFFLFNBQVMsQ0FBQyxFQUFFLGVBQWUsQ0FBQztJQUFDLFVBQVUsQ0FBQyxFQUFFLG1CQUFtQixDQUFDO0lBQUMsWUFBWSxDQUFDLEVBQUUsWUFBWSxDQUFBO0NBQU8sRUFDekcsT0FBTyxHQUFFO0lBQUUsbUJBQW1CLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxDQUFBO0NBQU8sNkJBVzdEIn0=
|
|
@@ -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,
|
|
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;;;GAiIhG;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,7 +108,6 @@ 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,
|
|
112
111
|
genesisArchiveRoot,
|
|
113
112
|
feeJuicePortalInitialBalance: fundingNeeded
|
|
114
113
|
}));
|
|
@@ -143,7 +142,7 @@ const localAnvil = foundry;
|
|
|
143
142
|
});
|
|
144
143
|
let epochTestSettler;
|
|
145
144
|
if (!aztecNodeConfig.p2pEnabled) {
|
|
146
|
-
epochTestSettler = new EpochTestSettler(cheatcodes, rollupAddress, node.getBlockSource(), {
|
|
145
|
+
epochTestSettler = new EpochTestSettler(cheatcodes, rollupAddress, node.getBlockSource(), logger.createChild('epoch-settler'), {
|
|
147
146
|
pollingIntervalMs: 200
|
|
148
147
|
});
|
|
149
148
|
await epochTestSettler.start();
|
|
@@ -1,12 +1,14 @@
|
|
|
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';
|
|
3
4
|
import type { EthAddress, L2BlockSource } from '@aztec/stdlib/block';
|
|
4
5
|
export declare class EpochTestSettler {
|
|
5
6
|
private l2BlockSource;
|
|
7
|
+
private log;
|
|
6
8
|
private options;
|
|
7
9
|
private rollupCheatCodes;
|
|
8
10
|
private epochMonitor?;
|
|
9
|
-
constructor(cheatcodes: EthCheatCodes, rollupAddress: EthAddress, l2BlockSource: L2BlockSource, options: {
|
|
11
|
+
constructor(cheatcodes: EthCheatCodes, rollupAddress: EthAddress, l2BlockSource: L2BlockSource, log: Logger, options: {
|
|
10
12
|
pollingIntervalMs: number;
|
|
11
13
|
provingDelayMs?: number;
|
|
12
14
|
});
|
|
@@ -14,4 +16,4 @@ export declare class EpochTestSettler {
|
|
|
14
16
|
stop(): Promise<void>;
|
|
15
17
|
handleEpochReadyToProve(epoch: EpochNumber): Promise<boolean>;
|
|
16
18
|
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXBvY2hfdGVzdF9zZXR0bGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdGluZy9lcG9jaF90ZXN0X3NldHRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEtBQUssYUFBYSxFQUFvQixNQUFNLHNCQUFzQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBYyxNQUFNLGlDQUFpQyxDQUFDO0FBQy9FLE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXBELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUdyRSxxQkFBYSxnQkFBZ0I7SUFPekIsT0FBTyxDQUFDLGFBQWE7SUFDckIsT0FBTyxDQUFDLEdBQUc7SUFDWCxPQUFPLENBQUMsT0FBTztJQVJqQixPQUFPLENBQUMsZ0JBQWdCLENBQW1CO0lBQzNDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBZTtJQUVwQyxZQUNFLFVBQVUsRUFBRSxhQUFhLEVBQ3pCLGFBQWEsRUFBRSxVQUFVLEVBQ2pCLGFBQWEsRUFBRSxhQUFhLEVBQzVCLEdBQUcsRUFBRSxNQUFNLEVBQ1gsT0FBTyxFQUFFO1FBQUUsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO1FBQUMsY0FBYyxDQUFDLEVBQUUsTUFBTSxDQUFBO0tBQUUsRUFHeEU7SUFFSyxLQUFLLGtCQUlWO0lBRUssSUFBSSxrQkFFVDtJQUVLLHVCQUF1QixDQUFDLEtBQUssRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQXFDbEU7Q0FDRiJ9
|
|
@@ -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;AAC/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGrE,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,OAAO;IARjB,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC,YACE,UAAU,EAAE,aAAa,EACzB,aAAa,EAAE,UAAU,EACjB,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,MAAM,EACX,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,CAqClE;CACF"}
|
|
@@ -4,11 +4,13 @@ import { EpochMonitor } from '@aztec/prover-node';
|
|
|
4
4
|
import { computeL2ToL1MembershipWitnessFromMessagesInEpoch } from '@aztec/stdlib/messaging';
|
|
5
5
|
export class EpochTestSettler {
|
|
6
6
|
l2BlockSource;
|
|
7
|
+
log;
|
|
7
8
|
options;
|
|
8
9
|
rollupCheatCodes;
|
|
9
10
|
epochMonitor;
|
|
10
|
-
constructor(cheatcodes, rollupAddress, l2BlockSource, options){
|
|
11
|
+
constructor(cheatcodes, rollupAddress, l2BlockSource, log, options){
|
|
11
12
|
this.l2BlockSource = l2BlockSource;
|
|
13
|
+
this.log = log;
|
|
12
14
|
this.options = options;
|
|
13
15
|
this.rollupCheatCodes = new RollupCheatCodes(cheatcodes, {
|
|
14
16
|
rollupAddress
|
|
@@ -25,7 +27,11 @@ export class EpochTestSettler {
|
|
|
25
27
|
await this.epochMonitor?.stop();
|
|
26
28
|
}
|
|
27
29
|
async handleEpochReadyToProve(epoch) {
|
|
28
|
-
const
|
|
30
|
+
const checkpointedBlocks = await this.l2BlockSource.getCheckpointedBlocksForEpoch(epoch);
|
|
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
|
+
});
|
|
29
35
|
const messagesInEpoch = [];
|
|
30
36
|
let previousSlotNumber = SlotNumber.ZERO;
|
|
31
37
|
let checkpointIndex = -1;
|
|
@@ -42,10 +48,14 @@ export class EpochTestSettler {
|
|
|
42
48
|
if (firstMessage) {
|
|
43
49
|
const { root: outHash } = computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, firstMessage);
|
|
44
50
|
await this.rollupCheatCodes.insertOutbox(epoch, outHash.toBigInt());
|
|
51
|
+
} else {
|
|
52
|
+
this.log.info(`No L2 to L1 messages in epoch ${epoch}`);
|
|
45
53
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
await this.rollupCheatCodes.markAsProven(
|
|
54
|
+
const lastCheckpoint = checkpointedBlocks.at(-1)?.checkpointNumber;
|
|
55
|
+
if (lastCheckpoint !== undefined) {
|
|
56
|
+
await this.rollupCheatCodes.markAsProven(lastCheckpoint);
|
|
57
|
+
} else {
|
|
58
|
+
this.log.warn(`No checkpoint found for epoch ${epoch}`);
|
|
49
59
|
}
|
|
50
60
|
return true;
|
|
51
61
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/aztec",
|
|
3
|
-
"version": "4.0.0-nightly.
|
|
3
|
+
"version": "4.0.0-nightly.20260123",
|
|
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": "4.0.0-nightly.
|
|
32
|
-
"@aztec/archiver": "4.0.0-nightly.
|
|
33
|
-
"@aztec/aztec-faucet": "4.0.0-nightly.
|
|
34
|
-
"@aztec/aztec-node": "4.0.0-nightly.
|
|
35
|
-
"@aztec/aztec.js": "4.0.0-nightly.
|
|
36
|
-
"@aztec/bb-prover": "4.0.0-nightly.
|
|
37
|
-
"@aztec/bb.js": "4.0.0-nightly.
|
|
38
|
-
"@aztec/blob-client": "4.0.0-nightly.
|
|
39
|
-
"@aztec/bot": "4.0.0-nightly.
|
|
40
|
-
"@aztec/builder": "4.0.0-nightly.
|
|
41
|
-
"@aztec/cli": "4.0.0-nightly.
|
|
42
|
-
"@aztec/constants": "4.0.0-nightly.
|
|
43
|
-
"@aztec/entrypoints": "4.0.0-nightly.
|
|
44
|
-
"@aztec/ethereum": "4.0.0-nightly.
|
|
45
|
-
"@aztec/foundation": "4.0.0-nightly.
|
|
46
|
-
"@aztec/kv-store": "4.0.0-nightly.
|
|
47
|
-
"@aztec/l1-artifacts": "4.0.0-nightly.
|
|
48
|
-
"@aztec/node-lib": "4.0.0-nightly.
|
|
49
|
-
"@aztec/noir-contracts.js": "4.0.0-nightly.
|
|
50
|
-
"@aztec/noir-protocol-circuits-types": "4.0.0-nightly.
|
|
51
|
-
"@aztec/p2p": "4.0.0-nightly.
|
|
52
|
-
"@aztec/p2p-bootstrap": "4.0.0-nightly.
|
|
53
|
-
"@aztec/protocol-contracts": "4.0.0-nightly.
|
|
54
|
-
"@aztec/prover-client": "4.0.0-nightly.
|
|
55
|
-
"@aztec/prover-node": "4.0.0-nightly.
|
|
56
|
-
"@aztec/pxe": "4.0.0-nightly.
|
|
57
|
-
"@aztec/sequencer-client": "4.0.0-nightly.
|
|
58
|
-
"@aztec/stdlib": "4.0.0-nightly.
|
|
59
|
-
"@aztec/telemetry-client": "4.0.0-nightly.
|
|
60
|
-
"@aztec/test-wallet": "4.0.0-nightly.
|
|
61
|
-
"@aztec/txe": "4.0.0-nightly.
|
|
62
|
-
"@aztec/validator-ha-signer": "4.0.0-nightly.
|
|
63
|
-
"@aztec/world-state": "4.0.0-nightly.
|
|
31
|
+
"@aztec/accounts": "4.0.0-nightly.20260123",
|
|
32
|
+
"@aztec/archiver": "4.0.0-nightly.20260123",
|
|
33
|
+
"@aztec/aztec-faucet": "4.0.0-nightly.20260123",
|
|
34
|
+
"@aztec/aztec-node": "4.0.0-nightly.20260123",
|
|
35
|
+
"@aztec/aztec.js": "4.0.0-nightly.20260123",
|
|
36
|
+
"@aztec/bb-prover": "4.0.0-nightly.20260123",
|
|
37
|
+
"@aztec/bb.js": "4.0.0-nightly.20260123",
|
|
38
|
+
"@aztec/blob-client": "4.0.0-nightly.20260123",
|
|
39
|
+
"@aztec/bot": "4.0.0-nightly.20260123",
|
|
40
|
+
"@aztec/builder": "4.0.0-nightly.20260123",
|
|
41
|
+
"@aztec/cli": "4.0.0-nightly.20260123",
|
|
42
|
+
"@aztec/constants": "4.0.0-nightly.20260123",
|
|
43
|
+
"@aztec/entrypoints": "4.0.0-nightly.20260123",
|
|
44
|
+
"@aztec/ethereum": "4.0.0-nightly.20260123",
|
|
45
|
+
"@aztec/foundation": "4.0.0-nightly.20260123",
|
|
46
|
+
"@aztec/kv-store": "4.0.0-nightly.20260123",
|
|
47
|
+
"@aztec/l1-artifacts": "4.0.0-nightly.20260123",
|
|
48
|
+
"@aztec/node-lib": "4.0.0-nightly.20260123",
|
|
49
|
+
"@aztec/noir-contracts.js": "4.0.0-nightly.20260123",
|
|
50
|
+
"@aztec/noir-protocol-circuits-types": "4.0.0-nightly.20260123",
|
|
51
|
+
"@aztec/p2p": "4.0.0-nightly.20260123",
|
|
52
|
+
"@aztec/p2p-bootstrap": "4.0.0-nightly.20260123",
|
|
53
|
+
"@aztec/protocol-contracts": "4.0.0-nightly.20260123",
|
|
54
|
+
"@aztec/prover-client": "4.0.0-nightly.20260123",
|
|
55
|
+
"@aztec/prover-node": "4.0.0-nightly.20260123",
|
|
56
|
+
"@aztec/pxe": "4.0.0-nightly.20260123",
|
|
57
|
+
"@aztec/sequencer-client": "4.0.0-nightly.20260123",
|
|
58
|
+
"@aztec/stdlib": "4.0.0-nightly.20260123",
|
|
59
|
+
"@aztec/telemetry-client": "4.0.0-nightly.20260123",
|
|
60
|
+
"@aztec/test-wallet": "4.0.0-nightly.20260123",
|
|
61
|
+
"@aztec/txe": "4.0.0-nightly.20260123",
|
|
62
|
+
"@aztec/validator-ha-signer": "4.0.0-nightly.20260123",
|
|
63
|
+
"@aztec/world-state": "4.0.0-nightly.20260123",
|
|
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 --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 } from '@aztec/stdlib/config';
|
|
22
|
+
import { chainConfigMappings, nodeRpcConfigMappings } 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,6 +148,8 @@ 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),
|
|
151
153
|
],
|
|
152
154
|
ETHEREUM: [
|
|
153
155
|
configToFlag('--l1-chain-id', l1ReaderConfigMappings.l1ChainId),
|
|
@@ -51,7 +51,6 @@ export async function deployContractsToL1(
|
|
|
51
51
|
aztecNodeConfig: AztecNodeConfig,
|
|
52
52
|
privateKey: Hex,
|
|
53
53
|
opts: {
|
|
54
|
-
assumeProvenThroughBlockNumber?: number;
|
|
55
54
|
genesisArchiveRoot?: Fr;
|
|
56
55
|
feeJuicePortalInitialBalance?: bigint;
|
|
57
56
|
} = {},
|
|
@@ -149,7 +148,6 @@ export async function createLocalNetwork(config: Partial<LocalNetworkConfig> = {
|
|
|
149
148
|
aztecNodeConfig,
|
|
150
149
|
aztecNodeConfig.validatorPrivateKeys.getValue()[0],
|
|
151
150
|
{
|
|
152
|
-
assumeProvenThroughBlockNumber: Number.MAX_SAFE_INTEGER,
|
|
153
151
|
genesisArchiveRoot,
|
|
154
152
|
feeJuicePortalInitialBalance: fundingNeeded,
|
|
155
153
|
},
|
|
@@ -181,9 +179,13 @@ export async function createLocalNetwork(config: Partial<LocalNetworkConfig> = {
|
|
|
181
179
|
|
|
182
180
|
let epochTestSettler: EpochTestSettler | undefined;
|
|
183
181
|
if (!aztecNodeConfig.p2pEnabled) {
|
|
184
|
-
epochTestSettler = new EpochTestSettler(
|
|
185
|
-
|
|
186
|
-
|
|
182
|
+
epochTestSettler = new EpochTestSettler(
|
|
183
|
+
cheatcodes!,
|
|
184
|
+
rollupAddress!,
|
|
185
|
+
node.getBlockSource(),
|
|
186
|
+
logger.createChild('epoch-settler'),
|
|
187
|
+
{ pollingIntervalMs: 200 },
|
|
188
|
+
);
|
|
187
189
|
await epochTestSettler.start();
|
|
188
190
|
}
|
|
189
191
|
|
|
@@ -1,6 +1,7 @@
|
|
|
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';
|
|
4
5
|
import { EpochMonitor } from '@aztec/prover-node';
|
|
5
6
|
import type { EthAddress, L2BlockSource } from '@aztec/stdlib/block';
|
|
6
7
|
import { computeL2ToL1MembershipWitnessFromMessagesInEpoch } from '@aztec/stdlib/messaging';
|
|
@@ -13,6 +14,7 @@ export class EpochTestSettler {
|
|
|
13
14
|
cheatcodes: EthCheatCodes,
|
|
14
15
|
rollupAddress: EthAddress,
|
|
15
16
|
private l2BlockSource: L2BlockSource,
|
|
17
|
+
private log: Logger,
|
|
16
18
|
private options: { pollingIntervalMs: number; provingDelayMs?: number },
|
|
17
19
|
) {
|
|
18
20
|
this.rollupCheatCodes = new RollupCheatCodes(cheatcodes, { rollupAddress });
|
|
@@ -29,10 +31,16 @@ export class EpochTestSettler {
|
|
|
29
31
|
}
|
|
30
32
|
|
|
31
33
|
async handleEpochReadyToProve(epoch: EpochNumber): Promise<boolean> {
|
|
32
|
-
const
|
|
34
|
+
const checkpointedBlocks = await this.l2BlockSource.getCheckpointedBlocksForEpoch(epoch);
|
|
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
|
+
);
|
|
33
40
|
const messagesInEpoch: Fr[][][][] = [];
|
|
34
41
|
let previousSlotNumber = SlotNumber.ZERO;
|
|
35
42
|
let checkpointIndex = -1;
|
|
43
|
+
|
|
36
44
|
for (const block of blocks) {
|
|
37
45
|
const slotNumber = block.header.globalVariables.slotNumber;
|
|
38
46
|
if (slotNumber !== previousSlotNumber) {
|
|
@@ -47,11 +55,15 @@ export class EpochTestSettler {
|
|
|
47
55
|
if (firstMessage) {
|
|
48
56
|
const { root: outHash } = computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoch, firstMessage);
|
|
49
57
|
await this.rollupCheatCodes.insertOutbox(epoch, outHash.toBigInt());
|
|
58
|
+
} else {
|
|
59
|
+
this.log.info(`No L2 to L1 messages in epoch ${epoch}`);
|
|
50
60
|
}
|
|
51
61
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
await this.rollupCheatCodes.markAsProven(
|
|
62
|
+
const lastCheckpoint = checkpointedBlocks.at(-1)?.checkpointNumber;
|
|
63
|
+
if (lastCheckpoint !== undefined) {
|
|
64
|
+
await this.rollupCheatCodes.markAsProven(lastCheckpoint);
|
|
65
|
+
} else {
|
|
66
|
+
this.log.warn(`No checkpoint found for epoch ${epoch}`);
|
|
55
67
|
}
|
|
56
68
|
|
|
57
69
|
return true;
|