Enshrined Liquidity and Staking
An overview of Initia's L1 staking, consensus, and Enshrined Liquidity mechanisms.
Overview
The Initia L1 uses a delegated Proof-of Stake-consensus mechanism with one twist. Through the x/mstaking
module multiple tokens can be staked directly with validators for voting power as long as they have been whitelisted via Governance through a whitelist
proposal.
The x/mstaking
module accepts either solo INIT tokens or whitelisted INIT-X LP tokens from InitiaDEX as stake. We call this mechanism Ensrhined Liquidity.
Enshrined Liquidity benefits the Omnitia ecosystem in multiple ways:
productive assets are put to work
security is diversified from solo INIT volatility
staking rewards are amplified given LP stakers earn swap fees, yield from other tokens in the pair, and exposure to additional assets they want to hold
liquidity on the L1 is significantly amplified and accesible to both L1 apps and L2 chains
Inter-minitia routing: transfers between L2s route through the L1 and may be swapped during the process
Enables tokens in whitelisted LPs to be used for gas on the L1
Any whitelisted staking token may be bonded with a validator and will begin to receive block rewards. When unbonding stake with validators, tokens are un-deleged and no longer have voting power or earn block rewards. Unbonding tokens are subject to a 21 day unbonding period, after which they may be claimed.
Whitelisting
For an LP token to be eligible for staking and block rewards it must first be whitelisted by the Initia L1 governance. For an LP token to be eligible for whitelisting it must have INIT in the pair. If the LP token is a weighted DEX pool LP (a la balancer), the INIT weight in the pool must be >= 50%.
A whitelist
proposal must be made indicating the LP tokens contract address along with a reward_weight
.
Reward Weights
Tokens staked with validators earn inflationary INIT block rewards according to the inflation schedule detailed in the INIT tokenomics section.
Each whitelisted LP token along with solo INIT have a reward_weight
assigned to them.
Rewards per token per block are calculated as such:
token_rewards_n = block_rewards * reward_weight_n / total_weights
token_rewards_n
is the amount of inflationary INIT rewards for whitelisted token (INIT or LP) n.
block_rewards
are the cumulative INIT rewards for a given block.
reward_weight_n
is the governance set weight parameter for whitelisted token (INIT or LP) n.
total_weights
is the sum of all reward_weight_n
over all n whitelisted tokens.
In the future it is planned to have reward_weights adjusted more frequently similar to that seen in Curve Gauge votes.
Governance Power
The Initia L1 governance power of a given staker is derived from all staked tokens they may have. This includes solo INIT tokens and LP tokens staked.
We calculate voting power in INIT denomination, summing staked solo INIT balances and LP token balances by converting LP tokens to their equivalent INIT value.
To calculate an LP tokens equivolent INIT value we use the following calculation:
LP Voting Power = num_LP_tokens * tokenWeight
tokenWeight = (initPoolBal / totalShare) * (initWeight + quoteWeight)/initWeight
Let's look at a simple example:
Say there is an 8:2 INIT-USDC pool and INIT is valued at 1 USDC.
The pool contains 80 INIT and 20 USDC and there are 100 LP tokens (totalShare)
User N holds 30 LP tokens
tokenWeight = (80/100) * (8 + 2)/8 = 1
LP Voting Power = 30 * 1 = 30 INIT
Last updated