-
Notifications
You must be signed in to change notification settings - Fork 23
Description
In BMC, we'll need to support 3 kinds of swaps so far:
- P2P swaps
- Auction swaps
- Sequential swaps
Only P2P swaps make sense with RGB20, the rest are for RGB21.
Due to how RGB works, if an issuer wants to sell multiple items in a collection, they'll need to create a new UTXO, and then assign the token change to a new witness UTXO. So, items can only be sold sequentially, not out of order, since the change needs to go to a new UTXO.
Later if a specific RGB21 asset is desired, they can be put up for sale by individuals in auction swaps or P2P swaps on their own UTXOs.
Multiple bids can be made on a sequential swap, and the highest will be chosen by the auction coordinator. Unfortunately we have no opportunity for Vickrey auctions due to the PSBTs for bids being signed in advance.
We'll need to be able to provide a Vec of IssueRequests. These will be encrypted to Carbonado by bitmaskd as offers, preferably in separate files so sold asset files can be removed. These are then used to satisfy bids by bitmaskd as a coordinator.
We will also need the capability to specify multiple fee recipients.