Vote on contract upgrades #2
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upgrading tokens is a security risk and requires trust to whoever is able to upgrade to a new version.
We need to define a process on how to upgrade to new releases and implement the specific access controls.
Who should be able to upgrade contracts to a new version?
Will the be some voting required? Should it be some multisig transaction?
I'm in for a voting! Is the proposal part also a voting? If so what would be the difference? Is it possible to abstract it to have something like a
Votable
concern? I think we need something like avotable_target
a condition who can vote, what is the final state and what should happen if the final state is reached.Off topic question: Is every call to the contract a transaction that needs gas?
Every call to a contract that changes the state is a transaction and costs gas.
Reading data from a contract is free - as it is just accessing the local DB from the connected node.
Voting would for sure be the best. I think the general logic what will be executed is different though. For proposals new tokens will be issued for upgrading the contract some different attribute must be set.
The
Votable
is a good idea. Maybe we can try that every proposal is its own small contract that implements that logic - need to see how much that would be.I'd focus on the proposals first though.
doable with aragon (#62 )
Even though it's doable with that, this issue is still valid, no? Or do we already have contract upgrade voting implemented in #62?
yeah probably you're right.
right now some access role is defined. The deploy account gets that role and we would need to give that one to a voting app. And actually I think we could even use the aragon voting app for that.
Though all this is theory and I have not tested it.
but for the launch I think that is enough?
Yes, of course. Just making sure we keep issues open for the things we plan to implement in the future.
I somehow have added this issue in the launch milestone. I remove the milestone but we keep the issue open.
refs #171