SIP-319: Core System Fee Capture Mechanisms
Author | |
---|---|
Status | Implemented |
Type | Governance |
Network | Ethereum & Optimism |
Implementor | Noah Litvin (@noahlitvin) |
Release | TBD |
Proposal | Loading status... |
Created | 2023-03-09 |
Simple Summary
This SIP proposes adding functionality for governance to set custom fee capture strategies when stablecoins are minted, burned, deposited, and withdrawn.
Motivation
The intent of this proposal is to provide governance with maximum flexibility in controlling fees where they may be levied by the core protocol.
Rationale
By relying on a standardized interface for a smart contract to process fees, governance will be able to update the distribution of fees in addition to the amount of fees collected. The fee recipient could be an EOA, a rewards distributor, or any other smart contract.
Technical Specification
Each of the mintUsd
, burnUsd
, depositMarketUsd
, and withdrawMarketUsd
functions will have a corresponding fee percentage value and fee recipient address.
On each of the actions, this percentage of stablecoins will be transferred to the recipient address.
Fees will be effectively debited from LPs such that the exact amount specified by the caller is provided. depositMarketUsd
and withdrawMarketUsd
will be updated to return the amount of fees paid to the protocol such that the market could pass these fees on to traders. The getWithdrawableMarketUsd
function should be updated to take into account withdrawMarketUsdFeePercentageD18
.
Test Cases
Configurable Values (Via SCCP)
uint depositMarketUsdFeePercentageD18
address depositMarketUsdFeeRecipient
uint withdrawMarketUsdFeePercentageD18
address withdrawMarketUsdFeeRecipient
uint mintUsdFeePercentageD18
address mintUsdFeeRecipient
uint burnUsdFeePercentageD18
address burnUsdFeeRecipient
Copyright
Copyright and related rights waived via CC0.