Lisk is joining the Optimism Superchain ecosystem in 2024! Learn more about our planned migration to Ethereum, and what it means for our community, here

Lisk Governance Module

The Lisk Governance module is an exciting tool for decentralized decision-making. Simply put, it allows communities of Lisk blockchains to submit proposals, vote on them, and take actions without relying on a centralized authority.

By Tony Morinello

31 Aug 2023

Post content head

This blog post is meant to be a basic overview for general users. For a more detailed, technical look at the Governance Module, please refer to LIP 0074 - Introduce Governance Module.

What is the governance module?

You can think of the governance module as a digital town hall for a blockchain. This is where community members are able to:

  • Propose changes to the system.
  • Vote on proposals.
  • See collective decisions take shape.

Why do we need a governance module?

There are two primary reasons for the Governance Module:

Community's Voice

The module gives users a say in guiding the blockchain’s future. These issues could be about allocating funds to a promising project, or tweaking a defined setting of the blockchain itself.

Simplifying Changes

Normally, big changes on a blockchain require a hardfork, which can be a complicated process. The Governance module can make certain changes, such as lowering or raising the minimum required balance to create a proposal, much more streamlined.

How are proposals created?

Creating a proposal is just like pitching an idea in a meeting. Anybody can bring up a topic, provided they have the minimum required token balance (10K LSK on mainchain) and lock some tokens as a deposit (1K LSK on mainchain). This acts as a guard against irrelevant or spammy proposals.

Creating a Proposal - Infographic.png

There are three different types of proposals:

  • Funding Proposals: Asking for money from the common treasury for a project. Once accepted, this proposal transfers tokens automatically.
  • Config Update Proposals: Suggesting tweaks to the system settings. Once accepted, this proposal changes a parameter value automatically.
  • Universal Proposals: Anything else that doesn't fit in the above categories. Once accepted, this proposal must be implemented off-chain, there are no immediate on-chain consequences.

Proposals should be clear, concise, and neatly formatted (Markdown is recommended).

How does voting work?

Once a proposal is sent to the chain, users can start voting on it. But remember, just as with staking on a validator, their influence depends on how many tokens they've locked in. This means two things:

  • Only accounts that have staked their tokens (LSK on the mainchain) for a validator(s) may participate in voting on proposals.
  • The larger the amount of staked tokens the account has, the larger influence they have for their vote(s).

Users can vote "Yes", "No", or "Pass". "Pass" is for those times when an issue is considered essential but the voter may not be sure which way to vote. After a specific period, the votes are tallied.

How long are proposals active?

A proposal doesn't live forever. It has a lifespan. For all proposals, there are two important time spans to consider, the quorumDuration and the voteDuration.

quorumDuration

For all proposals, the quorumDuration is 120,960 blocks on Mainnet. Assuming no missed blocks, this would be 14 days.

Quorum - Infographic.png

Once this time period has elapsed, the percentage of all tokens that voted is checked against the chains set quorumPercentage. If the proposal has gathered enough steam to get the requisite votes, it moves forward.

However, if it doesn't get enough votes, it is then considered failed. In this scenario, the initial deposit is burned instead of being returned to the creator of the proposal. This is to discourage users from spamming the network with poor quality proposals and to encourage community discussions even before a proposal is created.

voteDuration

For all proposals, the voteDuration is 241,920 blocks. Assuming no missed blocks, this would be 28 days.

At this point, the proposal is concluded and its result is now calculated. The required percentage of Yes votes to accept a proposal will depend on the vote turnout, which we refer to as turnout bias.

What is turnout bias?

Turnout bias forces proposals with low turnout to be much more unanimous to pass a proposal. If only a small amount of voting power is making a decision, there should be a clear consensus among the voters.

In simple terms, it's a way to ensure decisions are fair, even if not many people vote. If only a few vote, the proposal should have a strong consensus to pass. For instance, if only 10% of the community votes, 76% of them need to approve for it to pass.

The formula to calculate the Turnout Bias is as follows, a proposal is passed if:

Image - 01.png

The table below may better demonstrate vote turnouts for proposals:

Turnout, % of electorateApproval needed to accept
10%76%
20%69%
30%64%
50%58%

Community treasury

The Community Treasury is like a joint bank account for the community that is held in trust. Governance Module proposals can request funds from it, but they need to be accepted for the funds to actually be transferred.

Another feature is that new tokens can automatically be added to this treasury over time. Blockchains may set that a certain number of its tokens that are created in each block be sent directly to this treasury address.

Users will also have the ability to donate to the treasury account as well.

Summary

The Governance module paves the way for a more inclusive, democratic, and efficient blockchain ecosystem. By allowing on-chain decision-making, technology is not only enhanced, but users also gain a greater sense of a community, power and responsibility.