Overview
The Feynman upgrade introduces the following contract changes:
- Introduce a new
PauseController
contract. This contract empowers the Scroll Security Council to prevent frequent contract pauses, and allows Scroll to maintain our stage-1 designation on L2BEAT. #117 #127 - Ensure that cross-domain messages always buy enough gas to cover EIP-7623 floor gas. #118
- Introduce a new on-chain validity proof verifier contract with an updated public input format. #123
- Update the gas oracle predeploy to support managing Feynman fee formula parameters. #124
- Remove deprecated contract logic (skipping, dropping, pre-Euclid codecs, etc.). #110
- Various other contract and CI improvements.
Feynman also includes other features that do not require contract changes. For more details, see the post on the Scroll governance forum, as well as the node release notes.
Compatibility
Contracts and scripts that interact with the Scroll bridge should make sure to provide a high enough gas limit to pass the checks in #118.
What's Changed
- ci: bump GitHub Action versions by @Thegaram in #107
- ci: add Slither static-analysis by @mssassii in #103
- new
ScrollChainCommitmentVerifier
by @zimpha in #95 - build(deps): bump base-x from 3.0.9 to 3.0.11 by @dependabot[bot] in #108
- add L2SystemContract by @zimpha in #114
- feat: add e2e devnet deployment scripts by @yiweichi in #97
- feat: add pause controller by @zimpha in #117
- feat: consider EIP-7623 floor gas in message queue by @Thegaram in #118
- feat: add L1SystemConfig events by @Thegaram in #119
- feat: require top-level call to commitAndFinalizeBatch by @Thegaram in #120
- feat: add new zkevm verifier for Feynman upgrade by @zimpha in #123
- feat(feynman): update L1GasPriceOracle by @Thegaram in #124
- remove unused contracts and functions by @zimpha in #110
- fix: allow only top level call in commitAndFinalizeBatch by @zimpha in #126
- feat: support resetPauseCooldownPeriod by @zimpha in #127
New Contributors
Full Changelog: v2.0.1...v3.0.0