diff --git a/bip-0431.mediawiki b/bip-0431.mediawiki index 2af0e53c26..bfd0b9365c 100644 --- a/bip-0431.mediawiki +++ b/bip-0431.mediawiki @@ -104,10 +104,10 @@ A node that implements this policy would apply their existing standardness and p Note: A TRUC transaction can spend outputs from ''confirmed'' non-TRUC transactions. A non-TRUC transaction can spend outputs from ''confirmed'' TRUC transactions. -3. An unconfirmed TRUC transaction cannot have more than 1 unconfirmed ancestor. An unconfirmed TRUC transaction cannot have more than 1 unconfirmed descendant. CPFP Carve Out is not granted to TRUC transactions. +3. An unconfirmed TRUC transaction cannot have more than 1 unconfirmed ancestor. An unconfirmed TRUC transaction cannot have more than 1 unconfirmed descendant. A TRUC transaction MUST NOT simultaneously have both an unconfirmed TRUC ancestor and an unconfirmed TRUC descendant. CPFP Carve Out is not granted to TRUC transactions. Rationale: * The larger the descendant limit, the more transactions may need to be replaced. See #1 in Rule 3 Pinning section above. This also makes pinning using Rule 5 more difficult, since a directly conflicting transaction has fewer possible descendants. -* These two limits (ancestor count 2, descendant count 2) effectively create a cluster limit using the existing ancestor and descendant limits. Increasing them to 3 would imply an infinite cluster count limit. +* Using inclusive counting (including the transaction itself), these limits are 2 in each direction. Combined with the prohibition on simultaneously having both an unconfirmed TRUC ancestor and an unconfirmed TRUC descendant, this enforces a maximum cluster size of 2. Increasing either limit to 3 would imply an unbounded cluster size. * This 1-parent-1-child topology makes it possible to use ancestor score (minimum of ancestor feerate and individual feerate) as a measure of incentive compatibility.
Q: Why not allow multiple parents to enable batched fee-bumping? @@ -147,7 +147,7 @@ Note: A TRUC transaction can spend outputs from ''confirmed'' non-TRUC transacti ====Related Work==== -This 1-parent-1-child (aka cluster size 2) topology restriction makes the transactions much easier to reason about, which enables additional features like +This 1-parent-1-child (aka cluster size 2; at most two unconfirmed transactions total, i.e., no simultaneous parent and child) topology restriction makes the transactions much easier to reason about, which enables additional features like feerate diagram comparisons [https://github.com/bitcoin/bitcoin/pull/29242 this PR] implements feerate diagram creation and comparison for sets of transactions in which the maximum cluster size is 2, e.g. all TRUC transactions.