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?
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 a votable_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?
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 a `votable_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.
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.
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.
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.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
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
Votableconcern? I think we need something like avotable_targeta 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
Votableis 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