-
Notifications
You must be signed in to change notification settings - Fork 97
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
Consider making Upgradeable CoreMetadataModule #99
Conversation
a1cd370
to
fd3dd95
Compare
Code looks good, but this is something to consider since metadata can be made "immutable" (freeze). With the upgradeability, it's not completely immutable as code logic can change. |
Very good point @jdubpark , updating the title. |
can you rebase the code? Also, @kingster-will can you review? |
After some thoughts, I think we should make it upgradeable since the rest of the codebase is also upgradeable. We can renounce upgradeability for this module down the road (freezing from our side) |
59b52d3
to
f379a8c
Compare
Please kindly also get review from @LeoHChen to confirm whether we need to make |
The module itself doesn't have storage, but
ipAccountStorage.setXXX
will take the address of the caller as key.If we want to change something from CoreMetadataModule by deploying another contract, all previous metadata would need to be migrated (either by the new module setting it all with a script, or each ipAccount migrating)
With a proxy, the address would be the same, so logic can be changed. This introduces the need for the user to trust us with the metadata, and weakens the promise of metadata freezing