Propose upgrading mStable’s staking contracts to support staking MTA/ETH BPT tokens into Balancer’s new staking contracts for continued BAL LM rewards
Abstract
Balancer has launched veBAL with a new set of staking contracts where Balancer LPs must now stake their LP Tokens (BPTs, Balancer Pool Tokens) to continue to receive liquidity mining incentives
mStable governors staking the 80/20 MTA/ETH BPT tokens in the staking contract do not enjoy new BAL emissions, which the mStableDAO is currently voting for the pool (from the rewards from the token swap previously announced with Balancer) and other veBAL holders voting for MTA/ETH pool
It is proposed to upgrade the staking contracts to support BPT tokens currently staked in mStable to be further staked into Balancer’s new staking contracts for liquidity mining incentives, currently with fully automated BAL minting and inflation schedule locked
Note that mStable’s MTA/ETH pools on Balancer currently receive ~0.8% of voting power rewards, and possibly more in future when Convex-esque platforms like Aura Finance launch and bribes are implemented in future
Specification
TBD (to be edited when formalized)
Motivation
MTA/ETH stakers taking part in mStable’s governance can continue receiving BAL LM rewards
Increase buy pressure to support MTA’s token price from LM rewards and liquidity incentives
Upside to MTA secondary market price would support our own LM incentives and ecosystem
Next steps
Given the time sensitive nature of LM incentives and the newly launched veBAL model; I suggest to provide your feedback asap and bearing no significant opposition or change in ideation, we would move ahead with this RFC in the coming week and create a formal draft proposal on Github to be used for the review.
We would also need Nick and Cesar to review the feasibility of this.
At the moment the mBPT is just transferred and held in the stkBPT contract. To get the BAL rewards going forward, the mBPT would then be deposited into the Balancer mBPT Gauge Deposit (mBPT-gauge).
The mBPT Gauge has simple deposit and withdraw functions. There is no locking of mBPT like there is locking of BAL for veBAL.
Changing the Staking Token BPT (stkBPT) contract so the mBPT is deposited into the mBPT gauge is a simple change. The reverse will be done on withdrawals.
A migrate function can be added to stkBPT to deposit the mBPT into mBPT-gauge.
I need to look further into how the BAL rewards would be claimed and distributed.
There is 130k mBPT staked in the mBPT Gauge already. That’s 14% of the current mBPT supply
An alternative is the set_rewards_receiver on the mBPT-gauge is used to direct where the claimed rewards for the stkBPT contract are directed. A setRewards function can added to stkBPT that only the Protocol DAO can call which calls set_rewards_receiver on the mBPT-gauge. A simple claimRewards function can be added that just calls claim_rewards on the mBPT-gauge which will transfer the rewards to the nominated account. eg the mStable operational account so the rewards can be air dropped.
Are there any updates on how the proposal is moving along @derc or do you need a hand with this?
Kind of acutely aware we’re missing a significant amount of BAL rewards currently because of the BPT not being staked, and also need to get ready for when Aura Finance is going live to get maximum rewards for everyone
@naddison has been put in work to make the smart contracts work, testing is underway. We should be ready to post the proposal soon, once we have the specifications section down.