In Mirror Protocol, users act in one or more of the following roles:
In addition, there are special auxiliary agents that are required for Mirror's infrastructure:
A trader engages in buying and selling mAssets against UST through Terraswap and benefits from price exposure via mAssets.
A minter is a user that enters into a collateralized debt position (CDP) in order to obtain newly minted tokens of an mAsset. CDPs can accept collateral in either UST or mAssets, and must maintain a collateral ratio above the mAsset's minimum (set by governance). Therefore, minters effectively take a short position against the reflected asset's price direction, and takes a neutral position when collateralizing the position in UST or a long position when collateralizing in another mAsset.
Collateral can be withdrawn as long as the CDP's collateral ratio remains above the minimum. Minters can adjust the CDP's collateral ratio by burning mAssets or depositing more collateral.
A liquidity provider adds equal amounts of an mAsset and UST to the corresponding Terraswap pool, which increases liquidity for that market. This process rewards the liquidity provider newly minted LP tokens, which represent the liquidity provider's share in the pool and also provide rewards from the pool's trading fees. LP tokens can be burned to reclaim the share of mAssets and UST from the pool.
A staker is a user that stakes either LP Tokens (with the Staking contract) or MIR tokens (with the Gov contract) in order to earn staking rewards as MIR tokens. Whereas LP token stakers earn rewards from new MIR tokens from inflation, MIR token earn staking rewards from CDP withdrawal fees.
If the user has staked MIR tokens, they are eligible to participate in governance and receive voting power weighted by the amount of their total staked MIR. Governance is the process through which new mAssets get whitelisted and protocol parameters can be altered.
LP Tokens can be unstaked at any time, but MIR tokens can only be unstaked when they are not used to represent a vote on a pending governance poll.
An oracle feeder is a designated Terra account responsible for providing an accurate and up-to-date price feed for a specific mAsset and is the sole party that is permitted to update the registered reported price of the reflected asset. Because of its crucial role in the operational stability of mAssets, the oracle feeder is elected through governance and will be swiftly replaced by the community if ever it underperforms in its duties.
There are several tokens involved in Mirror Protocol: