Author: Luke Dashjr 2022-08-04 19:35:13
Published on: 2022-08-04T19:35:13+00:00
BIP125 is an exception to the subjective per-node policy, which is not enforceable and expectable and generally not eligible for standardization. It allows wallets and nodes to communicate by requesting policies to be applied to potential transaction replacements. Although the BIP125-request policy has been widely implemented, it should not be changed except for corrections to deviations from the original intent. A new BIP should be written for conveying a new policy. Security should never depend on assumptions of node policies, so if transactions fail to meet a general policy, it is up to the sender/L2 to adapt. The history of BIP125 began when RBF rules were merged into Bitcoin Core in November 2015. Following that merge, David Harding and Peter Todd drafted a BIP, outlining the RBF rules that had been implemented in Bitcoin Core. In May 2021, it was discovered that the Bitcoin Core implementation of the RBF rules had never matched the RBF rules outlined in BIP125. Two views have emerged on what to do next given that the RBF rules need to be updated. One view is to ditch the idea of a specification for RBF rules and just document them in the Core repo. The other view is to have a new specification for the RBF rules in Core and attempt to correct the mistakes made with BIP125 by having a BIP that does correctly outline the RBF rules implemented in Core and includes detailed rationales for those RBF rules.Policy is less risky than consensus, but since L2 protocol security relies on policy, it should aspire to similar standards where possible for policy too. Documentation is generally done post-merge if at all, but for consensus PRs, having two points of reference released simultaneously is treating consensus changes with the highest possible standards we can. As time passes, the ecosystem grows, layers on top of the base layer get built out, and standards should be improving, and we should be striving to do better and more rigorously than whatever the standard was in 2015.The new RBF rules as implemented in Core today are documented in the Core repo. The devs who work on policy will have a much better idea on questions like whether the new RBF rules will continue to be iterated upon as new research on L2 security comes to light or if a new static set of RBF rules is close to being finalized. Ultimately, the ecosystem should aspire to the highest possible standards for step change default policy changes in Core too given L2 protocol security is relying on them.
Updated on: 2023-06-15T23:37:59.120432+00:00