lightning-dev
CPFP Carve-Out for Fee-Prediction Issues in Contracting Applications (eg Lightning)
Posted on: October 25, 2019 07:05 UTC
The carve-out rule was added to pave the way for more robust CPFP of on-chain contracts.
This essentially changes the rule to always allow CPFP-ing the commitment as long as there is an output available without any descendants. The commitment now requires at least one non-CSV output per party, rather than exactly one. Johan Torås Halseth wonders if the special case rule should have been relaxed a bit. He suggests that the last transaction which is added to a package of dependent transactions in the mempool must have no more than one unconfirmed parent. This would allow adding a large transaction to each output of the unconfirmed parent and potentially exceed the MAX_PACKAGE_VIRTUAL_SIZE limit in some cases. Rusty Russell has proposed a simple RBF where 'you can replace if the feerate is higher, the new tx is in the first 4Msipa of the mempool, and the old tx isn't'.