ethereum-optimism / ethereum-optimism/optimism

Metered OPCM Proxy for testing

Open
#17,738 0 comments 0 reactions 0 assignees View on GitHub
A-OPCM A-pkg-contracts-bedrock
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 18h
Merged PRs (30d)
134

Description

Right now, only the `OPCM.upgrade` function is being checked for fusaka gas limitations - https://github.com/ethereum-optimism/optimism/blob/b69a6bb15719989616eecb3eacf6d59916040d09/packages/contracts-bedrock/test/L1/OPContractsManager.t.sol#L233. It'll be useful to have similar guarantees for all opcm methods throughout our test suite.

This issue can be resolved by introducing a proxy contract that guards all OPCM methods from exceeding the fusaka transaction limit. The proxy will only in forge tests. So it'll have to be integrated into the devnet setup.

Contributor guide

Open the contributing guide

Research direction

Start with packages/contracts-bedrock/test/L1/OPContractsManager.t.sol at the existing OPCM.upgrade gas check, then inspect the other OPCM methods covered by the Forge tests and the devnet setup. The work is done when a proxy guards every OPCM method against the Fusaka transaction limit and is used by the Forge test environment.

Written by the indexing model from the issue text.

Assessment

Tech stack
solidity
Domain
blockchain, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.