Withdrawal

Withdrawal Queue

The withdrawal process follows a First In, First Out (FIFO) queue. User withdrawal requests are locked in and executed in the order they are completed. Once a withdrawal request is submitted, it cannot be canceled.

Withdrawal Mechanism

When a withdrawal request is received, the Aspida protocol evaluates it against the available ETH balance in the contract:

If the withdrawal request amount is less than the available ETH balance, the withdrawal operation will be immediately confirmed.

If the withdrawal request amount exceeds the available ETH balance, it triggers Withdrawal Strategies.

During this period, if the available balance within the contract meets the withdrawal request, it is prioritized without waiting for the completion of the Node Withdrawal. This ensures the fastest possible processing time for user withdrawal requests.

The Withdrawal Strategies prioritize on:

Exiting from Lido:

  • Strategy Module will initiate unstaking stETH from Lido or Eigenlayer (in the case of interacting Eigenlayer strategy). The unstaking process occurs on Lido and is subject to Lido’s withdrawal time.

  • Once the withdrawal is completed on Lido, a transaction is initiated to claim ETH and automatically deposit it into our core contract for the requested withdrawal request in the queue to be claimed.

If stETH in the reserves are fully unstaked from Lido and still unable to meet the Aspida’s withdrawal request, exiting from Native Staking will be initiated:

Exiting from Native Staking:

  • When exiting from Native Staking is initiated, Aspida’s validators will start the validator exit process. The next step is waiting for the Ethereum Validator Exit Queue. Once the Exit Queue is satisfied, the validator’s status becomes “exited”, during which the validator still CANNOT withdraw funds due to a slash check.

  • After 24 hours, the status will change from ‘exited’ to “withdrawal_possible”, which means it’s truly out of the system and is permitted to move funds.

  • Validators will receive the withdrawal fund when the status changes from “withdrawal_possible” to “withdrawal_done”, which will enter into unstaking withdrawal queue. The longest wait time in this queue is 9 days.

  • Aspida will receive the withdrawal fund once Validators complete these processes, then Aspida users can initiate a claim transaction to retrieve its fund.

To summarize, if there is enough ETH in the reserve, users’ withdrawal will be immediate, otherwise, the normal withdrawal process (from request to claim fund) will be initiated and takes a approximate 1-8 days.

Slashing

When a node undergoes withdrawal, potential network slashings may occur. In the event it happens, the protocol calculates the amount based on the incurred slash quantity during the withdrawal and ensures that the user's exchange ratio remains unaffected. This optimization guarantees the protection of user assets.

*Special Situation: In the event widespread network slashing occurs, an emergency plan to halt withdrawals will be initiated.

Last updated