Maren
GitHub
The product

Earn

An ERC-4626 vault over the MUSD Stability Pool, with no forward APY.

Idle MUSD can sit productively. MarenEarn is an ERC-4626 vault over MUSD's Stability Pool: it provides your MUSD to the pool and claims the BTC liquidation gains the pool pays out. Converting that BTC back to MUSD needs a DEX router Maren has not yet verified on Mezo, so swapRouter is deliberately address(0) and harvest() holds the BTC rather than swapping it. Until a router is wired the vault is partly BTC-denominated: shareholders own that BTC, but nothing on-chain converts it. On matsnet today no liquidation gain has reached the vault and harvest() has not been called.

Where the yield comes from

The MUSD Stability Pool has no token emissions. Yield is liquidation gains only, which makes it lumpy and impossible to state as a fixed rate. Maren displays trailing realised yield, labelled as backward-looking, and refuses to advertise a forward APY. Any product presenting a forward APY here is presenting a number it invented.

When a trove is liquidated, Stability Pool depositors absorb its debt and receive its collateral at a discount. That collateral is the yield. It arrives in bursts tied to market events, not on a schedule, so there is no rate to promise.

Earn is a vault, not a savings account. Even the icon reflects this: a rising line, never a piggy bank, so nothing on the screen contradicts the disclosure.

The full cycle, proven on-chain

The Earn path is the whole product in three transactions, and all three are on matsnet:

Deposit Bitcoin

BTC deposited into the vault as collateral.

Borrow MUSD

40 MUSD drawn against it through the pooled vault.

Place MUSD into Earn

25 MUSD placed into MarenEarn. MUSD's own Stability Pool then reports a 25 MUSD deposit for the Earn vault, confirmed by getCompoundedMUSDDeposit.

Every layer of the stack touched the real protocol, and each step is a row in Activity with its hash linked to the explorer.

What Earn reports

totalAssets()uint256

The vault's MUSD value including compounded liquidation gains. This is what grows over time, and it is the only honest way to express the return: realised, backward-looking.

deposit / withdraw / redeemERC-4626

Standard ERC-4626 share accounting. Shares represent a proportional claim on totalAssets().

There is a known open item on the Earn screen from the conformance audit: an exposed staleness flag (isUsingStalePrice) that nothing currently reads. It is left open on purpose because it needs a designed "price unavailable" state in the Earn screen rather than a silent guard, and inventing that copy without deciding the intent would be guessing.

Revenue on Earn

The only fee Maren takes on Earn is a performance fee: a share of realised liquidation gains only, targeted at 10% of realised gains. If liquidations yield nothing, there is no fee. Nothing charges for holding.