Development Update (04/07/23)

Introduction
This report is the first in a series designed to provide development updates and source feedback from the DAO ahead of the launch of Euler v2. It also outlines the development of new protocols being developed by Euler Labs designed to utilise or otherwise support Euler v2.

The mission for Euler is to build an integrated suite of customisable and permissionless protocols that, together, provides users with the highest performance environment in which to exchange value across all of decentralised finance.

The first of the protocols designed to support this mission is a new type of primitive and public good called Credit Vault Protocol (CVP), where users can create and deploy their own flexible Credit Vaults (CVs) in a permissionless manner. CVs will be permissionless to create, highly customisable by the creator, and can be used as building blocks to construct a wide variety of sub-protocols.

To showcase the flexibility and power of this protocol, we propose to develop three new sub-protocols on top of the CVP:

  • Euler v2 - a new risk-averse base lending and borrowing protocol other protocols can inherit liquidity/yield from
  • Isomorph* - a new synthetic asset protocol, initially supporting both USD and ETH denominated stablecoins
  • Levr* - a new decentralised exchange and oracle protocol tightly integrated with Euler

*final name to be determined. More information on each of these protocols will be provided in future development updates. The focus of this report is to give a high-level outline of the CVP and its purpose in supporting the development of Euler v2. Any feedback or suggestions at this stage would be much appreciated.

Credit Vault Protocol
The Euler V1 core was flexible and efficient, but it was monolithic. Adapting it to all the possible use-cases and products that people desired was complicated. The interdependent nature of the markets left little room for experimentation, and the mechanisms for third-party integrations were limited.

We have distilled the core functionality required for a lending market, or really any credit-based market, into a minimal specification called the Credit Vault. These vaults are standard ERC-4626 contracts (see erc4626.info) that implement a small additional interface for interacting with other vaults via the Credit Vault Protocol (CVP).

The CVP is a permissionless smart contract based on the original Euler BaseLogic and Exec module that will be the foundation for, among other things, a rebuilt Euler V2 lending platform. However, we consider the CVP to be something of a public good, and believe it can be a common substrate for other teams and products to build upon, creating synergistic benefits for the entire DeFi ecosystem.

In addition to vault mediation, the CVP contains the functionality required to build flexible products, both for EOAs and smart contracts. Here are some of the benefits of building on the CVP:

  • Batching. Multiple operations can be performed within a single batch operation, even those that concurrently affect multiple vaults. This is more convenient for UI users (no need for smart wallets), more gas efficient, and allows deferring liquidity check until the end of the batch (for flash rebalancing, setting up leveraged positions, etc).
  • Simulations were a prized feature of the Euler V1 UI. The CVP exposes the optimal interface for simulating the effects of a set of operations and pre-visualising their effects in a UI.
  • Sub-accounts were also a widely appreciated feature of Euler V1. They allowed users to create multiple isolated positions within their single parent account, and easily rebalance collateral/liabilities between them (no approvals needed). The CVP will allow users of any participating protocol to use sub-accounts, without requiring any special logic to be implemented by vaults.
  • Operators allow users to attach external contracts to act on behalf of a sub-account. This is a generalisation of the E/DToken approval system and will unlock powerful functionality, even for EOAs. We have sketched out many possible use-cases to ensure that this system is fully general. For example, stop-loss/take-profit/trailing-stop/etc modifiers can be added to positions, or entire layered position managers such as Morpho can be built on top.
  • The protocol deliberately doesn’t enforce specific properties about the assets being used as collateral or liabilities. Protocol users can therefore create vaults backed by irregular asset classes, such as NFTs, uncollateralised IOUs, or synthetics.
  • As well as the primary liquidity enforcement interface, there is a set of optional hooks that vaults can implement such as a market status check. This allows vaults to enforce global-concern limits such as supply caps. These checks can also be deferred so that transient violations that are gone at the end of the transaction do not cause a failure.
  • A common language for liquidations. If vaults choose, they can implement a core liquidation interface that will allow them to rely on an existing network of liquidators to keep their depositors safe.
  • The CVP has been carefully designed to support nested vaults without exposing a reentrancy-based attack surface. This will allow Credit Vaults to be used as the underlying asset for other Credit Vaults. Among other things, this will provide the basis for a “base yield” feature of Euler V2 where low-risk assets can optionally be used as components of higher-yielding products.

As well as providing the above features to a common base ecosystem, their re-use also keeps a substantial amount of complexity to be kept out of the core lending/borrowing contracts, leaving them free to focus on their differentiating factors such as pricing and risk management.

Given the consolidation and network effects of lending markets, we feel that the most realistic path to unseating incumbents is an open base layer protocol that a community can be built around. Euler will lead by example by creating a standout platform on top of this base, and the DAO and token holders will have the advantage and benefits of managing the largest liquidity pools on this base, while promoting their repackaging into different third-party products that leverage the CVP infrastructure, common liquidator/keeper network, and Euler V2 base rates and liquidity depth.

Timeline
Much of the code for the CVP has already been written and is now undergoing an internal audit in collaboration with various security partners. There is no definitive timeline for launch, but we expect to release the code for public review and further auditing well ahead of any initial deployment.

Partners
We would love to get feedback from the DAO and support identifying potential users of the CVP beyond Euler. In particular, it would be good at this stage to begin discussing potential use-cases of the CVP with community groups and other builders, such as https://twitter.com/erc4626.

7 Likes

I am now… a small community member.
Yes, you are all rekt until I sell my smol bag.

Great to see the new ideas and action! Also, love to see that the motivation of @euler_mab and most of the team haven’t faded. I bet it has been fking hard. Overall, glad that things turned out very o-k at the end <3 Fine, enough pleasantries… To start with, I am no product guru, don’t have real company experience, and yadayada - so take my comment below with a grain of salt.

Once more: I am not a dev. I am not a product manager. Just an observer.

Euler is in a fine position right now, whereas $22M in cash USDC, being about 50% of the RFV if we were to say so. Hence, if I counted right, the current price level seemed appropriate to me. With about $1.5M per Q burn rate, that’s decent enough to have cash to launch at least 3 different pivots over 3 years (not in total, consecutively I mean) with aggressive spending, an aggressive team size and many audits. Good spot, all pretty much bueno. But it doesn’t mean spraying and praying. Should really aim at one shot, because after the first shot (or two max) even the dev sentiment would start decaying. Which is very natural, nothing wrong with that.

Intro over, sorry for making it too long.


As such, let’s embark onto what was given:

  1. lending protocol
  2. AMM-oracles of a sort
  3. synthetics stuff

First of all, this seems like a lot! I understand that they all might be using the core same tech under the roof, but it’s still about delivering products, pushing them, making them all work… even with infinite funding and infinitely good UX, this is still hard to pull off. Unnecessarily too much for DeFi. If you focus on too many things at once, you will nothing executed well.

Again, if the audits for all these different things are not required, it’s just unnecessarily too much to pull off so many things at once. In time, may be. For example: Curve AMM → crvUSD stable + lending coming up. Or: Frax stable → Frax AMM → Frax LSDs. Or Aave lending → GHO stable + RWA. Mind you, there were approximately 1+ year differences between all those. And only after the first piece has really hit traction and grew. Not all the pieces from the very beginning at once.


Link to Medium (that is Part 1 in there, you can ignore the rest, not shilling)

I can say the same looking at Gearbox copycats, who say “we can do even more leverage things than them” but end of the day, it ends up being the same but worse. Not due to their fault, but due to the market. People wanna lev farm stables & eth, and leverage trade. The other exotics are fun and cute, but that’s about it. It’s just “cute”. Similar to how Euler when being live and big was mostly 95%+ in main assets like ETH USDC DAI - and the rest were (i) not super safe (ii) weren’t used. Which is due to no fault of the protocol or the team, just optimizing for tiny use cases isn’t the way imho. Similar to having Milady as collateral, or long-tail assets as collateral. Is fun, is marketing, but marketing can be achieved much easier than having to re-do the protocol to do everything.

So out of the three, what seems to be best?

  1. Euler was a lending protocol before, so I understand the desire to do that again. I am not sure it’s really going to play out given crvUSD lending being live now and looping via stETH is now being done everywhere, or if Ajna does anything, and so on - but at least I get why wanting to re-launch a better version of what was there before. Maybe sentimental value. Lending: O-K idk.
  2. AMM and oracles: I am not sure a new exchange, whatever it is, will have any impact at all. After Uniswap V4, and many others doing AMMs RFQ etc. - I feel like this might be a bad focus. I assume it was EulerSwap that was hinted by Michael in 2022, and the dream of having AMM + oracles (like Uniswap was prophesied ages ago and never came to be, yet or ever I don’t know). I feel like for this, the experience, the UX, and everything - just have to be so so different. AMM & oracles: no, pass.
  3. Synthetics: yes. Whatever it is, it could be new. Different. Will also likely allow for some looping likely via liquidity and so on… I would put my focus on this instead of the 1 & 2. Don’t even need to hear the details here, I jut see that competition in this part is small, and that this segment is also quite interested and demanded by users & protocols. Small push can yield big results.

Anyway, I apologize for the rudeness of jumping in and “giving my uneducated opinion”. In no way am I an expert. Just as a non-builder, I see builders getting very excited to do many things at once (is cool, fun, energizing) but as a user - I never see these things actually work.

It would be bad to see a year being spent (and thus about $6-8M which is 30% of treasury) on pushing so many complex things at once, and not really going deep into any of them. If the choices above are actually choices (I doubt that’s the case, but anyway) then would vote for #3. After all, it’s good to be in the stagnant land of no-action for some time & build (like post-hack) but there is also a limit where that situation turns into a full stagnation, and even the devs get upset. Don’t do that.

Choose one thing you like out of the 3 above, focus on it for half a year at least pushing it, and then maybe pivot into 1 or 2. Don’t do them all at once. Cheers, big brains <3

3 Likes