Moving Forward with Angle Post Euler Hack

Thanks for your point here.
So, to be sure I understand, you’re essentially suggesting to backstop agEUR not using only the leftover collateral but a mix of ANGLE tokens and USDC.

The situation you’re describing though where arb bots buy cheaply off the market for less than 1 unit and redeem for the protocol for 1 unit would still happen in the situation you describe I believe.

Imagine the DAO votes to arb the agEUR or to backstop with only USDC or a mix of USDC and ANGLE tokens, then some smart arbitrageurs could statistically arb agEUR (buying it for less than 1€ in the market), and sell back when the protocol re-opens the gates. This would be non atomic and less direct but still a profit for arbitrageurs, and I don’t think there is a way to circumvent this given of how it’d be done structurally.

Hi,

I like @alaCarte ideas, I also think there are a lot of possibilities.

We should consider each option in our proposal even agEUR=HA=SLPs / agEUR=HA=SLPs > USDC HAs=sanUSDC_EUR / agEUR > HA=SLPs > USDC HAs=sanUSDC_EUR .

“Allow sanETH, sanFRAX, and sanDAI holders to withdraw from the protocol at 1:1 with their assets from the DAO holdings” : I also think that others sanTokens should be treated differently than sanUSDC / USDC HAs. I share the idea that we could also consider using the Angle token.

But first, we might focus on the Euler case, yesterday Euler exploiters sent their mail to Euler Deployer and they are probably discussing something we don’t see on the blockchain anymore.

We must wait a return from Euler before starting any proposal procedure.

1 Like

I have been waiting to post my thoughts until there was more clarity and I had time to think things through.

First off, I have been involved with ANGLE since shortly after launch, and have plenty of skin in the game. Whatever solution we decide on, it is important to me that it allows the protocol to continue operations if possible. A lot of hard work has been done to get us here, and I believe real value has been built which would be silly to throw away.

Since the most important aspect right now is to focus on seniority of the different tokens, I will focus on that. Given that I wish to see the protocol continue to operate, it’s imperative that agEUR has it’s peg restored. So to me, agEUR not held by the DAO or the team should be most senior. HA’s are not a big part of the picture here so I have no issue with having them be next in line, especially since this closely aligns with the documentation. That leaves the SLP’s. Because the lost funds were related to the AMO’s being done with USDC collateral, I believe the sanUSDC holders should be at the bottom. The capital provided to sanDAI, sanFRAX, and sanETH is still within the protocol, so I don’t think it is fair to impair those pools equally to sanUSDC. If there is still a shortfall after zeroing out sanUSDC, the other sanTokens should take an equal hit until the protocol is fully collateralized again.

In summary, I think the most fair and consistent with the documentation way to assign seniority is agEUR > HA’s > sanFRAX/DAI/ETH > sanUSDC

We should create a debt token for affected sanToken holders to represent their share of lost funds which would be redeemable at face value if the hacker returns the funds, and if he does not, the debt tokens would be repaid from protocol fees over time.

Another possibility to really consider is to try to raise funding by selling ANGLE tokens from the treasury to recapitalize the protocol, and to pay off debt token holders.

To close, I know people want a quick resolution here, but I think it is of utmost importance to think this through very carefully, with ample time for discussion and community engagement, before we make any binding decisions. I will continue to think of other possible ways to move foreward and I hope everyone else does too. I don’t think Angle’s time is up, we are just getting started!

5 Likes

I got intrigued by this remark, and it could be a fair assumption. It might warrant further analysis, but I believe the assumption that 90% of agEUR are arbitrage trades is an overshoot.

I looked at agEUR DEX trades when agEUR traded around 0.6-0.7. I observed that the majority of trades were <1k, with very few above 5k per page. While there were some large movements yesterday, they only involved 500k-1m agEUR, and they weren’t purchased at 0.6. The largest trade of 500k EURS for 530k agEUR yielded a maximum profit of 30k.

The Angle dune dashboard confirms that this arbitrage is difficult- look for “where are the agEUR”. There are still in the 3EUR pool (Curve) and agEUR-USDC (Uniswap) but both are imbalance with only few liquidity left on the other side.

1 Like

You need to do small trades because of slippage, but unless coingecko figures are wrong, >700% of ageur’s market cap was traded since the hack…

I understand your concerns about the current situation, but I must point out that your conclusion is not based on factual evidence. The increase in agEUR volume does not necessarily indicate that more than 90% of agEUR changed hands at a depeged price after the hack, and everyone just bought at $0.6 to make a 2x. Volumes represent both buy and sell orders, not just buy orders. A lot of users decided to take out their LP (eg. on Curve) at a loss in a different euro stable. It is also important to note that passing the losses to the party that accepted the risk, the sanLP, is not about “reking” them, but rather acting in line with what stated in the docs well before the hack.
Furthermore, maintaining a pegged agEUR is crucial for the protocol’s credibility and ability to attract trust from new participants. Without it, the protocol risks losing its reputation as a reliable and trustworthy EURO stablecoin, which will undoubtedly impact its long-term success.

1 Like

I see multiple post from @Tube asserting things that IMO are incorrect. Some of which have already been addressed by others, but here are my thoughts on it.

First and foremost. The idea that agEur/Angle can survive without restoring peg. agEur is a stablecoin. When it’s not stable it loses its function and therefore Angle protocol loses its function. What is the purpose of a stablecoin protocol if it can’t make its coin stable anymore, even though there’s backing to do it? Who’d ever want to use such a protocol in the future? As a side effect, if peg would be lost forever, also Angle equity would go towards zero as it’s equity for a protocol that has no function anymore.

Second. The idea that agEur could be backed a la FRX. In theory this could be a possibility. However, if i’m correct Frax is going towards full collaterization and they do so for a reason. So I don’t know if using FRX is a good example. But assuming we’d go for partial collaterization the question is what % the collateral would need to be at. Probably between 80-90%. The remaining 10-20% would then need to be backed by something else, but I don’t see how a debt token, as suggested, can be used for this. A debt token has some value, but as long as there’s debt not nearly at the equivalent of the debt it represents. Maybe I’m seeing this wrong but I can’t find a way in which using the debt token as collateral to prop up a stablecoin will work.

Third, the assumption that most agEur holders will have bought below peg because volume is 600+% of MC. Of course there will be traders that bought agEUr below peg speculating on it becoming pegged again (or at least want to sell closer to peg). What is not taken into account however are the arbitrage bots that instantly buy/sell between different pools/chains to take advantage of price difference. By just glancing at the buys and sells it’s easy to see these bots account for massive volume (in $value). I wouldn’t be surprised if these kind of bots account for the far majority of all volume.

Fourth. Assuming that 90% of agEur must have changed hands, because of increased volume is based on failed reasoning. Following this failed reasoning we should also assume that 90% of btc would have changed hands in the last 180 days, because total BTC volume traded in these 180 days is more than 600% of marketcap. There’s no data supporting this. In fact, it’s the opposite for BTC, we know BTC didn’t change hands this much. How much of agEur is still held by wallets that had it before peg can only be determined by on chain analysis, not by following this incorrect logic.

Fifth, the following statement is false on multiple grounds and is a clear rhetorical trick by misrepresenting or exaggerating the facts. @Tube stated: "Do we want to rekt sanLP providers saying “you should get 0 so that those who bought agEUR at $0.60 can 2x”. The statement suggest that everyone/a lot of people have bought agEur at $0,6. This is evidently untrue. Price was this low briefly and most people, also that bought below peg, will have bought much higher. This statement also assumes that there are no “old” agEur holders that bought before peg, which as I explained above is unclear. Finally, thinking that you can do a 2x from $0,6 is exaggerating potential PnL. After repeating the false 2x claims, @Tube calls people that bought below peg vultures. I don’t know if the writer is aware of this, and I am not judging him for stating his opinion as he has clearly every right to do so, but he’s manipulating facts and suggesting that everyone that’s doesn’t support his view is morally flawed. He’s suggesting that there’s only one ethical solution. By his own admission it’s also the only solution that’s closely aligned with his own financial interest, so we should see his comments also in this light.

And finally, regarding people that bought below peg. What @Tube doesn’t seem to acknowledge is the function these buyers have in the market. It’s only thanks to these buyers a lot of sellers will have been able to sell for prices between $0,8-$0,95 since the hack happened. Without these buyers a lot of people would have suffered much bigger losses. These buyers provided exit liquidity for these distressed sellers. They do so at a risk that they lose money, while speculating that they’ll be rewarded with gains. There’s nothing wrong about this. It’s just how markets work and no reason to handle these buyers differently than any other agEur holder.

Disclosure: I sold agEur after de-peg at a big loss and later rebought some, meaning I will have a small gain when agEur re-pegs. I rebought agEur after publication of the sheet with holdings and reading all documentation about the protocol. My analysis is that any solution that doesn’t bring agEur back to peg will be a betrayal (see my rhetorical trick here ;)) of protocol principles and vision and will lead to end of Angle. I expect veAngle-voters will want to keep the Angle protocol, (successful, profitable and with a good reputation) alive.

1 Like

Hello,

Since the good news, I think we need to reconsider our previous ideas.
As we know Euler has been refunded by exploiters ~ +50% of funds.
We also need more time to be fixed on the situation (I hope exploiters will send the remaining funds).
Now that half of exploited funds will be recovered, here’s my point of view ‘at this moment’ :

agEUR=sanFRAX=sanDAI=sanFEI=sanETH=HA > sanUSDC_EUR=USDC HAs.

Only USDC HAs / sanUSDC involved in USDC lending strategy can cover the ‘loss’ and could be impacted to restart Angle. However we need to see how we can compensate them with some ideas I saw in this topic :

1 - We can create a debt token if remaining funds will be retrieved from Euler hack.
2 - We can share a part of future protocol revenue to them.
3 - We can use Angle token as a compensation.

1 Like

Hello everyone,

As i write these lines, it seems ~ 75% of stolen funds have been refunded. This is such a release, and there’s hope Euler gets almost all funds back.

Considering the current state, it seems logic for me that scenario number 2 is the best way to manage the ~ 2.5m shortfall : agEUR = HA > SLPs > sanUSDC_EUR , with a debt token for affected sanToken holders.

Hopefully, we can move on without anyone being affected.

2 Likes

We wrote a vote proposal for something that could be left to vote on Snapshot. Fee free to give your opinion about the text as it is, if some portions should be rephrased, what option you’d prefer, and the timeline you’d follow.

In the absence of outstanding debate, anyone could create the Snapshot vote in the next 48 hours.


TL;DR

This is a vote proposal to decide on whether agEUR holders should be considered senior over other protocol stakeholders (Standard Liquidity Providers, Hedging Agents) in the Angle Protocol Core module when there is a loss that is not automatically handled by the smart contracts and the voted parameters.

In the specific case of the Euler hack and the potential losses faced by the protocol’s Core module, deciding on agEUR seniority would mean that once the protocol reopens its peg should be defended using the collateral leftover in the protocol, potentially at the expense of other protocol stakeholders (Standard Liquidity Providers and Hedging Agents notably). Taking this vote will give the DAO the foundation to move forward with next steps following the Euler situation.

Context

On March 13th 2023, Euler Protocol suffered a $197m hack, which led Angle Protocol to lose the 17.6m USDC it had lent on Euler at the time.

Prior to the Euler hack, the Angle Core module had a Total Value Locked (TVL) of approximately $36.1m and the protocol had holdings of different assets spread across various chains worth ~$1.0m. 17.3m agEUR had been minted through the Core module.

In addition, the protocol had:

If the funds from the hack (17,614,940.03 USDC) were to be definitely lost, the value of the DAO holdings would be down to approximately $19.5m.

In this case, the amount of reserves in the Core module would become inferior to the value of the claims of agEUR holders, of Standard Liquidity Providers, and of the remaining hedging agents in the protocol, as a whole. Should agEUR be considered senior, as the value of the assets of the protocol remains superior to the value of the agEUR issued by the Core module, the protocol could defend its peg using its collateral reserves.

This page has more details on the state of the protocol after the hack.

As of the 28th of March 2023, a portion of the funds of the hack has been repaid by the hacker. Yet, it is still uncertain how this will route to Angle DAO and with what timeline. Even if a proportional amount of what has been repaid by the hacker was given back to the protocol through Euler, the protocol would still be in a loss situation.

Following the hack, the main features of the protocol were paused by its emergency multisig.

Due to the hack and to the protocol being paused, agEUR has lost its 1€ peg. As it stands, if the contracts were unpaused with the pre-Euler hack parameters, it would lead to a bank run situation as agEUR would be redeemable 1-1 against reserve assets, and sanTokens would be redeemable at 1-1 at first, then with a slippage once the collateral ratio is lower. In the end, the last users would be left with nothing as the smart contracts would likely have nothing left to redeem assets against.

Some have suggested that instead of running into this bank run scenario, the remaining assets could remain frozen and be redistributed differently according to what is voted. The key question that we must decide on, regardless of the outcome of the Euler hack, is to determine the order of “seniority” among the different token holders of the protocol.

The DAO needs to decide this question not only for the Euler situation, but for all potential such events in the future where a loss accrues in the protocol’s Core module and is not automatically taken into account by the smart contracts or the voted parameters.

Vote

The uncertainty from the Euler situation may last for quite some time (about the distribution of the repayment proceeds by the Euler DAO and subsequent repayments by the hacker), so the vote here is to clarify the situation for all Angle Protocol stakeholders.

This vote is done here in the context of the Euler hack where the DAO may potentially experience a loss, but the intent of this vote is to be a general resolution about the seniority of holdings in the protocol’s Core module.

While, following the Euler situation, a lot of detailed scenarios have been discussed on Angle Governance forum and on Discord, the point of this vote is to decide whether agEUR must be considered senior in the Angle Protocol’s Core module over other protocol stakeholders (Hedging Agents, Standard Liquidity Providers) when there is a loss that is not automatically handled by the smart contracts and the voted parameters. In the context of the Euler hack, seniority for agEUR holders would mean that if and when the protocol’s Core module reopens, agEUR peg should be maintained using the available collateral reserves in the protocol.

Implementation and next steps

This vote should not be followed by any immediate action on the protocol. Because this vote is about principles rather than implementation, any plan to solve the current Euler situation if the loss stays as it is would still need to be discussed by the DAO and abide by the foundation this vote provides regarding seniority.

For the specific Euler case and the current potential loss faced by the protocol, conditions under which the protocol should be reopened would need to be discussed and addressed in future proposals and votes. Based on the outcome of this vote, and should the protocol loss remain as it is (with nothing from the hacker redistributed to the protocol), there could be a lot of different scenarios to consider to solve the current situation.
In the case where agEUR is voted as senior, there could be discussions on the rest of the waterfall, with for instance ideas on whether some Standard Liquidity Providers should have seniority over others, or whether there should be some form of preference for governance token holders in a subsequent breakdown of funds. If agEUR is not voted as senior, the same considerations could arise around the levels of seniority of SLPs or HAs.

For this vote, and for future discussions, there are already some places in the docs that refer to this kind of situation:

In all cases, there would also need to be discussions on how to technically implement the next steps that would have been chosen.

Voting Options

  1. For agEUR holders seniority over other protocol stakeholders in the Angle Core module

    For establishing agEUR seniority over any other assets of Angle Core Module when there is a loss that is not automatically handled by the Core Module’s smart contracts and the voted parameters. In particular, this means that the agEUR holders would be senior to other protocol stakeholders (including Hedging Agents and Standard Liquidity Providers).

  2. Against agEUR holders seniority over other protocol stakeholders in the Angle Core module

    In this case, specific discussions would need to be held to see how to distribute a loss among protocol stakeholders (whether agEUR holders, Hedging Agents or Standard Liquidity Providers) whenever a loss that is not automatically handled by the Core module’s smart contracts and the voted parameters accrues.


[Disclaimer - This vote proposal has been written by Angle Labs. Angle Labs holds agEUR and veANGLE tokens, and its members hold sanUSDC_EUR, agEUR, sdANGLE and veANGLE]

2 Likes

Why launch a proposal in 48 hours if certain funds are currently reversed at Euler Multisig ?
it wouldn’t be better to wait for an announcement from Euler to get more information ?

Exploiter’s adress are still distributings some funds (he said it himself that he was taking maximum security and that it could result in a delay).

Hopefully in a few days Euler will recover the remaining funds (~82% currently) and make an annoucement about the outcome so we can make a proposal accordingly.

The intent of this vote would be to be of general purpose for Angle, it’s more to make a statement than something else.

On the Euler specific case, in the time where funds are not repaid or at least where we have no idea how and when these will flow back to the Angle Protocol, people would still get the confidence that agEUR should go back to peg at some point.
And on this as well, as stated in a proposal, should the loss stay as it is (with no funds given back), then there would need to be further discussions for the rest of the waterfall. I agree that it’d be hard to move forward at this point with no clarity on the Euler side.