ethereum-optimism / ethereum-optimism/optimism

Consider making VerifyOPCM a wrapper around DeployImplementations for v2

Open
#16,653 1 comment 0 reactions 0 assignees View on GitHub
A-OPCM
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 38m
Merged PRs (30d)
164

Description

# Consider making VerifyOPCM a wrapper around DeployImplementations for v2

Currently, we have two separate scripts:
- `DeployImplementations.s.sol` - Deploys implementation contracts
- `VerifyOPCM.s.sol` - Verifies OPCM deployment

Due to CREATE2's idempotency properties, running `DeployImplementations.s.sol` essentially performs the same verification as `VerifyOPCM.s.sol`. When properly configured, if all contracts are already deployed at their expected addresses, the deployment script will result in zero new deployments - effectively serving as verification.

## Proposal

For v2 of VerifyOPCM, consider refactoring it to be a wrapper around `DeployImplementations.s.sol` rather than maintaining separate verification logic.

### Considerations

DeployImplementations requires constructor arguments as input, whereas VerifyOPCM ignores them and requires them
to be [separately verified](https://www.notion.so/oplabs/Contracts-Release-Checklist-op-contracts-v4-0-0-rc-8-216f153ee1628050b3a8c9d1aeb44c76?source=copy_link#216f153ee16280198888fae43976f92e).

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.