Governance
1. Governance Overview
Parallel protocol is designed to be a fully decentralized financial platform that can serve millions of users. On Parallel, there are 4 kinds of stakeholders:
Development team and open contributors
Investors with Parallel's native token
A wealth of platform users
Network maintainers
The governance process should incentivize each party to participate in the network activity and evolve the protocol to meet the broad users' requirements.
2. Governance Implement
Parallel governance has been implemented through substrate pallets, and thus inherited Polkadot's custom governance which is composed of the following parts:
Democracy
Council
Technical Committee
Treasury
Any HKO/PARA token holders can propose and vote on essentially any possible modification to the system, more specifically:
Runtime Upgrade
Protocol Parameters
Treasury Spending
Council Member Nomination
Democracy/Council/Technical Committee play very different roles in this governance system. Democracy can be imaged as the Sudo of the blockchain.
If one proposal got enough votes, then the modification will be applied to the blockchain
unless Council/Technical Committee finds harmful
In other words, council and technical committee serves for democracy. Technical Committee can also fast-track a proposal which makes it easier & quicker to pass. Token holders can nominate council/technical committee members to represent their rights.
Except the basis of governance, when token holders decide to submit changes to the protocol, they will also need to pay attention to the hard timeframe limitation:
LaunchPeriod (1 Day)
VotingPeriod (5 Days)
FastTrackVotingPeriod (3 Hours)
EnactmentPeriod (1 Day)
The minimum time needed for a proposal to pass is around 3hours, token holders will need to ask council to propose an external proposal. Afterwards, the technical committee will need to fast-track to make sure it enters referenda.
3. Governance Calls
Loans Pallet
add_market
Stores a new market and its related currency. Ref: https://api-docs.parallel.fi/rustdocs/pallet_loans/pallet/enum.Call.html#variant.add_market
activate_market
Activates a market.
Ref: https://api-docs.parallel.fi/rustdocs/pallet_loans/pallet/enum.Call.html#variant.activate_market
update_rate_model
Updates the rate model of a stored market.
Ref: https://api-docs.parallel.fi/rustdocs/pallet_loans/pallet/enum.Call.html#variant.update_rate_model
update_market
Updates a stored market.
Ref: https://api-docs.parallel.fi/rustdocs/pallet_loans/pallet/enum.Call.html#variant.update_market
Liquid-Staking Pallet
update_reserve_factor
Update platform's protocol fees ratio Ref: https://api-docs.parallel.fi/rustdocs/pallet_liquid_staking/pallet/enum.Call.html#variant.update_reserve_factor
update_staking_ledger_cap
Update single nominator's max bonded cap Ref: https://api-docs.parallel.fi/rustdocs/pallet_liquid_staking/pallet/enum.Call.html#variant.update_staking_ledger_cap
AMM & StableSwap Pallet
create_pool
Create of a new pool. Ref:
Crowdloans Pallet
create_vault
Create a new crowdloan vault. Ref: https://api-docs.parallel.fi/rustdocs/pallet_amm/pallet/enum.Call.html#variant.create_pool
update_vault
Update an existing crowdloan vault. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.update_vault
open
Open a crowdloan vault so that users contributions can be sent to relaychain via XCM protocol. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.open
close
Close a crowdloan vault so that users' contributions can be paused. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.close
auction_succeeded
Mark the associated vault as Succeed
if vault is Closed
Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.auction_succeeded
auction_failed
Mark the associated vault as Failed
if vault is Closed
Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.auction_failed
slot_expired
Mark a crowdloans vault as expired so that users can redeem back their contributed tokens. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.slot_expired
migrate_pending
Migrate pending contributions by sending xcm. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.migrate_pending
refund
Refund users contributions for failed auctions. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.refund
dissolve_vault
Dissolve a crowdloan vault which has been dissolved on relaychain. Ref: https://api-docs.parallel.fi/rustdocs/pallet_crowdloans/pallet/enum.Call.html#variant.dissolve_vault
Last updated