refactor: decouple AnchorStateRegistry from SystemConfig, use SuperchainConfig instead #16383
+36
−18
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
This PR refactors the AnchorStateRegistry contract to remove its dependency on SystemConfig and instead use SuperchainConfig and ETHLockbox for chain-wide configuration and pause logic. The initialize function and related interfaces have been updated to accept ISuperchainConfig and IETHLockbox instead of ISystemConfig. All logic related to pausing and guardian checks now references SuperchainConfig. Deployment scripts, contract manager logic, and tests have been updated accordingly.
This change is required to support interop mode, where AnchorStateRegistry is shared across multiple chains, but SystemConfig remains chain-specific.
Tests
Additional context
This refactor is necessary to decouple AnchorStateRegistry from chain-specific configuration, ensuring it can be safely used in interop scenarios across multiple chains.
No new features are introduced; this is a structural and architectural improvement to support future multi-chain deployments.
Metadata
Closes #16114