Skip to content
This repository was archived by the owner on Dec 4, 2024. It is now read-only.

Implement batching multiple UTXOs to a single UTXO consolidation logic transaction #411

@soju-drinker

Description

@soju-drinker

Description

When a deposit transaction is picked up from the reveal service during polling, there needs to be a secondary tx initiated by the stackers that consolidates the currently existing UTXO in the peg wallet with the deposit UTXO. This can be generalized into a batching transaction that consolidates multiple deposit UTXOs + peg UTXO into one UTXO in a single transaction.

Context / Purpose

Our peg wallet design necessitates only one UTXO at all times, as detailed in this document. This issue actually implements the mechanism to achieve that

Steps

  1. Generate a new BTC tx consolidating all the polled deposits or (a max limit number) whichever is lower
  2. If not all polled UTXOs were batched in step 1, repeat step 1 multiple times when the first transaction is in the pending mempool in BTC

Artifacts / Acceptance Criteria

  • Consolidation TXs are generated successfully
  • Multiple consolidation TXs are generated in succession in a chain and work as intended
  • Smoke tests testing the above scenarios

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions