Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
(Note: The below is a proposal for how decentralized governance can evolve in Livepeer. This is covered in Livepeer's Path To Decentralization](https://medium.com/livepeer-blog/livepeers-path-to-decentralization-a9267fd16532). The governance mechanisms described are not yet implemented in Livepeer's alpha release.)
The governance mechanisms in Livepeer are designed in order to ensure an efficiently running, high quality, cost effective network for broadcasters. All participants in the Livepeer ecosystem share this responsibility through their participation in various ways, but they all are also empowered through the governance protocol to take action directly.
In order to do this, bonded nodes (transcoders + delegators), can participate in the governance process, taking action on two primary responsibilities.
- Making proposals to move the tunable protocol parameters.
- Making proposals to burn or spend slashed funds which are sitting within the Livepeer common pool.
Like many stake based protocols, these governance mechanisms take inspiration from Cosmos/Tendermint. Please see the governance section of their Whitepaper for an excellent spec on how the below mechanisms work in their system. Since the governance designs in the wild right now are experiments, and we'll have the opportunity to learn from closely observing how the systems play out, we plan to revisit our governance design and deliver a formal spec prior to network launch. Below we describe the reasons for following types of governance actions within Livepeer.
There are a number of parameters within the Livepeer protocol. Setting some of these values, such as
UnbondingPeriod via simulation, assumptions, or common sense is a start, but it likely won't result in the most economically efficient setup possible for Livepeer. Rather than fixing these parameters permanently, or causing them to be moved by contentious hard forks, we propose that some of the parameters be moveable via the governance protocol.
Any bonded node can make a proposal to move a parameter's value (and pay the subsequent proposal fee). Active transcoders are required to vote on the proposal within a given timeframe, lest they get slashed for not voting. By default transcoder's votes carry the full weight of their delegated stake, however bonded nodes can change their own vote, taking their stake with them if they wish. A significant majority (2/3rds) are required to activate the change proposed.
Funds In The Common Pool
Slashed funds in Livepeer enter a common pool, with no default designated purpose. There are two options for what to do with these funds.
- Burn them, thereby increasing all nodes relative stake in Livepeer Token.
- Spend them on protocol improving endeavors. This could include funding development, research, marketing, evangelism, products, or other efforts that the community believes will add value to the Livepeer ecosystem.
Proposals for these two actions will follow a similar voting pattern to that described above.
Governance Parameter Reference
The governance protocol itself has its own moveable params.
|Parameter Name||Description||Example Value|
||The amount it costs to make a proposal. There needs to be a cost to prevent spam.||10 LPT|
||The amount of stake necessary to activate a proposal.||2/3rds|
||The amount of stake to slash in the case of failing to vote.||2%|
||How long does voting on a proposal last?||2 weeks|
Again, the governance mechanisms are a work in progress, that intend to learn from some existing examples in the wild. Check back for further details and a spec prior to network delivery.
One way in which Livepeer differs slightly from many blockchain projects is that there is a social/identity layer to full participation. This comes in the form of bonding LPT and staking it towards Transcoders whom one believes will add to the performance, efficiency, and value of the network. Users can decide for themselves whether they believe it is in the network's best interest to value scale, reliability, price, decentralization, or other aspects that candidate Transcoders can socially demonstrate to them through stats dashboards, forums and online social channels, blog posts, etc. While any node can certainly remain pseudonymous, Transcoders may see benefit in forming a social contract with delegators. It is in everyone's best interest for the Livepeer network to be as beneficial as possible to the world's existing broadcasters and live streamers, as well as the pool of new streamers who can emerge as a result of decentralization and a globally connected crypto economy. A social connection can go along way in building trust in moving towards this common vision.