keep-network / tbtc-dapp

Deposit BTC and redeem TBTC
http://dapp.test.tbtc.network/
MIT License
33 stars 31 forks source link

Redemption: Allowing users to redeem all of their TBTC #316

Open JaviAnibarro opened 3 years ago

JaviAnibarro commented 3 years ago

TDT ID and preferred BTC address are needed in order to redeem your TBTC into BTC. But what happens if users have more than 10+ TBTC? does not that mean the process of this redemption will take a lot of time? Will not you consider to add a new function that allows the user to sweep all of their TBTC into the redemption process or queue at once without bot interference?

Like TDT AID(All IDs) or something?

Shadowfiend commented 3 years ago

The system doesn't really work this way. Deposits must be redeemed one at a time, since they are 1-to-1 correspondences to Bitcoin UTXOs, each managed by different signer groups. However, you can consider the tBTC system as a foundational piece that allows further items to be built on top of it. It maps some of Bitcoin's model to the Ethereum model used to represent the underlying bitcoin (UTXO = Deposit/TDT), and then allows layers to be built on top of it that can manage that complexity further.

There's certainly space here for a wrapper contract that batches redemptions to the same Bitcoin address---but ultimately each deposit's redemption process needs to be completed separately. Not too long after release the signers will probably be managing most of that process, since it's in their best interest. Just needs a few additional tidbits in the client.

JaviAnibarro commented 3 years ago

Yes batches of redemptions based on the address is the point I was talking about(automatic queue for redemption waiting for signer to complete the process), so the team already considering this part. The reason I created this because there’s no obvious sign which one is already redeemed and which one is not. Just imagining having 10+ TDT IDs and need to be redeemed but forget the unredeemed TDT ID.

Shall we close it?