Sunsetting Lido on Terra

Summary

Lido proposes to sunset operations on Terra Classic. If you’re a stakeholder of Lido on Terra, please read carefully to understand the implications.

Context

As UST and Luna death-spiraled, the native redemption mechanism was overwhelmed by capital seeking exit, and Luna hyper-inflated. This rapidly diluted the staking ratio of the network, threatened its economic security, and led to two consecutive halts and emergency patches. Today, only ~0.004% of the Luna’s supply is staked, ~26% of which is staked with Lido.

The disabling of delegations and the market module has rendered Lido on Terra largely inoperative. New bLuna or stLuna cannot be minted, and the transaction which allows the system to claim and handle rewards is unable to execute. As a result, unclaimed rewards are currently stuck in limbo.

Re-enabling delegations and the market module would return some functionality to the protocol, but seems unreasonable at this time, as the cost of an economic attack remains extremely low (around $10,000 at the time of writing).

The protocol’s permissioned set also faces significant challenges. Whitelisted operators such as Figment and Chorus One have already announced they would be shutting down their Terra Classic validators. How long other node operators will continue to support the network is uncertain and, should delegations be re-enabled, the inflow of even a small fraction of the current circulating supply could dramatically reshape the network’s active set. This would partially or entirely suppress the protocol’s ability to generate yield for its users, and put the protocol’s existence into question.

Finally, Terra’s validators and developers have either pledged their support to the new network or are considering migrating to other chains. As a result, it seems unlikely that Terra Classic will ever return to a normal state of operation.

Sunsetting Lido on Terra Classic

Given the circumstances, we propose to stop maintaining Lido on Terra Classic.

Smart-contracts could be upgraded to unbond all LUNAC and claim rewards. However, given the unstable state of the blockchain, there is no guarantee that contracts would operate as intended, nor that the upgrade wouldn’t cause further losses.

Instead, once a reasonable amount of time has been left for users to withdraw their assets, we propose to burn the keys to the smart contracts. It implies:

  1. Making all contracts non-upgradable,
  2. Updating the Hub’s configuration to make the contract owner invalid.
  3. Finally, shutting down the Terra UI,

Sunsetting stETH <> Anchor integration

For the same set of reasons, after a similar withdrawal period, we propose to stop maintaining the Anchor <> stETH integration.

The procedure is as follows:

  1. Shut down the Anchor integration UI,
  2. Stop the bot accruing rewards,
  3. Upgrade contracts to prevent bETH from minting.

Timeline

If the DAO votes in favor of sunsetting Lido on Terra, we propose to maintain Lido on Terra Classic and the stETH <> Anchor integration for a month after the vote ends. We may prolong the supported interval if it is required by the circumstances. Once this period is over, the UIs and all related infrastructure will be immediately shut down, and the protocol keys burnt. More time-consuming operations, such as upgrading contracts, will be completed thereafter.

Consequences

As of the passing of prop 29, Anchor has frozen most of its functions, but collateral withdrawal should remain functional.

  • For bLuna/stLuna holders

You may then unbond bLuna/stLuna, swap to another asset using a DEX (Astroport, TerraSwap and Loop Finance are currently functioning), or keep the tokens.

  • For bETH/bSOL holders

Please withdraw and unwrap any bAsset left on Terra as soon as practical. Helpful information is available in the following threads:

  • For node operators

Delegations from Lido on Terra will stop, and, if users request to unbond their tokens from the protocol, some Luna may be undelegated from your validator. All baseline requirements will be lifted, and you may keep your Terra validator running, or shut it down, at your own discretion.

We are putting guidelines together for validators wishing to end their operations, so that they can do so with minimal negative repercussions to themselves and the network.

Conclusion

We intend to submit this proposal to the DAO’s vote in 6 days, on the 14/06/2022 around 12AM UTC, with the following options:

A. Shut down Lido on Terra Classic and stETH <> Anchor integration using the proposed procedure.

B. Do not shut down/re-evaluate the procedure.

23.06.22 EDIT: The UI at Unbond | Lido is now working.

13 Likes

What do you think of this? The rewards can keep accruing to the hub - no need to un-delegate. They can be claimed at a future date when delegations and market module are enabled.

I am holding some stLuna, and have it in LP on Astroport. I’ve never bother with joining the forum as it all seemed straight forward however I have recently noticed this proposal as a follower of the Twitter account.

I have read this over a couple of times. Personally I am comfortable holding onto my stLuna but that’s under the understanding that it has been accruing rewards which, in pure token numbers based on yield to stakers who can access them, should be quite significant (current value is negligible but perhaps otherwise so in the future).

I see your reference to rewards being in limbo but I would like to have you explicitly clarify a couple of questions:

  1. is staked Luna currently accruing rewards, albeit currently inaccessible?
  2. if we keep tokens post wind down, will they be entitled to receive rewards later? If so how? and, if answer to 1 was yes, would they keep accruing?

My preference is not to shut down on Terra Classic, especially with proposals getting support that might put some strength back in to Terra. I note @dfunk’s proposal which is good and believe we should be supporting these.

Hi David,

Yes, it is.

This is practically impossible to guarantee.

There is a possibility that rewards could become claimable if the delegation and market modules were re-enabled and the blockchain returned to a more “normal” state. Without a UI, this would be done by calling the Hub’s UpdateGlobalIndex function, which triggers the handling and distribution of rewards. At this time, though, it seems unlikely that the legacy network will stabilize: most Terra Classic stakeholders, including numerous validators and TFL (on which a lot of critical infrastructure relies) are redirecting resources towards the new network.

The same goes for whether or not rewards will continue to accrue to the derivatives, it is possible, but not guaranteed. For example, whitelisted validators could shut down their operations, preventing the protocol from generating yield, or they could be booted out of the active set upon the re-enabling of delegations.

Thanks Spaydh

I appreciate the response.

Agreed, ultimate outcomes cannot be guaranteed.

However Lido bailing on Terra like this while staking functions are blocked effectively disempowers stLuna holders who want to be in a staked position. It would be fine if it was possible to unbond and restake.

To me there seems to be an implied moral obligation to try and do more than is proposed.
For eg can Lido prevail on the validator network to allow derivative holders to be restored to their original tokens without losing their staked status - it would require a special but appropriate exercise.

I agree, the situation is far from ideal, unfortunately there is little we can do to improve it, as we’re blocked by the state of the network itself, which is not something Lido can control.

“Prevailing over the validators”, in the context of blockchain, is akin to a coup d’etat, and is an attack against the network. The reason delegations are disabled is indeed because, with the low economic security of the network ($10k last time we checked), it would otherwise be very cheap for anyone to conduct such an attack. So yeah, that’s not something we’d even consider.

Afaik, with delegations disabled, the only acceptable way Lido could allow users to exit Luna derivatives while keeping their tokens staked would be to use Iqlusion’s Liquid Staking Module. Essentially, it lets any user or protocol turn a staked position ( X tokens delegated to a specific validator) into a non-fungible token which can be transferred. With this module, the Hub could tokenize its delegations and transfer them to users, pro-rata. Unfortunately, the module is still a WIP, might not be compatible with Terra’s version of the Cosmos SDK, and would require a major network upgrade to be deployed.

1 Like

Cheers.

By prevailing over the validators, I didn’t mean a network attack. I’ve miscommunicated if that’s how it’s being interpreted. This is an idea of good intent not malintent. The validators themselves have already demonstrated a willingness to intervene in the blockchain to protect their interests and could do the same to assist with ours.

What I’m suggesting is that Lido could negotiate with the validator network to enable a specific adjustment of positions as they relate to derivatives such as our bluna and stluna. This should be well within their capacity (and will since they’ve already manipulated the blockchain) and it would maintain the integrity of the current staked position as:

  • no one with intent to attack would be currently holding stLuna
  • the freeze on creating more stLuna has created an imbalance in favour of Luna already
  • those holding stLuna currently are motivated to hold their postion within staking as staked unbonded Luna (if validators enable adjustment)
  • it would allow those who want to exit the same opportunity as just unbonding their stLuna.

I don’t think this would need to be a complex exercise, just matching off direct wallet ownership of stLuna to a relevant quantity of staked and rediverting control of that Luna from the hub to the wallet. Supportable with a gov proposal.

I did not intend to portray your intentions as malicious, apologies if that’s what my phrasing led you to believe. What I meant to say was that they’re a difference between the social coordination of validators to defend the network’s interest, and the social coordination of validators to defend the interests of a subgroup of the network’s stakeholder (e.g. stLuna holders, a protocol, a whale…).

To my knowledge, the solution you are proposing cannot be implemented because:

  1. Validators would not agree to it, and we can’t/won’t coerce them into altering the blockchain. Afterall, if they agreed to change the blockchain state for Lido on Terra, then Stader, Prism and any other protocol affected by the disabling of modules would soon come knocking at their doors to ask for an equal treatment, which is not tenable and not how blockchain is supposed to operate.
  2. Even with a majority of the voting power, validators cannot alter the state of the blockchain in a way that goes against consensus rules (e.g. they cannot double spend coins or spend non-existent coins). In our context, I believe that would prevent them from successfully transferring ownership of the staked positions from the Hub to users.

From my understanding what you intend to propose is the sunsetting of Terra UI on Lido and burning the keys to the hub contract.

What would be the potential cost of keeping the Terra UI on Lido running? You can DM me if you’d like.

Thanks @Spaydh

All good re communications.

I hear your points re blockages to solving this. Yet I don’t think we can escape the fundamental reality that the validators have in fact already altered the blockchain - to the harm of innocent and valid users, for the benefit of their own interests. The correct response to the economic attack problem should have been for the validator set to acquire enough Luna to protect against an economic attack but in actuality an economic attack is a proper and rightful possibility on a block chain.

That aside, whilst I accept that Lido won’t be taking up this case, based on your correspondence, I would be interested if you could elucidate on how this approach goes against consensus rules. I’m not familiar enough with them to know and the examples you cite here don’t seem to fit our case as I understand it. (the different protocols is a non-sequitur to me as there’s a common problem here).

Separately I would be interested in your response to @dfunk’s latest question. It leads to possibilities that Lido isn’t considering or allowing the time to consider eg turning over control of the UI and hub to the community to run as a DAO.

Hey David, I think we’re strayed pretty far off-topic.

The proposal will be submitted to the DAO’s vote today, slightly later than originally planned. If it is passed, the current team will continue to maintain the protocol for a month after the vote ends.

I’m sure the DAO will be willing to consider a counter-proposal from another team or the community.

Ok Spaydh. Do you have a link to poll?

cheers

The snapshot vote has started and will be up till next Wed — please, make sure to vote!

https://snapshot.org/#/lido-snapshot.eth/proposal/0xe964fb2b0ad887673a0748b025c68a957a4b05b604d306bdc66125e7b758e524

As Kadmil pointed out, the snapshot vote for the proposal to sunset Lido on Terra is now live: https://snapshot.org/#/lido-snapshot.eth/proposal/0xe964fb2b0ad887673a0748b025c68a957a4b05b604d306bdc66125e7b758e524
The voting period will last 5 days, until June the 23th.

Note:

Terra community members have recently published a proposal to re-enable staking, while preventing the creation of new validators on the network for approximately 2 months as a precaution. The proposal can be seen here, along with the proposed code.

If successfully passed, staking will be re-enabled, which will allow Lido on Terra users to safely migrate their staking positions during the supported period, without forgoing future staking yields.

Our main concern with the proposed code stems from the decision to hardcode validator creation capability at a given block height. It is not guaranteed that a period of 60 days will be sufficient to stabilize the network. Should the blockchain still find itself a position of low economic security, akin to the time of the first halt, delaying validator creation might be needed, which would require halting and updating the blockchain. Leaving this decision to governance with a specific timeline to re-evaluate the situation perhaps would have afforded the system more flexibility.

Nonetheless, we are happy to witness such productive engagement from the community and we wish it will be successful in its endeavor to rehabilitate the Terra Classic network.

I just noticed the proposal re-enabling staking. This follows on from proposal 4080 passing which included creating an incentive pool for developers.
Surely these suggest that Lido is premature in it’s decision to abandon Terra Classic, if not in fact falsifying the premises of the sunset proposal?

I don’t think it does: economic security remains low, there is no guarantee that the set will be stable after the 60D period, the market module remains disabled which will continue to prevent rewards handling, most protocols on the legacy chain are unable to function properly and most of the devs have either resettled on the new network or on other chains…
Re-enabling the staking module will return some functionality to the network, save users from some degree of forced opportunity cost, and be a step in the right direction, but it is far from sufficient to consider the network to be in a “stable state of operation”.

1 Like

Updated the original proposal now that terra.lido.fi UI issues have been resolved.

The snapshot vote has passed:

https://snapshot.org/#/lido-snapshot.eth/proposal/0xe964fb2b0ad887673a0748b025c68a957a4b05b604d306bdc66125e7b758e524

The winding down of Lido on Terra will begin in no-less than 30 days, following the procedures detailed in the original post.

We are putting together resources for node operators who wish to shut down their Terra validators safely. They should be ready for release next week, or, in any case, well ahead of the protocol shut down.

2 Likes

Thanks for the update @Spaydh

Obviously I don’t favour the outcome but majority rules so on with the game. cheers

1 Like

Hi everyone,
I’d like to provide a final update on the Lido on Terra Sunset.

Following the DAO’s decision, a two month-long staged shut down process was organized. Lido’s NOM group and Lido on Terra coordinated validators to protect users from slashing during the shut down and communicated with the community to ensure users had access to step-by-step guidance on how to withdraw from the protocol.

The Lido on Terra UI has now been wound down, and the remaining bots and interfaces operated by Lido will follow shortly. The documentation has been updated and the deprecated pages will be replaced with a description and links to additional resources, including the DAO’s vote and a manual on how to withdraw from the smart-contracts.

Interacting with the protocol via the Command Line Interface may remain possible, but errors could lead to loss of funds. We have drafted a guide to assist users who wish to use the CLI to withdraw from Lido on Terra: GitHub - oldremez/lido-on-terra-cli. This manual does not guarantee the success or safety of the depicted procedure. Use at your risk, responsibility for damages (if any) resulting from the use of this manual rest entirely with the user.


3 Likes