fix: reject aztecSlotDuration not a multiple of ethereumSlotDuration#24481
Merged
spalladino merged 1 commit intoJul 6, 2026
Merged
Conversation
Maddiaa0
approved these changes
Jul 2, 2026
PhilWindle
approved these changes
Jul 5, 2026
cfc3468 to
2d4e048
Compare
L2 slot boundaries must land on L1 slot boundaries, but nothing enforced this — the one existing check only gated the three static mainnet/ testnet/devnet config files. Add assertValidSlotDurations and call it from deployAztecL1Contracts, the shared choke point for e2e tests, spartan deployments, and CLI deploys. Fixes three e2e configs that paired aztecSlotDuration: 36 with ethereumSlotDuration: 8 (4.5 L1 slots per L2 slot).
2d4e048 to
8311837
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
L2 slot boundaries must land on L1 slot boundaries, but nothing enforced this at runtime. A check for exactly this relationship already existed (
validateNetworkConsensusConfigin stdlib), but it was only exercised by a CLI unit test gating the three static mainnet/testnet/devnet config files — never wired into e2e test setup or the L1-contract deployment path itself.Approach
validateSlotDurations/assertValidSlotDurationstoethereum/src/config.tsand call it fromdeployAztecL1Contracts, the shared choke point used by e2e tests, spartan deployments, and CLI deploys, so a bad pairing now fails fast with a clear error.validateNetworkConsensusConfigto reuse the shared check instead of duplicating it.aztecSlotDuration: 36withethereumSlotDuration: 8(4.5 L1 slots per L2 slot). Corrected toethereumSlotDuration: 12, matching the36s/12sconvention already used elsewhere in the same test suites.