[CHECKLIST] 💧Liquid staking
Overview
We want to integrate a liquid staking UI similar to Bifrost's https://bifrost.app/vstaking. This UI should allow users to specify an amount of tokens to liquid stake and optionally select the validator on the respective chain for nomination/delegated staking. The chains in question are Polkadot, Phala, Moonbeam, Astar, Manta, and ideally Tangle (de-facto liquid restaking token).
Vocab
-
Liquid staking/staked token (LST) is a token that represents some underlying staked token like DOT. An LST
tgDOTrepresents a stakedDOT. The core principle is that the underlying DOT is generating yield. - LST Parachain is where liquid staking occurs. Assets likely (initially until future integrations) need to be bridged into this chain to be staked. This is where LSTs will be unstaked.
- Target Chain is the chain where the asset that generates an LST originates from.
Checklist
- [x] Designs: https://github.com/webb-tools/webb-experiences/issues/272
- [x] #2328
- [x] #2333
- [x] #2336
- [x] #2334
- [x] #2381
- [x] #2383
- [x] #2384
- [x] #2394
- [x] #2435
- [x] #2444
- [x] #2365
- [x] #2366
- [x] #2446
- [x] #2450
- [x] #2517
- [x] #2519
- [x] #2522
- [x] #2527
- [x] #2528
- [x] #2541
- [x] #2568
- [ ] #2569
- [ ] #2578
Staking/Unstaking
- Consider using our bridge UI to fulfill staking/unstaking. In this UI, we can show the
DOT -> tgDOTfor stake andtgDOT -> DOTfor unstake. - We want to allow a user to select their validators. This is most similar to
bond & nominateon Tangle. Roughly the same process, we want to liquid stake and nominate validators on the target chain.- Can be done with a radio button and then selection modal.
- Show the price of the
tgDOTand the unstake/unbond - Show the unstake fee, show the unstake/unbonding time delay.
Unstaking requests
- Show all active unstaking requests, these will be represented by NFTs.
- List the time unstaked, the remaining time to unstake from the delay, the amount.
Validators
- Show the validators available for each network.
Governance (lower priority)
- Grab open governance proposals / data from the
Target Chain. This requires querying theTarget Chain's RPC. - Put all active proposals for voting in a table.
- On click each proposal show specific proposal voting component.
- On click vote w/ data, call vote
- [ ] #2382
For reference, here is the Liquid Staking usage guide draft: https://www.notion.so/webbtools/Liquid-Staking-Usage-Guide-213f810714bd4932a3a679e40fcf5afa?pvs=4
This issue is stale because it has been open for 60 days with no activity.
Closing this checklist since it's complete. I'll be leaving the 'https://github.com/tangle-network/dapp/issues/2618' issue as a standalone bug fix.