RBF rules, setting policy defaults in Bitcoin Core and the role of BIPs



Summary:

In 2015, RBF rules were merged into Bitcoin Core, and a BIP (BIP125) was drafted to outline those rules. However, in May 2021, it was discovered that the Bitcoin Core implementation of the RBF rules did not match the rules outlined in BIP125. There are now two views on how to proceed with updating the RBF rules - either ditch the idea of a specification and document them in the Core repo, or create a new specification for the RBF rules in Core. The author argues that stakeholders in L2 protocol security should care about where things are documented, as a detailed static, well-reviewed BIP standard that lays out updated RBF rules and rationales could be preferable to cross-checking Bitcoin Core code with non-standardized documentation. The author suggests that the norm for material step change policy changes should be a specification and a reference implementation, similar to the norm for consensus changes. The Bitcoin Core review process requires Concept ACKs, Approach ACKs, and then code review and testing ACKs in that order, but documentation is generally done post-merge if at all. The author suggests striving towards the highest possible standards for step change default policy changes in Core, given that L2 protocol security relies on them. The new RBF rules replacing the BIP125 rules are documented in the Core repository, though it is unclear whether they are a work in progress or close to final. The author expresses discomfort with what they perceive as a slip in standards over time and suggests that standards should be improving and becoming more rigorous.


Updated on: 2023-05-22T20:58:11.585915+00:00