Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

TRUC and P2A for CTV fee management

215 views
Skip to first unread message

stutxo

unread,
Dec 17, 2024, 7:27:19 PM12/17/24
to Bitcoin Development Mailing List
Hi everyone,

I am trying to learn more about op_ctv (or its true name, op_securethebag). One thing I keep hearing is that estimating fees are potentially an issue when spending CTV transactions. 

jamesob mentioned fees in his simple_ctv_valut
Because coins may remain vaulted for long periods of time, the unvault process is sensitive to changes in the fee market. Because use of OP_CTV requires precommiting to a tree of all possible specific outputs and the number of inputs, we cannot use RBF to dynamically adjust feerate of unvaulting transactions.

and rustyrussell on nostr also mentioned fees being a problem 
Optimised sponsors for solving the "but how do I add fees" problem in a way that doesn't drive miner centralisation.

With v3 transactions available in bitcoin 28.0 there are a bunch of new techniques that have been enabled that we can use to hopefully solve these issues

As long as you have an output for 240 sats paying to a P2A address, such as tb1pfees9rn5nz on signet, you or anyone else will be able to bump the fees using CPFP on the anchor output. 

I have some examples of these transactions here on signet


Is there anything I am missing here? What are the downsides of this method? Is this how most ctv scripts spends would work?

Thanks!
stu

/dev /fd0

unread,
Dec 20, 2024, 11:42:08 PM12/20/24
to Bitcoin Development Mailing List
Hi stu,

Thanks for testing packages and P2A with CHECKTEMPLATEVERIFY on signet. 

This example in the README looks incorrect:

> ### Bumping Fee by Deducting Fee from CTV Output
> For some reason if you still wanted to pay the fee with just the ctv ouput you could take it from the output value
> - [bump fee without extra input or child transaction: Parent Transaction on Mempool Space](https://mempool.space/signet/tx/86896275fb71d4e3b84d1edeeacb90f7c4ccf77ee3a29e66d7effff4bb0682fb)

/dev/fd0
flopppy disk guy

stutxo

unread,
Dec 30, 2024, 8:05:43 PM12/30/24
to Bitcoin Development Mailing List
thanks floppy disk guy, 

i updated this example with the correct way a single 1c1p spend with no p2a would look like

parent
https://mempool.space/signet/tx/7a3768737ae4e20a556de6f475bfc74a13a8fda2287dbabbf6ffe8d7f5500de2

child
https://mempool.space/signet/tx/3135e52ad30eb788d455549f4f09b55f887cdd2eb1660180b0e12f10af807cf5

Although im not sure how useful this one is, i guess its nice because you can still get the parent transaction in to the mempool even with 0 fees 

I also added an example of v3 transactions and p2a to my ctv payment pool PoC here https://github.com/stutxo/op_ctv_payment_pool 
Reply all
Reply to author
Forward
0 new messages