# Vox Populi, Vox Dei: Kusama and The Decentralised Benevolent Governance Design ###### Tags: Council, Kusama, Governance Shortly after [the birth of Kusama Network](https://medium.com/polkadot-network/kusama-network-7446706b8f4c#:~:text=Kusama%20is%20an%20early%2C%20unaudited,functionality%20in%20a%20real%20environment.) (Polkadot’s wild cousin), Web3 Foundation launched [Polkadot’s first candidate chain](https://medium.com/polkadot-network/w3f-initiates-launch-polkadot-is-live-8f2310d113a7). In my opinion, both networks are designed to explore how governance can find an appropriate resistance to change, start thinking of immutability as a spectrum and essentially model a political entity on a blockchain. Kusama’s logic is a result of referenda submitted by the community. This reflects the network’s understanding of the meaning behind decentralized governance mechanisms. Its configuration allows us to upgrade the logic of the blockchain and make changes to its runtime using these processes, and both actions have the goal to try and fix unpredictable human errors in place with new processes once the network is running. ### **The Polkadot Claim Process and The Use of Multisig Wallets** For both Polkadot and Kusama Networks, the claim process for users who participated in the sale of 2017 required them [to sign a message with the private key](https://wiki.polkadot.network/docs/en/kusama-claims#1-dot-holders) of an Ethereum account - the same private key used by participants during the sale. When the sale mechanism was designed, the use of Ethereum private keys for the claim process was not taken into consideration and this became an issue for some users who used multisig wallets to participate in order to prevent problems caused by the loss or theft of a private key. In the last weeks, I worked with Web3 Foundation to solve a particular claim issue caused by the use of a [Gnosis multisig wallet](https://github.com/ConsenSys/MultiSigWallet). These wallets operate as a smart contract in the Ethereum blockchain, so while there is an address, **there is no way to sign a message since the contract does not have a corresponding private key. This means multisig users had no way to claim the tokens, given the current process.** This was relatively easy to solve in Polkadot Network, given that the claim was executed before launching the candidate chain. For claiming the user’s DOTs, the team was able to overwrite the entry in the module allowing a new address to claim the allocation (this time not a multisig wallet). Naturally, this was only carried out after [verifying ownership](https://etherscan.io/tx/0x73ffe4cf08d2dbaa0fff1f9146fb03edb8be5fc9307ee81dc4d82c9b30716ca8/) of the Ethereum address used for the original allocation and the new one. ### The Challenge of a Decentralized Network: The Idea of Change from Kusama's Perspective Since the user trying to solve the issue participated in the 2017 Polkadot sale, his Kusama allocation mirrored that of Polkadot Network for 2017 sale participants. But to solve the claim on Kusama, things were a bit more complicated. The network has been running independently since 2019 (after [the last governance handover](https://polkadot.network/polkadot-v0-7-0-and-kusama-cc-3/) with CC3) under an [NPoS](https://wiki.polkadot.network/docs/en/glossary#nominated-proof-of-stake-npos) consensus algorithm and with a governance design that allows it to evolve over time at the instruction of the community. The governance design aims to ensure that the majority of KSM holders can always command the network. In order to make any changes, the governing bodies should administer a network upgrade decision that aims to allow adaptation and correct flaws. In this sense, the unfailing rule is that all changes to the protocol must be agreed upon by referenda that stream from proposals. The Council is the main representative of passive KSM holders and plays an important role in pushing upgrades forward. It is an entity that consists of a number of actors and is represented as an on-chain body. Any KSM holder can become part of the Council. **What does this mean in practice?** We could not just rewrite the claims module on Kusama as the team did on Polkadot; since the network was already decentralized by definition a Council motion was needed to move the allocation to a new address. Council members can submit “motions” for consideration. Motions are discrete events and have a fixed voting period, after which a function call is automatically made if the vote is approved. They are always binary, which means your only options when voting are “aye”, “nay”, or abstaining entirely. [Motion 160](https://kusama.polkassembly.io/motion/160) presented this particular user’s problem as the impossibility to claim a legitimate allocation in Kusama due to a human error in procedure. If passed, the motion would call `MoveClaim`, moving the allocated claim from the user’s old Ethereum address to a new one (this time not a multisig wallet). The motion was submitted to the Council for discussion and approval and was passed. Right after the motion passed, the user had access to his allocation and was able to claim his funds. ### **Motion 161: The Ability To Fix Previously Irreversible Mistakes** Building decentralized systems that can potentially fix previous errors should be the yardstick for measuring how noble a piece of code really is, especially when onboarding non-technical users to an ecosystem. A few days after motion 160 passed, a slightly different case appeared: a user tried to withdraw KSM tokens from his wallet on a centralized exchange platform and accidentally used his own ETH address as the destination. Amazingly, the exchange let the transaction go through and sent the funds to the Kusama address that was interpreted from his ETH address! In the same vein as motion 160, [motion 161](https://kusama.polkassembly.io/motion/161) aimed to fix this error. By calling `ForceTransfer`, the Council voted on a motion that would move the balance back to the original address. The difference with the previous motion is that, in this case, the origin of the `ForceTransfer` call **must be root**. In practice, this means that after the Council passed the motion, it needed to be voted on by all KSM holders through a referendum. **The passed motion became a referendum approved by holders and the user eventually recovered his funds.** A root origin call in Kusama Network can only be the result of a referendum KSM holders vote on, which reflects the essence behind decentralized governance designs. The possibility of changing the way blocks are processed and the overall network logic relies on the fact that the block-processing logic is also onchain. If and when an upgrade is needed, users vote via referenda and upgrade the network. The entity allowed to change the runtime is known as [the root entity](https://crates.parity.io/frame_system/enum.RawOrigin.html#variant.Root/) (an administrator of the network). In the case of Kusama, a Substrate-based chain, **the Democracy module** is the one holding this attribute, and an update like this needs to be approved by its defined governance mechanism: to be voted by the Council and by KSM holders (for more information about the defined governance mechanism in Kusama, visit the [Wiki](https://wiki.polkadot.network/docs/en/learn-governance#mechanism)). After it is passed, an enactment period is set for KSM holders to potentially object if they disagree, or for the Council to veto the referendum (also with a possibility to be overridden). Once this enactment period is over, the upgrade takes place. The process gives legitimacy, transparency and provides consensus within the community when it comes to fixing previously irreversible errors. As one of the Council members stated during a discussion: “Technology encodes the ethics of its creators. Governance of technology should encode the ethics of its KSM holders. The inability of a technology to change over time or the inability to deal with edge-cases on a case-by-case basis is simply wrong”. Evolvability is essential to long-term viability. ### **The Benevolent Governance Design and The Wisdom of The Crowds** `MoveClaim` and `ForceTransfer` are function calls with not many direct consequences for the collective in the short run: they change conditions only for those accounts involved. However, they are examples of how governance designs can work, backed by the community for the benefit of a legitimate token holder who in the long run could maximize chain security by staking - selfish actions contributing to collective wealth, right? If we look at the bigger picture, these examples show that the ability for changing anything on the design exists as long as it goes through referenda. When facing these types of situations on-chain in which legitimate actions cannot be executed due to human error, I always wonder: should code be law or does consensus rule? **Situations like this show how benevolent decentralized governance mechanisms can be.** I also wonder if we could have used a similar on-chain design in Ethereum to resolve situations like the Parity Multisig issue without it becoming a controversial topic. Should we start thinking of immutability as what the collective makes of it? Peter Hintjes once wrote that collective intelligence usually produces better outcomes than the smartest people in them. I’d add that a good economic design should be included as well in the equation to reach a better outcome. If this happens, then technology is a reflection of collective intelligence; and I tend to believe it cannot be neutral or amoral. There are ongoing vivid discussions within the community about the ability to change the state of the blockchain directly through governance mechanisms, and what is the right way to do so. These discussions include whether or not to use non-root authorizations from on-chain collectives like the Council. All in all, these conversations portray what this experiment is all about. Starting to think about immutability as a spectrum rather than one of the pairs in a dichotomy is a big step. It is up for debate for the Kusama community (or for any other blockchain community using on-chain governance mechanisms) to find the appropriate level of resistance to change. However, new possibilities are already emerging regarding how we design new technologies and, particularly, the Web3 tech stack. It is natural for resistance to change to appear and to be higher on permissionless technologies, but KSM holders should always be at the center of the equation. This allows us to measure how noble a piece of code really is. ___