Enigma recently launched a blockchain using the Cosmos SDK, and we implemented this gov module for on-chain proposals. It uses coin-weighted voting, which means every SCRT coin is worth a number of votes. In other words, voting power depends on the amount controlled by each participant. However, delegators and validators must consider many perspectives to understand the needs of all stakeholders. Important elements may not be easily reflected in a SCRT-weighted vote alone.
“The approach for blockchain governance that I advocate is ‘multifactorial consensus,’ where different coordination flags and different mechanisms and groups are polled, and the ultimate decision depends on the collective result of all of these mechanisms together.”
– Vitalik Buterin, Notes on Blockchain Governance
Purpose: Boosting Quality Discourse
Can tracking off-chain reputation drive quality participation on the forum, and eventually on Github? We are intending to understand how various members of the community influence the direction of Enigma’s protocol and its ecosystem. As Figment’s Gavin Birch wrote in this resource, “Perhaps there is an opportunity to better distribute governance power.” If we find a successful way to track community contributions, we can expose that data to decision-makers in the ecosystem like voting nodes.
Evaluating Forum Participation
During last week’s governance discussion, I demonstrated SourceCred’s reputation protocol and expressed how it may benefit our community. Essentially, it could help mitigate the risks associated with plutocratic decision making.
“There is a delicate balance between having earlier contributors get too much credit as a result of being early, and recognizing that later work may be legitimately dependent on early contributions.”
– Dr. Michael Zargham, Network Formation Games
Informed Community Spending
Enigma’s community pool is available to fund projects and other community initiatives, and there is currently a proposal to increase our tax rate from 2 to 75 percent of inflation. We hypothesize cred scores might help voters (delegators and validators) understand the context of proposals. New members of the community should earn reputation in order to gain trust and support.
- We are planning to include snapshots of our reputation leaderboard in weekly updates.
- Members of the community will respond in those threads to highlight any contributions, point out inconsistencies, or make suggestions.
- If this provides value, we can seek ways to improve effectiveness, like maintaining a dashboard with real-time cred and exploring how the scores change when parameters are modified.
SourceCred gathers data from GitHub, Discourse, and other collaboration platforms to represent networks of actions. Contributions and contributors are nodes, interactions and connections between nodes are edges; both nodes and edges have a relative weight based on parameters. This readme gives a detailed explanation of such graphs and how they are used in the CredRank algorithm.
Forum participants build reputation by creating valuable topics and sharing helpful feedback. The default configuration of weights in the SourceCred algorithm is designed to be minted upon review of an action, rather than the action itself. In the future, we might want to adjust parameters based on community feedback.
Using a contribution graph from SourceCred, we run the CredRank algorithm to compute reputation scores. The intention of this PageRank-style algorithm is to calculate relative importance of various nodes based on weights of the nodes and edges. That means “any contribution’s importance is explicitly validated by future contributions, and the strength of that validation is greater if it comes from contributions that are, in turn, more significant.”
Watch this presentation by Dandelion, temporary benevolent dictator of SourceCred:
Read these articles by Dr. Michael Zargham of BlockScience:
Please let us know any ideas or questions. Reply here and join our Governance Working Group call tomorrow (March 13 at 2pm EDT / 6pm UTC) to discuss potential use cases for the community pool. All are welcome to get involved. Everyone is creating value, and I’m excited to coordinate this experiment. Looking forward to sharing what we learn collectively!