Hello there.
May I ask a question.
Is it possible to change these [governance parameters](May I ask. Is it possible to change these parameters? celo-monorepo/packages/protocol/governanceConstitution.js at 24c1b65cb3afafc5ff8df767d828aa8b95b702fd · celo-org/celo-monorepo · GitHub)?
Hi @demo
Sorry for the late reply here. Yes, it is possible and has been done many times previously. Here is some reference material:
-
an example of a proposal changing some of the parameters: governance/CGPs/cgp-0042.md at ddf636c780b62d2e55d9cc7168212a85a8d7d0ef · celo-org/governance · GitHub
-
reference to this type of proposal in the governance docs: governance/Types of Celo Governance Proposals.md at ddf636c780b62d2e55d9cc7168212a85a8d7d0ef · celo-org/governance · GitHub
Hope this helps
And how do you vote the change on these parameters?
Is it a yes/no?
Or do you vote what the parameter should be?
I am very glad that Celo allows its initial parameters to be voted.
Once upon times, I tried to convince the ucoin (aka duniter) people to do the same, but they didnt, and they locked the thread.
So how do you vote the change on these parameters? a yes/no or a number?
Hi!
You can see an example of proposal to change Governance Parameters here: governance/CGPs/cgp-0149.md at main · celo-org/governance · GitHub
Celo’s governance system allows for changes to core contracts through a formal on-chain process.
Here is a list of parameters that can & can’t be changed: Celo Governance Cheat Sheet | Celo Documentation
In the above proposal, you can vote a “yes” or a “no” for the decrease of a parameter from 90% to 60%.
What if I would like the decrease of this parameter from 90% to 80%.
Can we vote numbers in celo proposals, or only a yes/no is allowed?
You need to submit a proposal to decrease the parameter from 90% to 80% and then the community will vote yes/no.
Or, if you are referring specifically to the proposal I linked, if the proposal is still in the discussion stage you can either cast a comment with your reason to decrease from 90% to 80% instead of 60% or post a counterproposal to challenge that.
And what if someone wants 81%, and another wants 77% etc. How many yes/no proposals (or comments) should be added? This is not practical solution. It will be better to allow the celo voters to vote numbers directly, instead of forcing them to vote a yes/no vote on a closed set of unlimited numbers (from 0% to 100% and the inbetween numbers) .
So, as far as I can see, currently is not allowed to vote numbers in Celo. Dont you think it will be usefull to allow the celo voters to vote numbers?
I mean, not only a yes/no is usefull, sometimes someone may want to vote a number from 0% to 100%.
Do you think I should add a proposal for that? Is it allowed to change the yes/no/other governance procedure/protocol of Celo and add a number voting capability?
Does such a change affects things that are not allowed to change?
Things That Can’t Be Modified By Governance
- The protocol by which nodes communicate
- The format of block headers, block bodies, the fields in transactions, etc
- How nodes sync
- How nodes store their data locally
- Most parameters that affect the blockchain
I think the questions here should be:
- Why you want to change the parametes, what is the rationale behind that?
- Which especific parameters you want to change? Why?
Normally constitutionals parameters of a Blockchain should not be changed too frequently and needs a lot fo rationale behind to make this change happen.
I would like to be able to change many constitutional parameters because I believe that most of them have been selected by chance and with no underlying rationale.
Furthermore, very few people have been asked to decide the value of these constitutional parameters, and I believe that if more people are asked about it, the more accurate and correct the value of these parameters will be.
Finally, and most important, the Celo voters should be allowed to vote numbers, not only for the constitutional parameters, but also for any other usage.
I will comment the above soon.
In the meantime, please lets discuss whether voting numbers is a usefull feature in Celo or not. Regardless whether these numbers refer to constitutional parameters or any other parameters (like the budget system for example).
Hi @demo,
Thank you for continuing the dialogue. I’m speaking here in my personal capacity, not on behalf of the Celo Community or the Governance Guild. Your questions touch on multiple aspects, and I’ve outlined my thoughts below. However, I’d like to note upfront that the functionality you’re seeking may already exist, albeit off-chain within this forum.
Before a proposal is formally submitted, discussions here allow for community input regarding why certain parameters should be set at specific percentages. Ideally, consensus on these parameters is reached before voting. A vote without proper context could potentially be more harmful than beneficial.
Here are some points to consider:
- Is there a genuine demand for non-binary voting functionality on governance proposals?
From my experience, I haven’t seen other requests for this feature. Could you provide examples where community members have expressed similar concerns? - What is the technical effort required to change these parameters?
Implementing such changes would involve modifying core contracts, which would require development resources and an audit, similar to other core contract upgrades. Who would undertake this work, and under what guidelines? - Impact on chain security:
The current design of the Celo Governance system prioritizes robustness and tight security to safeguard critical system parameters. You’ve suggested that only a few people were involved in deciding these parameters, but I’d argue otherwise. At genesis, 100 validators, along with the community, accepted these parameters, and subsequent changes have followed governance processes.The original values were determined by a knowledgeable team based on available information at the time. While some parameters may need adjustment given that this was four years ago, any changes have been contextually justified through governance proposals. Introducing abstract voting on percentages could raise significant concerns, depending on its implementation.
If you believe adding this functionality is a valuable use of resources, I suggest preparing a detailed governance proposal that includes the following:
- Information about yourself:
With an account created only a few days before asking this question and no prior posts, it’s difficult for others to understand your perspective or the rationale behind your suggestion. Social capital plays a crucial role in gaining support for proposals. - A detailed case:
Provide examples of other community members requesting this functionality or cite blockchains with similar governance systems, outlining their benefits and associated security risks. - Implementation details:
Include a proposed design, budget, implementation team, and plans for auditing the work.
Apologies if my initial response lacked depth; I didn’t have the context you’ve now provided. I hope my suggestions are helpful as you refine your approach. Thanks again for raising these questions!
Hi @Wade , thank you very much for your answer and questions. I will try to answer to all of them.
Some numerical values depend on theories. Some others depend on each person’s individual preference. You are certainly right that a number that is the fruit of a correct theory should not be voted. But not all numbers are the same, many numbers are chosen at random or by subjective criteria.
I believe that there is a need for such a vote.
Here is an example, where a numerical vote takes place:
https://mnowatch.org/encointerUBI
Here is some theory on voting the numbers.
Let the DAO decide “how much” – Pietro Speroni di Fenizio, PhD
I dont know if it is required to change core contracts, or if core updates are needed. We have to ask the celo developers on that. But there is a quick and dirty method we can use, if we want to allow numbers to be voted in celo.
This transitional method can be applied to any existing binary voting system, until the core developers decide to code something more stable and understandable. You can read below about this method.
The Base3 voting system | Dash Forum
Yet you admit that some initial values require adjustment over time, and this is where voting the numbers becomes usefull.
I am demo from Dashtalk or vazaki3 (my username there after my ban)
vazaki3 | Dash Forum
I am also demo from Encointer.
An attempt to establish a similar system to Dash cryptocurrency in 2017 - Encointer Global - Encointer
I am the co-creator of the mnowatch site.
I am new here, so I have to search for quotes of other Cello community members.
Dash is a blockchain that has implemented such functionality.
Proposal “encointerUBI-Digit1” - DashCentral.org
In Dash, we vote the numbers
Calculate and Vote The Numbers
I will come to this later .
I will first try to propose to vote a number which is not a constitutional parameter.