Thanks a lot for thinking about this @lehnberg, I’ve been trying to flesh out a proposal for a while but it’s a complex topic and I find it quite hard to mix it with development. I might have been trying to boil the ocean all in one go as well.
I generally agree with your general thoughts and your points on Grin. I also think that starting with something now is better than waiting. My take on your questions:
- How well do you think the existing model works, today, tomorrow and the day after? Today is fine but I agree we have it easy. It’s likely to change fairly rapidly as we approach mainnet.
- What do you think about any attempts to formalise a governance model structure? It’s a necessity, at least for us. We have to also keep in mind that most of governance is emergent and defined by the people involved. So we have to be careful to not come with a structure that would get too much in the way either. This community is young.
- Are there specific subjects/questions you think are particularly important to be handled through a governance plan for Grin? If so, what are those? There are a ton: hard forks, how to compensate developers, how to raise funds generally and direct them, what will we do in case of a major flaw allowing arbitrary coin issuance, ASIC resistance, etc.
- Is there a document today, outlining the principles and objectives that represent the mission of the Grin project and its community? If not, is there value in trying to create one? No and yes.
I think it’s important to also think of who are the major stakeholders and how can they be represented. For Grin, we’ll likely have developers and general contributors, miners, users, investors (are they different from users?) and companies (like exchanges and web wallets). How can each of these groups be represented? How can we do so while keeping governance decentralized and protect everyone’s privacy?
I had a model in mind that addresses some of this but haven’t refined it very much. I’ll still throw it out there to see what others’ thoughts are. Imagine we have a “wallet” comprised of any number of signatory. To begin with, we can seed that with the current committers list (people who are the most involved). So each committer has a key and it requires a certain threshold of signatures to move funds. Now people can get added, either by votes of people who are already in that group, or by popular vote (for example). We could reach hundreds of people who ideally all care and all represent some point of view.
From here, the decision process, at least as far as how it pertains to funds deployment is a series of transactions. And maybe even for decisions that don’t entail fund deployment, a positive vote could just be whether an output was spent or not. The funding itself can be done by applying gentle pressure on miner and investor benefits (ala @tromp fair mining license).
Of course, that still leaves a lot out (like what gets decided, how, what types of votes, etc.). Just throwing this out there to check what others’ think as well.