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

Migrating to new Contract Versions: Construct from Previous Contract Deployment, and Contract Pointer #9

Open
NikitaVr opened this issue Jul 5, 2022 · 0 comments

Comments

@NikitaVr
Copy link
Owner

NikitaVr commented Jul 5, 2022

In case we need to do a redeploy or some sort of fork of this contract, can we make a constructor that can copy over the state of a previous contract?

This could also be used to revert state in case of a major breach.

For Example, let's say a ton of wallets got burned accidentally. We could revert to unburn them, but that would require whole community support to accept the new chain.

Also how would all other contracts that make use of BurnMyWallet update to point to new Burn Contract? Perhaps should have mini intermediary contract that just contains contract address to point to.

Or Perhaps that is already covered by Open Zeppelin upgradeable contracts? Look into that more, otherwise will need to setup a Pointer Contract in between so can switch contract addresses easily as long as the same interface is maintained (or at least is backwards compatible)

Also in case a migration was necessary of state, no sneaky state changes can be made since Repo is open source so the migration code would be visible, and would be verified on chain as well.

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

No branches or pull requests

1 participant