Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Cel2 migration tool #110

Merged
merged 10 commits into from
May 7, 2024
Merged

Implement Cel2 migration tool #110

merged 10 commits into from
May 7, 2024

Conversation

palango
Copy link
Collaborator

@palango palango commented Apr 17, 2024

Part of #108
Resolves #36

This PR lays the foundation for the Cel2 migration tool.

It works on an existing Celo L1 state database and deploys the OP L2 contracts based on given configuration and L1 contract deployment. The resulting state changes are added in a new block on top of the existing chain, which can then be loaded by op-geth in a rollup setting.

@palango palango force-pushed the palango/migration-tool branch from 1e44e03 to 75c2279 Compare April 17, 2024 13:30
@palango palango requested review from piersy and alecps April 17, 2024 13:31
@palango palango changed the title Initial migration tool Implement migration tool Apr 25, 2024
@palango palango marked this pull request as ready for review April 25, 2024 13:47
@palango palango changed the title Implement migration tool Implement Cel2 migration tool Apr 25, 2024
@palango palango requested a review from piersy May 3, 2024 15:10
Copy link

@piersy piersy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved, pending task to make test fail on mismatched account balances.

palango and others added 2 commits May 7, 2024 15:20
Co-authored-by: piersy <pierspowlesland@gmail.com>
@palango palango force-pushed the palango/migration-tool branch from 99dfaea to d2245a3 Compare May 7, 2024 13:20
@palango palango merged commit 3636885 into celo4 May 7, 2024
45 checks passed
@palango palango deleted the palango/migration-tool branch May 7, 2024 13:35
palango added a commit that referenced this pull request Jun 6, 2024
* Add `celo-migrate` tool

* Add logic to write changes to state DB

* Minor changes

* Check that datadir exists

* Use cel2 migration header for rollup config

* Fixes from testing

* Add checks when copying deployed contracts into state db

* Review changes

* Review changes II

* Update op-chain-ops/cmd/celo-migrate/main.go

Co-authored-by: piersy <pierspowlesland@gmail.com>

---------

Co-authored-by: piersy <pierspowlesland@gmail.com>
karlb pushed a commit that referenced this pull request Oct 26, 2024
* feat: SuperchainWETH redesign (#101)

* feat: add superchain erc20 bridge (#61)

* feat: add superchain erc20 bridge

* fix: interfaces and versions

* refactor: optimism superchain erc20 redesign (#62)

* refactor: use oz upgradeable erc20 as dependency

* chore: update interfaces

* fix: tests based on changes

* refactor: remove op as dependency

* feat: add check for supererc20 bridge on modifier

* chore: update tests and interfaces

* chore: update stack vars name on test

* chore: remove empty gitmodules file

* chore: update superchain weth errors

* test: add superchain erc20 bridge tests (#65)

* test: add superchain erc20 bridge tests

* test: add optimism superchain erc20 beacon tests

* test: remove unnecessary test

* test: tests fixes

* test: tests fixes

* chore: update missing bridge on natspec (ethereum-optimism#69)

* chore: update missing bridge on natspec

* fix: natspecs

---------

Co-authored-by: agusduha <agusnduha@gmail.com>

* fix: remove superchain erc20 base (#70)

* refactor: update isuperchainweth (#71)


---------

Co-authored-by: agusduha <agusnduha@gmail.com>

* feat: rename mint/burn and add SuperchainERC20 (ethereum-optimism#74)

* refactor: rename mint and burn functions on superchain erc20

* chore: rename optimism superchain erc20 to superchain erc20

* feat: create optimism superchain erc20 contract

* chore: update natspec and errors

* fix: superchain erc20 tests

* refactor: make superchain erc20 abstract

* refactor: move storage and erc20 metadata functions to implementation

* chore: update interfaces

* chore: update superchain erc20 events

* fix: tests

* fix: natspecs

* fix: add semmver lock and snapshots

* fix: remove unused imports

* fix: natspecs

---------

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

* fix: refactor zero check (ethereum-optimism#76)

* fix: pre pr

* fix: semver natspec check failure (#79)

* fix: semver natspec check failure

* fix: ignore mock contracts in semver natspec script

* fix: error message

* feat: add crosschain erc20 interface (#80)

* feat: add crosschain erc20 interface

* fix: refactor interfaces

* fix: superchain bridge natspec (#83)

* fix: superchain weth natspec (#84)

Co-authored-by: 0xng <ng@defi.sucks>
Co-authored-by: 0xParticle <particle@defi.sucks>
Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com>

* fix: stop inheriting superchain interfaces (#85)

* fix: stop inheriting superchain interfaces

* fix: move events and erros into the implementation

* fix: make superchainERC20 inherits from crosschainERC20

* fix: superchain bridge rename (#86)

* fix: fee vault compiler error (ethereum-optimism#87)

* fix: remove unused imports

* fix: refactor common errors (#90)

* fix: refactor common errors

* fix: remove unused version

* fix: reuse unauthorized error (ethereum-optimism#92)

* fix: superchain erc20 factory conflicts

* fix: rename crosschain functions (ethereum-optimism#94)

* feat: superweth redesign

* fix: pr fixes

* fix: fixes post merge

---------

Co-authored-by: Disco <131301107+0xDiscotech@users.noreply.github.com>
Co-authored-by: 0xng <ng@defi.sucks>
Co-authored-by: 0xParticle <particle@defi.sucks>
Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com>

* fix: SuperchainWETH redesign fixes (#110)

* fix: superchainWETH redesign fixes

* fix: withdraw arg

* fix: fix revert in SuperchainWETH tests (#112)

---------

Co-authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com>
Co-authored-by: Disco <131301107+0xDiscotech@users.noreply.github.com>
Co-authored-by: 0xng <ng@defi.sucks>
Co-authored-by: 0xParticle <particle@defi.sucks>
Co-authored-by: agusduha <agusnduha@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Deploy OP contracts during migration
2 participants