Accounting
Symbiotic allows for a majority of mechanics to be flexible, however, it provides strict guarantees regarding vault slashing to the networks and stakers as defined in this diagram:
Deposit, withdraw, slash, resolve lifecycle
A network can use flexible mechanics to keep its operator set state up-to-date, e.g., it’s convenient to use a conveyor approach for updating the stakes while keeping slashing guarantees for every particular version of the operator set:
- At the beginning of every epoch the network can capture the state from vaults and their stake amount (this doesn’t require any on-chain interactions).
- After this, the network will have slashing guarantees for one vault epoch duration, so it can use this state at most for one vault epoch.
- When the epoch finishes and a slashing incident has taken place, the network will have time equal to the vault epoch duration minus the network epoch to request-veto-execute slash and go back to step 1 in parallel.
Conveyor approach
Epochs
The size of the epoch is not specified. However, all the epochs are consecutive and have an equal constant, defined at the moment of deployment size. Next in the text, we refer to it as .
Definitions
- balance - a pure balance of the vault/user that is not in the withdrawal process
- - a current epoch
- - withdrawals that will be claimable in the
Constraints
-
- a total amount of the collateral that can be slashed at the moment
-
During withdrawal:
-
During deposit:
-
During slashing:
-
- claimable
-
- slashable and not claimable
Deposits
Any holder of the collateral token can deposit it into the vault using the deposit()
method of the vault. In turn, the user receives shares. Any deposit instantly increases the balance of the vault.
Withdrawals
Any depositor can withdraw his funds using the withdraw()
method of the vault. The withdrawal process consists of two parts: a request and a claim.
Consider the user requests the withdrawal at . The user can claim the withdrawal when the ends. Hence, a withdrawal delay varies from to . Such funds are immediately reduced from the balance of the vault, however, the funds still can be slashed. Important to note that when the ends the funds can’t be slashed anymore and can be claimed.