@aztec/cli 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/cmds/l1/prover_stats.js +4 -4
- package/dest/cmds/l1/update_l1_validators.js +2 -2
- package/dest/config/chain_l2_config.d.ts.map +1 -1
- package/dest/config/chain_l2_config.js +14 -7
- package/package.json +28 -28
- package/src/cmds/l1/prover_stats.ts +4 -4
- package/src/cmds/l1/update_l1_validators.ts +2 -2
- package/src/config/chain_l2_config.ts +20 -7
|
@@ -45,7 +45,7 @@ export async function proverStats(opts) {
|
|
|
45
45
|
}
|
|
46
46
|
// But if we do, fetch the events for each block submitted, so we can look up their timestamp
|
|
47
47
|
const blockEvents = await getL2BlockEvents(startBlock, lastBlockNum, batchSize, debugLog, publicClient, rollup);
|
|
48
|
-
debugLog.verbose(`First L2 block within range is ${blockEvents[0]?.args.
|
|
48
|
+
debugLog.verbose(`First L2 block within range is ${blockEvents[0]?.args.checkpointNumber} at L1 block ${blockEvents[0]?.blockNumber}`);
|
|
49
49
|
// Get the timestamps for every block on every log, both for proof and block submissions
|
|
50
50
|
const l1BlockNumbers = unique([
|
|
51
51
|
...events.map((e)=>e.l1BlockNumber),
|
|
@@ -65,7 +65,7 @@ export async function proverStats(opts) {
|
|
|
65
65
|
// Map from l2 block number to the l1 block in which it was submitted
|
|
66
66
|
const l2BlockSubmissions = {};
|
|
67
67
|
for (const blockEvent of blockEvents){
|
|
68
|
-
l2BlockSubmissions[blockEvent.args.
|
|
68
|
+
l2BlockSubmissions[blockEvent.args.checkpointNumber.toString()] = blockEvent.blockNumber;
|
|
69
69
|
}
|
|
70
70
|
// If we want raw logs, output them
|
|
71
71
|
if (rawLogs) {
|
|
@@ -132,13 +132,13 @@ async function getL2BlockEvents(startBlock, lastBlockNum, batchSize, debugLog, p
|
|
|
132
132
|
address: getAddress(rollup.toString()),
|
|
133
133
|
event: getAbiItem({
|
|
134
134
|
abi: RollupAbi,
|
|
135
|
-
name: '
|
|
135
|
+
name: 'CheckpointProposed'
|
|
136
136
|
}),
|
|
137
137
|
fromBlock: blockNum,
|
|
138
138
|
toBlock: end
|
|
139
139
|
});
|
|
140
140
|
events.push(...newEvents);
|
|
141
|
-
debugLog.verbose(`Got ${newEvents.length} events querying
|
|
141
|
+
debugLog.verbose(`Got ${newEvents.length} events querying checkpoints submitted from block ${blockNum} to ${end}`);
|
|
142
142
|
blockNum += batchSize;
|
|
143
143
|
}
|
|
144
144
|
return events;
|
|
@@ -207,9 +207,9 @@ export async function debugRollup({ rpcUrls, chainId, rollupAddress, log }) {
|
|
|
207
207
|
l1ChainId: chainId
|
|
208
208
|
});
|
|
209
209
|
const rollup = new RollupContract(publicClient, rollupAddress);
|
|
210
|
-
const pendingNum = await rollup.
|
|
210
|
+
const pendingNum = await rollup.getCheckpointNumber();
|
|
211
211
|
log(`Pending block num: ${pendingNum}`);
|
|
212
|
-
const provenNum = await rollup.
|
|
212
|
+
const provenNum = await rollup.getProvenCheckpointNumber();
|
|
213
213
|
log(`Proven block num: ${provenNum}`);
|
|
214
214
|
const validators = await rollup.getAttesters();
|
|
215
215
|
log(`Validators: ${validators.map((v)=>v.toString()).join(', ')}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain_l2_config.d.ts","sourceRoot":"","sources":["../../src/config/chain_l2_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACzG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAYtF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,eAAe,CAAC,GACxE,IAAI,CAAC,aAAa,EAAE,sBAAsB,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,kBAAkB,CAAC,GACnH,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,YAAY,GAAG,2BAA2B,CAAC,GAC9E,IAAI,CAAC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,CAAC,GAAG;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAIhC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,uBAAuB,EAAE,MAAM,CAAC;IAGhC,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AA+CJ,eAAO,MAAM,4BAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"chain_l2_config.d.ts","sourceRoot":"","sources":["../../src/config/chain_l2_config.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACzG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAYtF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,eAAe,CAAC,GACxE,IAAI,CAAC,aAAa,EAAE,sBAAsB,GAAG,uBAAuB,GAAG,sBAAsB,GAAG,kBAAkB,CAAC,GACnH,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,YAAY,GAAG,2BAA2B,CAAC,GAC9E,IAAI,CAAC,eAAe,EAAE,gBAAgB,GAAG,gBAAgB,CAAC,GAAG;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAIhC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,uBAAuB,EAAE,MAAM,CAAC;IAGhC,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AA+CJ,eAAO,MAAM,4BAA4B,EAAE,aAmF1C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,aAuDxC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAuDlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAyFlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,aAwFlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAuDjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,YAAY,GAAG,aAAa,GAAG,SAAS,CAgBrF;AAMD,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,YAAY,QAavE;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,aAAa,QAiGrE"}
|
|
@@ -71,7 +71,8 @@ export const stagingIgnitionL2ChainConfig = {
|
|
|
71
71
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
72
72
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
73
73
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
74
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
74
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
75
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
75
76
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
76
77
|
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
77
78
|
slashingRoundSizeInEpochs: 4,
|
|
@@ -139,7 +140,8 @@ export const stagingPublicL2ChainConfig = {
|
|
|
139
140
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
140
141
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
141
142
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 48,
|
|
142
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
143
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
144
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
143
145
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
144
146
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
145
147
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -178,7 +180,8 @@ export const nextNetL2ChainConfig = {
|
|
|
178
180
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
179
181
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
180
182
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 48,
|
|
181
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
183
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
184
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
182
185
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
183
186
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
184
187
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -220,7 +223,8 @@ export const testnetL2ChainConfig = {
|
|
|
220
223
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
221
224
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
222
225
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
223
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
226
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
227
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
224
228
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
225
229
|
// This is a diff from mainnet: we have 2-strikes you're out, rather than 3 on mainnet.
|
|
226
230
|
localEjectionThreshold: 198_000n * 10n ** 18n,
|
|
@@ -289,7 +293,8 @@ export const mainnetL2ChainConfig = {
|
|
|
289
293
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 72,
|
|
290
294
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 32,
|
|
291
295
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 24,
|
|
292
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
296
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 2,
|
|
297
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 2,
|
|
293
298
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
294
299
|
localEjectionThreshold: 196_000n * 10n ** 18n,
|
|
295
300
|
/** How many sequencers must agree with a slash for it to be executed. */ slashingQuorum: 65,
|
|
@@ -355,7 +360,8 @@ export const devnetL2ChainConfig = {
|
|
|
355
360
|
/** How many seconds an L2 slots lasts (must be multiple of ethereum slot duration). */ aztecSlotDuration: 36,
|
|
356
361
|
/** How many L2 slots an epoch lasts. */ aztecEpochDuration: 8,
|
|
357
362
|
/** The target validator committee size. */ aztecTargetCommitteeSize: 1,
|
|
358
|
-
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
363
|
+
/** The number of epochs to lag behind the current epoch for validator selection. */ lagInEpochsForValidatorSet: 1,
|
|
364
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */ lagInEpochsForRandao: 1,
|
|
359
365
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */ localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
360
366
|
/** The number of epochs after an epoch ends that proofs are still accepted. */ aztecProofSubmissionEpochs: 1,
|
|
361
367
|
/** The deposit amount for a validator */ activationThreshold: DefaultL1ContractsConfig.activationThreshold,
|
|
@@ -456,7 +462,8 @@ export function enrichEnvironmentWithChainConfig(config) {
|
|
|
456
462
|
enrichVar('AZTEC_SLOT_DURATION', config.aztecSlotDuration.toString());
|
|
457
463
|
enrichVar('AZTEC_EPOCH_DURATION', config.aztecEpochDuration.toString());
|
|
458
464
|
enrichVar('AZTEC_TARGET_COMMITTEE_SIZE', config.aztecTargetCommitteeSize.toString());
|
|
459
|
-
enrichVar('
|
|
465
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET', config.lagInEpochsForValidatorSet.toString());
|
|
466
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_RANDAO', config.lagInEpochsForRandao.toString());
|
|
460
467
|
enrichVar('AZTEC_PROOF_SUBMISSION_EPOCHS', config.aztecProofSubmissionEpochs.toString());
|
|
461
468
|
enrichVar('AZTEC_ACTIVATION_THRESHOLD', config.activationThreshold.toString());
|
|
462
469
|
enrichVar('AZTEC_EJECTION_THRESHOLD', config.ejectionThreshold.toString());
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/cli",
|
|
3
|
-
"version": "3.0.0-nightly.
|
|
3
|
+
"version": "3.0.0-nightly.20251126",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./contracts": "./dest/cmds/contracts/index.js",
|
|
@@ -71,21 +71,21 @@
|
|
|
71
71
|
]
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"@aztec/accounts": "3.0.0-nightly.
|
|
75
|
-
"@aztec/archiver": "3.0.0-nightly.
|
|
76
|
-
"@aztec/aztec.js": "3.0.0-nightly.
|
|
77
|
-
"@aztec/constants": "3.0.0-nightly.
|
|
78
|
-
"@aztec/entrypoints": "3.0.0-nightly.
|
|
79
|
-
"@aztec/ethereum": "3.0.0-nightly.
|
|
80
|
-
"@aztec/foundation": "3.0.0-nightly.
|
|
81
|
-
"@aztec/l1-artifacts": "3.0.0-nightly.
|
|
82
|
-
"@aztec/node-keystore": "3.0.0-nightly.
|
|
83
|
-
"@aztec/node-lib": "3.0.0-nightly.
|
|
84
|
-
"@aztec/p2p": "3.0.0-nightly.
|
|
85
|
-
"@aztec/protocol-contracts": "3.0.0-nightly.
|
|
86
|
-
"@aztec/stdlib": "3.0.0-nightly.
|
|
87
|
-
"@aztec/test-wallet": "3.0.0-nightly.
|
|
88
|
-
"@aztec/world-state": "3.0.0-nightly.
|
|
74
|
+
"@aztec/accounts": "3.0.0-nightly.20251126",
|
|
75
|
+
"@aztec/archiver": "3.0.0-nightly.20251126",
|
|
76
|
+
"@aztec/aztec.js": "3.0.0-nightly.20251126",
|
|
77
|
+
"@aztec/constants": "3.0.0-nightly.20251126",
|
|
78
|
+
"@aztec/entrypoints": "3.0.0-nightly.20251126",
|
|
79
|
+
"@aztec/ethereum": "3.0.0-nightly.20251126",
|
|
80
|
+
"@aztec/foundation": "3.0.0-nightly.20251126",
|
|
81
|
+
"@aztec/l1-artifacts": "3.0.0-nightly.20251126",
|
|
82
|
+
"@aztec/node-keystore": "3.0.0-nightly.20251126",
|
|
83
|
+
"@aztec/node-lib": "3.0.0-nightly.20251126",
|
|
84
|
+
"@aztec/p2p": "3.0.0-nightly.20251126",
|
|
85
|
+
"@aztec/protocol-contracts": "3.0.0-nightly.20251126",
|
|
86
|
+
"@aztec/stdlib": "3.0.0-nightly.20251126",
|
|
87
|
+
"@aztec/test-wallet": "3.0.0-nightly.20251126",
|
|
88
|
+
"@aztec/world-state": "3.0.0-nightly.20251126",
|
|
89
89
|
"@ethersproject/wallet": "^5.8.0",
|
|
90
90
|
"@iarna/toml": "^2.2.5",
|
|
91
91
|
"@libp2p/peer-id-factory": "^3.0.4",
|
|
@@ -99,9 +99,9 @@
|
|
|
99
99
|
"viem": "npm:@spalladino/viem@2.38.2-eip7594.0"
|
|
100
100
|
},
|
|
101
101
|
"devDependencies": {
|
|
102
|
-
"@aztec/aztec-node": "3.0.0-nightly.
|
|
103
|
-
"@aztec/kv-store": "3.0.0-nightly.
|
|
104
|
-
"@aztec/telemetry-client": "3.0.0-nightly.
|
|
102
|
+
"@aztec/aztec-node": "3.0.0-nightly.20251126",
|
|
103
|
+
"@aztec/kv-store": "3.0.0-nightly.20251126",
|
|
104
|
+
"@aztec/telemetry-client": "3.0.0-nightly.20251126",
|
|
105
105
|
"@jest/globals": "^30.0.0",
|
|
106
106
|
"@types/jest": "^30.0.0",
|
|
107
107
|
"@types/lodash.chunk": "^4.2.9",
|
|
@@ -117,15 +117,15 @@
|
|
|
117
117
|
"typescript": "^5.3.3"
|
|
118
118
|
},
|
|
119
119
|
"peerDependencies": {
|
|
120
|
-
"@aztec/accounts": "3.0.0-nightly.
|
|
121
|
-
"@aztec/bb-prover": "3.0.0-nightly.
|
|
122
|
-
"@aztec/ethereum": "3.0.0-nightly.
|
|
123
|
-
"@aztec/l1-artifacts": "3.0.0-nightly.
|
|
124
|
-
"@aztec/noir-contracts.js": "3.0.0-nightly.
|
|
125
|
-
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.
|
|
126
|
-
"@aztec/noir-test-contracts.js": "3.0.0-nightly.
|
|
127
|
-
"@aztec/protocol-contracts": "3.0.0-nightly.
|
|
128
|
-
"@aztec/stdlib": "3.0.0-nightly.
|
|
120
|
+
"@aztec/accounts": "3.0.0-nightly.20251126",
|
|
121
|
+
"@aztec/bb-prover": "3.0.0-nightly.20251126",
|
|
122
|
+
"@aztec/ethereum": "3.0.0-nightly.20251126",
|
|
123
|
+
"@aztec/l1-artifacts": "3.0.0-nightly.20251126",
|
|
124
|
+
"@aztec/noir-contracts.js": "3.0.0-nightly.20251126",
|
|
125
|
+
"@aztec/noir-protocol-circuits-types": "3.0.0-nightly.20251126",
|
|
126
|
+
"@aztec/noir-test-contracts.js": "3.0.0-nightly.20251126",
|
|
127
|
+
"@aztec/protocol-contracts": "3.0.0-nightly.20251126",
|
|
128
|
+
"@aztec/stdlib": "3.0.0-nightly.20251126"
|
|
129
129
|
},
|
|
130
130
|
"files": [
|
|
131
131
|
"dest",
|
|
@@ -77,7 +77,7 @@ export async function proverStats(opts: {
|
|
|
77
77
|
// But if we do, fetch the events for each block submitted, so we can look up their timestamp
|
|
78
78
|
const blockEvents = await getL2BlockEvents(startBlock, lastBlockNum, batchSize, debugLog, publicClient, rollup);
|
|
79
79
|
debugLog.verbose(
|
|
80
|
-
`First L2 block within range is ${blockEvents[0]?.args.
|
|
80
|
+
`First L2 block within range is ${blockEvents[0]?.args.checkpointNumber} at L1 block ${blockEvents[0]?.blockNumber}`,
|
|
81
81
|
);
|
|
82
82
|
|
|
83
83
|
// Get the timestamps for every block on every log, both for proof and block submissions
|
|
@@ -96,7 +96,7 @@ export async function proverStats(opts: {
|
|
|
96
96
|
// Map from l2 block number to the l1 block in which it was submitted
|
|
97
97
|
const l2BlockSubmissions: Record<string, bigint> = {};
|
|
98
98
|
for (const blockEvent of blockEvents) {
|
|
99
|
-
l2BlockSubmissions[blockEvent.args.
|
|
99
|
+
l2BlockSubmissions[blockEvent.args.checkpointNumber!.toString()] = blockEvent.blockNumber;
|
|
100
100
|
}
|
|
101
101
|
|
|
102
102
|
// If we want raw logs, output them
|
|
@@ -188,14 +188,14 @@ async function getL2BlockEvents(
|
|
|
188
188
|
address: getAddress(rollup.toString()),
|
|
189
189
|
event: getAbiItem({
|
|
190
190
|
abi: RollupAbi,
|
|
191
|
-
name: '
|
|
191
|
+
name: 'CheckpointProposed',
|
|
192
192
|
}),
|
|
193
193
|
fromBlock: blockNum,
|
|
194
194
|
toBlock: end,
|
|
195
195
|
});
|
|
196
196
|
|
|
197
197
|
events.push(...newEvents);
|
|
198
|
-
debugLog.verbose(`Got ${newEvents.length} events querying
|
|
198
|
+
debugLog.verbose(`Got ${newEvents.length} events querying checkpoints submitted from block ${blockNum} to ${end}`);
|
|
199
199
|
blockNum += batchSize;
|
|
200
200
|
}
|
|
201
201
|
return events;
|
|
@@ -299,9 +299,9 @@ export async function debugRollup({ rpcUrls, chainId, rollupAddress, log }: Roll
|
|
|
299
299
|
const publicClient = getPublicClient({ l1RpcUrls: rpcUrls, l1ChainId: chainId });
|
|
300
300
|
const rollup = new RollupContract(publicClient, rollupAddress);
|
|
301
301
|
|
|
302
|
-
const pendingNum = await rollup.
|
|
302
|
+
const pendingNum = await rollup.getCheckpointNumber();
|
|
303
303
|
log(`Pending block num: ${pendingNum}`);
|
|
304
|
-
const provenNum = await rollup.
|
|
304
|
+
const provenNum = await rollup.getProvenCheckpointNumber();
|
|
305
305
|
log(`Proven block num: ${provenNum}`);
|
|
306
306
|
const validators = await rollup.getAttesters();
|
|
307
307
|
log(`Validators: ${validators.map(v => v.toString()).join(', ')}`);
|
|
@@ -124,7 +124,9 @@ export const stagingIgnitionL2ChainConfig: L2ChainConfig = {
|
|
|
124
124
|
/** The target validator committee size. */
|
|
125
125
|
aztecTargetCommitteeSize: 24,
|
|
126
126
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
127
|
-
|
|
127
|
+
lagInEpochsForValidatorSet: 2,
|
|
128
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
129
|
+
lagInEpochsForRandao: 2,
|
|
128
130
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
129
131
|
aztecProofSubmissionEpochs: 1,
|
|
130
132
|
/** How many sequencers must agree with a slash for it to be executed. */
|
|
@@ -207,7 +209,9 @@ export const stagingPublicL2ChainConfig: L2ChainConfig = {
|
|
|
207
209
|
/** The target validator committee size. */
|
|
208
210
|
aztecTargetCommitteeSize: 48,
|
|
209
211
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
210
|
-
|
|
212
|
+
lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
213
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
214
|
+
lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
211
215
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */
|
|
212
216
|
localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
213
217
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
@@ -262,7 +266,9 @@ export const nextNetL2ChainConfig: L2ChainConfig = {
|
|
|
262
266
|
/** The target validator committee size. */
|
|
263
267
|
aztecTargetCommitteeSize: 48,
|
|
264
268
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
265
|
-
|
|
269
|
+
lagInEpochsForValidatorSet: DefaultL1ContractsConfig.lagInEpochsForValidatorSet,
|
|
270
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
271
|
+
lagInEpochsForRandao: DefaultL1ContractsConfig.lagInEpochsForRandao,
|
|
266
272
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */
|
|
267
273
|
localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
268
274
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
@@ -318,7 +324,9 @@ export const testnetL2ChainConfig: L2ChainConfig = {
|
|
|
318
324
|
/** The target validator committee size. */
|
|
319
325
|
aztecTargetCommitteeSize: 24,
|
|
320
326
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
321
|
-
|
|
327
|
+
lagInEpochsForValidatorSet: 2,
|
|
328
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
329
|
+
lagInEpochsForRandao: 2,
|
|
322
330
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
323
331
|
aztecProofSubmissionEpochs: 1,
|
|
324
332
|
|
|
@@ -407,7 +415,9 @@ export const mainnetL2ChainConfig: L2ChainConfig = {
|
|
|
407
415
|
/** The target validator committee size. */
|
|
408
416
|
aztecTargetCommitteeSize: 24,
|
|
409
417
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
410
|
-
|
|
418
|
+
lagInEpochsForValidatorSet: 2,
|
|
419
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
420
|
+
lagInEpochsForRandao: 2,
|
|
411
421
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
412
422
|
aztecProofSubmissionEpochs: 1,
|
|
413
423
|
|
|
@@ -494,7 +504,9 @@ export const devnetL2ChainConfig: L2ChainConfig = {
|
|
|
494
504
|
/** The target validator committee size. */
|
|
495
505
|
aztecTargetCommitteeSize: 1,
|
|
496
506
|
/** The number of epochs to lag behind the current epoch for validator selection. */
|
|
497
|
-
|
|
507
|
+
lagInEpochsForValidatorSet: 1,
|
|
508
|
+
/** The number of epochs to lag behind the current epoch for randao selection. */
|
|
509
|
+
lagInEpochsForRandao: 1,
|
|
498
510
|
/** The local ejection threshold for a validator. Stricter than ejectionThreshold but local to a specific rollup */
|
|
499
511
|
localEjectionThreshold: DefaultL1ContractsConfig.localEjectionThreshold,
|
|
500
512
|
/** The number of epochs after an epoch ends that proofs are still accepted. */
|
|
@@ -611,7 +623,8 @@ export function enrichEnvironmentWithChainConfig(config: L2ChainConfig) {
|
|
|
611
623
|
enrichVar('AZTEC_SLOT_DURATION', config.aztecSlotDuration.toString());
|
|
612
624
|
enrichVar('AZTEC_EPOCH_DURATION', config.aztecEpochDuration.toString());
|
|
613
625
|
enrichVar('AZTEC_TARGET_COMMITTEE_SIZE', config.aztecTargetCommitteeSize.toString());
|
|
614
|
-
enrichVar('
|
|
626
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_VALIDATOR_SET', config.lagInEpochsForValidatorSet.toString());
|
|
627
|
+
enrichVar('AZTEC_LAG_IN_EPOCHS_FOR_RANDAO', config.lagInEpochsForRandao.toString());
|
|
615
628
|
enrichVar('AZTEC_PROOF_SUBMISSION_EPOCHS', config.aztecProofSubmissionEpochs.toString());
|
|
616
629
|
enrichVar('AZTEC_ACTIVATION_THRESHOLD', config.activationThreshold.toString());
|
|
617
630
|
enrichVar('AZTEC_EJECTION_THRESHOLD', config.ejectionThreshold.toString());
|