SIP-365: Remove Core Fee Switch

NetworkEthereum, Optimism & Base
ProposalLoading status...

Simple Summary

This SIP proposes to remove the core fee capture mechanism (implemented per SIP-319) in favor of market-level fee capture.


This change entails simplifying the codebase by removing the ability for fees to be captured on calls to mintUsd, burnUsd, depositMarketUsd, and withdrawMarketUsd. This fee capture mechanism has not yet been enabled on any Synthetix mainnet deployments via SCCP.


A simple fee capture mechanism on stablecoin issuance/redemption was added to the core system, such that governance could configure a Synthetix deployment to share fees with parties other than liquidity providers. While this works well for the spot market implementation, the perpetual futures market implementations interface with the core system when escrowing margin collateral, not when processing trades. If the core fee switch were to be enabled on depositMarketUsd and withdrawMarketUsd globally, this would lead to undesired behavior on the perpetual futures market.


It would be possible to add an SCCP-configurable mapping of fee rate overrides on the core system, such that this fee could be disabled on specific markets like perpetual futures markets. This increases governance overhead. Alternatively, here we assume that fee capture can be enforced in the market implementations, especially as long as the registerMarket function remains permissioned to governance.

Technical Specification

The relevant updates should be applied to the mintUsd, burnUsd, depositMarketUsd, and withdrawMarketUsd functions. The storage slot used to track the fee amount can be renamed/commented (but not removed) to identify that it's currently unused and could be repurposed in the future.

Test Cases

Relevant tests will be developed during implementation.

Configurable Values (Via SCCP)


Copyright and related rights waived via CC0.