Skip to content

Keep prestate as before if input is zero#14767

Closed
maurelian wants to merge 59 commits intodevelopfrom
allow-zero-prestate
Closed

Keep prestate as before if input is zero#14767
maurelian wants to merge 59 commits intodevelopfrom
allow-zero-prestate

Conversation

@maurelian
Copy link
Contributor

@maurelian maurelian commented Mar 10, 2025

TL;DR

Removes the PrestateNotSet error and modifies the prestate validation logic in the OPContractsManager.

What changed?

  • Removed the PrestateNotSet error from both the interface and implementation

  • Modified the prestate validation logic to only set the absolute prestate parameter when a non-zero value is provided

  • Added a new test case test_upgrade_absolutePrestateNotSet_succeeds to verify the updated behavior

smartcontracts and others added 30 commits February 28, 2025 10:27
Updates the OptimismPortal to use the AnchorStateRegistry as the
source of truth for the validity of Dispute Game contracts.
* feat: create new eth lockbox contract with interface

* chore: add it on the deployment scripts (wip)

* feat: create the test base to check if the setup for it is working

* feat: add all eth lockbox tests

* fix: opcm deployment script issue

* fix: lockbox tests

* feat: add no withdrawal tx unlock eth check

* chore: check proper initialization on test

* fix: pre-pr fixes

* chore: run pre-pr

* fix: opcm tests related to eth lockbox

* feat: add admin owner check on authorize portal and lockbox as well

* refactor: add prefix to errors and declare them on contract

* chore add no withdrawal tx comment

* feat: authorize portal in lockbox on the opcm

* chore: add one more check for eth lockbox

* fix: intializable and specs tests

* fix: pre-pr
* feat: integrate portal with lockbox

* fix: migrate natspec

Co-authored-by: Disco <131301107+0xDiscotech@users.noreply.github.com>

* fix: delete natspec

Co-authored-by: Disco <131301107+0xDiscotech@users.noreply.github.com>

* fix: natspec nits

* chore: natspec wording

* chore: function order

* chore: remove internals

* feat: add eth lockbox as portal arg on opcm

* feat: add checks on scripts and unit tests

* feat: lock and unlock tests

* feat: add migrate liquidity tests

* fix: other failing portal tests

* chore: run pre-pr

* chore: improve lock and unlock checks on tests

* chore: undo portal version change and run pre-pr

* refactor: enhance expect call checks

* fix: fork test string error

* fix: just test failing tests

* refactor: pao base

* refactor: setup portal and lockbox integration on initialization

* feat: update lockbox setter

* chore: update pao naming on tests

* chore: portal comment

* chore: update version and run pre-pr

* fix: spec

* fix: lockbox storage layout

* fix: pr comments and failing test

* feat: portal upgrade test

* chore: remove portal balance check on chain assertions

* fix: error string on chain assertions

* feat: add test for portal unsafe target

* fix: approval

---------

Co-authored-by: Disco <131301107+0xDiscotech@users.noreply.github.com>
* chore: remove unused function

* chore: add pao validation checks over portal and lockbox

* refactor: use interface as arg type instead of address on functions

* fix: comment max length

* refactor: update lockbox param type as interface

* refactor: use interface as type on migrate liquidity and authorize lockbox functions

* chore: run pre pr

* fix: high fuzz runs failing test using mostly assume not forge address

* refactor: use ioptimis portal instead of ioptimism portal2 everywhere

* chore: undo changes on unrelated files to the pr
Updates the OptimismPortal to include a method that allows users
to prove against Super Roots for interop.
* chore: undo initializable v5 test changes

* chore: remove portal already authorized check

* chore: remove portal already authorized check

* refactor: rename pao to proxy admin owner
feat: add Super Root specific method to OptimismPortal
* fix: test upgrade fails

* feat: handle fork state on eth lockbox tests

* chore: enhance comments

* chore: run pre-pr

* fix: semgrep

* fix: comments

* chore: address path where is not a fork to get the lockbox

* chore: run pre pr
* chore: enhance opcm comment

* fix: same proxy admin owner typo

* feat: add insufficient balance check

* chore: add natspec comments on lockbox migration process

* chore: pre pr
Updates the OptimismPortal to use the AnchorStateRegistry as the
source of truth for the validity of Dispute Game contracts.
Updates the OptimismPortal to include a method that allows users
to prove against Super Roots for interop.
feat: interop portal OPCM updates and rebase fixes
Copy link
Contributor Author

maurelian commented Mar 10, 2025

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@maurelian maurelian marked this pull request as ready for review March 10, 2025 19:38
@maurelian maurelian requested a review from a team as a code owner March 10, 2025 19:38
@maurelian maurelian marked this pull request as draft March 10, 2025 19:39
Base automatically changed from feat/interop-portal-updates to develop March 10, 2025 22:22
@opgitgovernance opgitgovernance added the S-stale Status: Will be closed unless there is activity label Mar 25, 2025
@opgitgovernance
Copy link
Contributor

This pr has been automatically marked as stale and will be closed in 5 days if no updates

@maurelian
Copy link
Contributor Author

Fixed PR #14785

@maurelian maurelian closed this Apr 4, 2025
@maurelian maurelian deleted the allow-zero-prestate branch August 13, 2025 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-stale Status: Will be closed unless there is activity

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

Comments