Skip to content

Commit

Permalink
feat(docs): add latest articles and mip
Browse files Browse the repository at this point in the history
  • Loading branch information
albist committed Mar 20, 2024
1 parent 15f54c4 commit 6eb5051
Show file tree
Hide file tree
Showing 6 changed files with 228 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
Link: https://morpho.mirror.xyz/cQ6mrVMMWw5brxJo9H4q433vidn2p-k6SX9BVAzf6Yo
Title: Formally Verifying MetaMorpho with Certora

By Morpho Labs
On 19 March 2024

MetaMorpho is an open-source, immutable, heavily audited code base that has now also been formally verified using Certora (https://www.certora.com/).

Formal verification is a staple of Morpho's security framework (https://morpho.mirror.xyz/7mfZLV0KQpBiHF3QLHyWaQ_7gf_2_WmgMeCvqGY-kpY). Not long ago, we shared the formal verification of Morpho Blue (https://morpho.mirror.xyz/pk_jXDlq-pv8TcHeN7X4-zZcYa7TLRmgv87UBCjG4i8), and today, we are doing the same for MetaMorpho.

Used effectively, formal verification can help develop higher quality and, most importantly, more secure smart contracts. That is why Morpho Labs has invested significant time and resources into formally verifying Morpho Blue and now MetaMorpho.

This article recaps the benefits of formal verification and provides examples of MetaMorpho verification using CVL, Certora's Verification Language.

The full scope of MetaMorpho's formal verification is available here: https://github.com/morpho-org/metamorpho/tree/main/certora


- Why Formal Verification
Formal verification (https://en.wikipedia.org/wiki/Formal_verification) is the process of using mathematical methods to prove the correctness of a smart contract by verifying that it satisfies specific properties. These properties are expressed using formal language supported by the verification tool used to prove them.

Formal verification stands out due to its exhaustive approach to evaluating software correctness. Other methods, such as unit testing (https://en.wikipedia.org/wiki/Unit_testing), can only verify correctness for specific scenarios or inputs, whereas formal verification enables checking every possible scenario or input.

Despite its capabilities, it is worth noting that formal verification is still only one part of Morpho’s comprehensive security framework.

Now, to look at formal verification in practice, using real examples from the repo.


- Example 1: Roles
MetaMorpho defines different roles to be able to manage the vault, the distinction between roles helps in reducing trust assumptions.

Roles follow a hierarchy, and this hierarchy is verified to hold in [[Roles.spec]](https://github.com/morpho-org/metamorpho/blob/main/certora/specs/Roles.spec). More precisely, a senior role is checked to be able to do the same operations as a lesser role. Additionally, it is verified in [[Reverts.spec]](https://github.com/morpho-org/metamorpho/blob/main/certora/specs/Reverts.spec) that the roles are necessary to be able to do permissioned operations.

For example, The Certora prover verify in seconds the rule that makes sure that having the guardian role is necessary to be able to revoke a pending timelock.


- Example 2: Timelock
MetaMorpho features a timelock mechanism that applies to every operation that could potentially increase risk for users. The function detailed in the article defined in [[PendingValues.spec]](https://github.com/morpho-org/metamorpho/blob/main/certora/specs/PendingValues.spec) is verified to always return true.
In the end, the verification is completed by the Certora prover within a few minutes.


- Example 3: Liveness
The liveness properties ensure that some crucial actions cannot be blocked. It is notably useful to show that in case of an emergency, it is still possible to make salvaging transactions. The canPauseSupply rule in [[Liveness.spec]](https://github.com/morpho-org/metamorpho/blob/main/certora/specs/Liveness.spec) shows that it is always possible to prevent new deposits. This is done by first setting the supply queue as the empty queue and checking that it does not revert.
With this defined, the verification is successful.

These are only some examples of MetaMorpho’s verification. Find the full scope here: https://github.com/morpho-org/metamorpho/tree/main/certora


- Limitations
Despite the thoroughness of formal verification, it cannot guarantee absolute perfection or eliminate all potential risks associated with MetaMorpho.

Formal verification is effective within the defined scope of specifications and assumptions. Human input and interpretation, incomplete specifications, and bugs in the tools used can also impact the accuracy of results.
25 changes: 25 additions & 0 deletions documents/articles/2024_03_19-Warden-Finance-Joins-Morpho-Labs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Link: https://morpho.mirror.xyz/u5LcXGvHF0eZdtnDNIXXJszSohTOk45mxdmkj7dJ3QQ
Title: Warden Finance Joins Morpho Labs

By Morpho Labs
On 19 March 2024

We are thrilled to announce that Warden Finance has joined Morpho Labs, bringing years of experience building best-in-class risk and analytics solutions in DeFi.

Warden’s goal has always been to create a safer DeFi by putting powerful risk management tools in the hands of the community. Joining Morpho is the next step in playing a more significant role in enabling a more sophisticated and risk-managed financial system.

The team from Warden will focus their efforts on making Morpho Blue more accessible and transparent by providing powerful tooling for risk experts curating MetaMorpho vaults and advanced risk analytics for all Morpho users.

Starting with the Morpho Risk App V1 (https://risk.morpho.org/), Warden will develop a diverse set of risk dashboards, advanced market analytics, open APIs, and interfaces to curate MetaMorpho vaults.

- Supporting an Open Marketplace for Risk Management
Morpho Blue creates an open marketplace for risk management by externalizing it from the core protocol. Risk experts have the freedom to develop diverse strategies/vaults with any risk profile. Lenders can then choose strategies/vaults that best align with their preferences.

MetaMorpho exists to make curating risk-managed strategies easy. The protocol allows anyone to spin up an audited and formally verified lending vault using an open-source factory. These vaults allocate liquidity to various Morpho Blue markets and generate yield for depositors.

With MetaMorpho, the barriers to entry for risk experts are close to zero. However, Warden will reduce the overhead of building on Morpho Blue by providing effective open-source tooling that can be used by any risk expert seeking to or already curating MetaMorpho Vault including risk dashboards, advanced market analytics, and interfaces for vault curation.

The number of vaults available to users will increase as more risk experts join the Morpho Blue ecosystem. Without access to the transparent data, users may have difficulties assessing each vault. Warden will provide data to users so they can analyze the different risk-reward profiles and choose a vault aligned with their risk preferences.

- About Warden
Warden Finance started in 2021 (formerly known as Shippooor) and quickly became known for their advanced DeFi-native risk analytics and dashboards for Morpho, Aave, and Compound. The core team consists of a full-stack engineer, risk analyst, and ex-google software engineer with three to six years of experience building in DeFi.
46 changes: 46 additions & 0 deletions documents/snapshots/mip42.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
Link: https://snapshot.org/#/morpho.eth/proposal/0xaa8fa1f68664d92b1c8724f4f3b23cea4d9ea34ae1b5cbfb048218efcb04dfdf
Title: MIP42 - Gauntlet's vaults whitelisting

This submission proposes to whitelist Gauntlet vaults address to allow the transfer of potential $MORPHO rewards to their depositors.

As written in the forum on 7 March 2024, discussion related to that: https://forum.morpho.org/t/gauntlet-weth-prime-vault-whitelisting/495

Here was the discussion related to that:

- Introduction
This is a proposal to whitelist the Gauntlet WETH Prime Vault on MetaMorpho. The WETH vault will strategize to allocate supply of WETH towards liquid staking recursive yield markets.

For the initialization of this Vault, we will be whitelisting only the WSTETH/WETH market for supply.


- About Gauntlet
Gauntlet (https://www.gauntlet.xyz/) is a DeFi-native quantitative research firm specializing in risk management. We use battle-tested techniques (https://www.gauntlet.xyz/product/gauntlet-risk-for-defi-protocols) from the algorithmic trading industry to help protocols manage risk.

Gauntlet’s team of experienced quants are used to trading in milliseconds and will use their expertise to curate a series of MetaMorpho vaults on top of Morpho Blue and contribute to the sophistication of the Morpho Ecosystem. The lending vaults will give users a simple and optimal way to earn yield on their assets.


- Market Specifications
The Gauntlet WETH Prime Vault will be initially whitelisting only this market:
wstETH/WETH (94.5%)
We will also whitelist the below market once it is created:

New Market:
Collateral asset: WSTETH
Borrow asset: WETH
LLTV: 0.965
Oracle: Exchange Rate Oracle


- Gauntlet WETH Prime Vault
Symbol: gtWETH
Objective: The WETH vault will strategize to optimize supply of WETH towards liquid staking recursive yield markets.


- Vault Fee
We’re excited to share that the WETH vault performance fee will be 0% for the first six months of launch.

Whitelisting Vault Contracts
MetaMorpho vaults may receive $MORPHO rewards from supplying to incentivized markets on Morpho Blue. To allow the vaults to transfer these potential $MORPHO rewards to suppliers, we propose whitelisting our vault addresses. The vault addresses will be provided once launched.


The proposal was voted on and accepted on 11 March 2024.
36 changes: 36 additions & 0 deletions documents/snapshots/mip43.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
Link: https://snapshot.org/#/morpho.eth/proposal/0x74eb24c4310ba75989557af7cc3a4a4e19fe10b8e55371bd40e97df058a00291
Title: MIP43 - Incentives in apxETH/WETH market

This submission proposes to allocate a total of 150k MORPHO as incentives over a three month period to help grow the apxETH/WETH market, to be distributed alongside 75k BTRFLY from Redacted.

As written in the forum on 11 March 2024, discussion related to that: https://forum.morpho.org/t/redacted-morpho-blue-incentives-in-the-apxeth-markets/506

Here was the discussion related to that:

- Summary
Redacted intends to distribute $75,000 as incentives in apxETH/WETH markets over three months, through Re7’s curated vault.

We propose that the Morpho DAO handle this distribution and request that MORPHO tokens be included as additional incentives.


- Redacted x Morpho Blue
Redacted focuses on the development of DeFi products, including Hidden Hand, Pirex, and Dinero. These products are designed to improve liquidity, make governance processes more efficient, distribute incentives, and scale yield throughout DeFi.

Dinero is a decentralized liquid staking protocol built by Redacted on Ethereum, allowing users to stake their ETH and participate in the DeFi ecosystem while maintaining composability. Users can deposit ETH to mint pxETH, utilize pxETH within DeFi, deposit pxETH for apxETH to earn enhanced staking yield, or redeem for ETH at any time via the protocol or liquidity pool.

Unlike traditional lending pools, Morpho Blue allows Redacted to take a more targeted approach to incentivizing specific use cases. On Morpho Blue, we can incentivize a specific pair of assets with a strong use case that will help drive further adoption of our token. apxETH vaults fall into this category.

apxETH earns boosted staking yields, approx 8% APR or more. By launching and incentivizing apxETH/WETH markets, users can take advantage of the spread between the apxETH return and the borrow rate, to create a leveraged position that earns a multiple of yield.


- Proposal Details
We plan to distribute $75,000 in rewards in BTRFLY in the pxETH market over three months.

We propose that the Morpho DAO handle this distribution by integrating it into the Standardized method for distributing incentives on Morpho Blue markets.

The growth of such a market will benefit Morpho, therefore it’s prudent for the Morpho DAO to distribute MORPHO tokens over the three month period to help incentivize its expansion.

Should the proposal be accepted, we will send the aforementioned amount to morpho.eth.


The proposal was voted on and accepted on 16 March 2024.
38 changes: 38 additions & 0 deletions documents/snapshots/mip44.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
Link: https://snapshot.org/#/morpho.eth/proposal/0x3dcbba9f60c99cf5200372911ce11f8b60938fa2bed52c74dc9eca2996d5661e
Title: MIP 44 - Incentives in USDe and sUSDe markets

This submission proposes to allocate a total of 90k MORPHO as incentives over a three month period to help grow the USDe and sUSDe markets. The incentives would be split 7/12 and 5/12 between USDe/USDT and sUSDe/USDT, in line with Ethena shards distribution.

As written in the forum on 12 March 2024, discussion related to that: https://forum.morpho.org/t/ethena-morpho-blue-incentives-for-the-usde-and-susde-markets/510

Here was the discussion related to that:

- Summary
Ethena intends to distribute 7 shards per USDe/USDT per day and 5 shards per sUSDe/USDT per day for the upcoming Ethena epoch once vault goes live. Proposal to also cap the shards campaign at $50m.

We propose that the Morpho DAO handle this distribution and request that MORPHO tokens be included as additional incentives.


- Ethena x Morpho Blue
Ethena is a synthetic dollar protocol built on Ethereum that provides a crypto-native solution for money not reliant on traditional banking system infrastructure, alongside a globally accessible dollar denominated savings instrument - the ‘Internet Bond’.

Ethena’s synthetic dollar, USDe, provides the first scalable and stable crypto-native solution for money achieved by delta-hedging staked Ethereum collateral. USDe is fully backed transparently onchain and free to compose throughout DeFi.

sUSDe is the staked version of USDe which redistributes yield from ETH staking and perp funding. It increases in value similar to wstETH.

By becoming a collateral asset, Morpho users can loop the attractive yield profile vs stablecoins. This increases lending APYs on Morpho, making the lending protocol more attractive for deposits while generating fees for the treasury.

Looping USDe will also generate plenty of looping interest to leverage farm Ethena shards.


- Proposal Details
We plan to distribute 7 shards per USDe/USDT per day and 5 shards per sUSDe/USDT per day for the upcoming Ethena epoch. We propose Morpho incentivise these markets on the lending side as well.

Proposal to also cap the shards campaign at $50m.

We propose that the Morpho DAO handle this distribution by integrating it into the Standardized method for distributing incentives on Morpho Blue markets (https://forum.morpho.org/t/standardized-method-for-distributing-incentives-on-morpho-blue-markets/412).

Should the proposal be accepted, we will send the aforementioned amount to morpho.eth.


The proposal was voted on and accepted on 16 March 2024.
32 changes: 32 additions & 0 deletions documents/snapshots/mip45.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
Link: https://snapshot.org/#/morpho.eth/proposal/0x8b7b59a568e689549476ef7469660b1ae1c2e031c9aa45729f55658ce02cb556
Title: MIP 45 - Incentives in mTBILL / USDC market

This submission proposes to allocate a total of 60k MORPHO as incentives over a three month period to help grow the mTBILL / USDC market, to be distributed alongside 60k USDC from Midas.

As written in the forum on 15 March 2024, discussion related to that: https://forum.morpho.org/t/midas-morpho-blue-incentives-in-the-mtbill-market/522/1

Here was the discussion related to that:

- Summary
Midas intends to subsidize the USDC(mTBILL) market with 30k USDC, which will be distributed to early entrants over the first 3 months, starting on March 18th, 2024.

We propose that the Morpho DAO handle this distribution and request that MORPHO tokens be included as additional incentives.


- Midas x Morpho Blue
The mTBILL token is a fully permissionless ERC-20 token, and the yield is generated through T-Bills. It’s fully composable with yield sourced from myriad DeFi services and applications. We feel these features (low-risk, stable, and composable) make mTBILL an ideal collateral asset.

Unlike traditional lending pools, Morpho Blue allows Midas to take a more targeted approach to incentivizing specific use cases. On Morpho Blue, we can incentivize a specific pair of assets with a strong use case that will help drive further adoption of our token. USDC/mTBILL Morpho Blue falls into this category.


- Proposal Details
We plan to distribute $30k USDC in the USDC (mTBILL, 98%, IB01/USD, AdaptiveCurveIRM) market over three months.

We propose that the Morpho DAO handle this distribution by integrating it into the Standardized method for distributing incentives on Morpho Blue markets.

The growth of such a market will benefit Morpho, therefore it’s prudent for the Morpho DAO to distribute MORPHO tokens over a three-month period to help incentivize its expansion.

Should the proposal be accepted, we will send the aforementioned amount to morpho.eth.


The proposal was voted on 20 March 2024 but did not reach the required quorum.

0 comments on commit 6eb5051

Please sign in to comment.