feat: permissionless fault games at initial deploy#21588
Open
lumoswiz wants to merge 34 commits into
Open
Conversation
0xCoati
reviewed
Jun 29, 2026
4 tasks
0xiamflux
reviewed
Jul 1, 2026
0xOneTony
reviewed
Jul 7, 2026
bitwiseguy
approved these changes
Jul 7, 2026
bitwiseguy
left a comment
Contributor
There was a problem hiding this comment.
Approving with a few suggestions for minor improvements
Conflicts: - packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol - packages/contracts-bedrock/test/L1/opcm/OPContractsManagerV2.t.sol - packages/contracts-bedrock/test/setup/ForkL1Live.s.sol
0xiamflux
reviewed
Jul 8, 2026
0xiamflux
approved these changes
Jul 8, 2026
bitwiseguy
approved these changes
Jul 8, 2026
…nless-opchain-deploy
…nless-opchain-deploy # Conflicts: # packages/contracts-bedrock/test/setup/ForkL1Live.s.sol
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.
Description
Lets new chains start with
CANNON_KONAas the selected initial fault game when deploy inputs include a real starting anchor root and nonzero prestate. LegacyCANNONremains rejected for initial deployments.For non-super-root permissionless deploys, this also registers
PERMISSIONED_CANNONfrom genesis as the guardian fallback while keepingCANNON_KONArespected.Tests
Updated deploy/OPCM coverage for selected
CANNON_KONAinitial deploys, permissioned fallback registration/use, legacyCANNONrejection, zero/prestate/root validation, placeholder-root rejection for permissionless deploys, super-root rejection, and unchanged permissioned deploys.Additional context
#21625 deprecated legacy
CANNON, so this PR implements #20913 forCANNON_KONAonly. The0xdeadanchor remains allowed only for permissioned deploys until follow-up PR #21610 wires real pipeline state.The permissioned fallback preserves the standard OP Stack emergency path for retiring an unsound permissionless game.
Metadata
Fixes #20913