Skip to content

Conversation

@fahimahmedx
Copy link

Motivation

The goal of this PR is to allow Suilend to keep a % of the mint & redeem fees that go to the liquid staking token (LST)'s creator.

Initially this will be drafted as a 50% take rate. However, Suilend may want to reduce their take rate for large players to incentivize them to keep using SpringSui.

The take rate % should be set to 50% by default. This should not be not changeable by the LST creator, only by the deployer of the smart contract (Suilend team).

Implementation

  • Implement suilend_fees field to LiquidStakingInfo, containing the balance of mint & redeem fees collectable by the Suilend team
  • implement collect_suilend_fees (only callable by Suilend team / deployer of smart contract)
  • instead of hard-coding the take rate as 50%, implement custom take rate % as suilend_take_rate_bps to FeeConfig
  • implement public function suilend_take_rate_bps to view take rate %
  • implement function to set take rate % for a specific LST set_suilend_take_rate_bps (only callable by Suilend team / deployer of smart contract)
  • implement new events to be emitted when suilend fees are collected, or take rate bps is updated.
  • update tests

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant