-
Notifications
You must be signed in to change notification settings - Fork 134
Closed
[feature]: store and verify peer-issued pre-commitment outputs when syncing asset issuance proofs#1782
Feature
Copy link
Labels
enhancementNew feature or requestNew feature or requestsupply commitWork on the supply commitment feature, enabling issuers to attest to total asset supply on-chain.Work on the supply commitment feature, enabling issuers to attest to total asset supply on-chain.
Milestone
Description
A supply pre-commitment output is an output on the mint anchor transaction that is later spent by a supply commitment transaction. This creates the spend chain linking mint anchor transactions to supply commitments.
For locally issued assets, the node already stores pre-commitment outputs during minting. These outputs are then spent when the node publishes new supply commitment updates.
We also need to handle assets issued by peer nodes. Specifically:
- When syncing issuance proofs from a peer, store the corresponding pre-commitment outputs.
- During verification of supply commitments published by that peer, assert that any unspent pre-commitment output is consumed by a new supply commitment transaction.
Implementation details:
- Extend the database schema with a new table for peer-issued pre-commitment outputs (separate from the table used for locally minted assets).
- Update
supplyverifier.Verifier
to assert that at least one pre-commitment output is spent if the supply commitment does not consume a previous supply commitment output. See: https://reviewable.io/reviews/lightninglabs/taproot-assets/1674#-OZMmYmCEzQahmW1_EO_
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestsupply commitWork on the supply commitment feature, enabling issuers to attest to total asset supply on-chain.Work on the supply commitment feature, enabling issuers to attest to total asset supply on-chain.
Type
Projects
Status
✅ Done