The following is a direct excerpt from Marty’s Bent Issue #1198: “OP_CTV and rough consensus” Sign up for the newsletter here.
As I’m sure some of you are aware by now, there is a heated debate among bitcoin developers and users alike about OP_CTV, a topic we started here at Bent in December 2019. OP_CTV, when activated, would come back to bring an operation code (OP_NOP4) to life with additional restrictions. This would allow users to create complex agreements for Bitcoin that could allow for more complex pre-configured transactions and improve user experience in terms of security and stacking of large numbers of transactions.
I think these are functionalities that would be useful to many bitcoin users, especially larger economic players who hold lots of bitcoins who need the highest possible level of security and those who send a lot of bitcoins to a lot of bitcoin users Every day.
With this in mind, the attempt to merge OP_CTV with Bitcoin Core has exposed the murky nature of crude consensus within a distributed peer-to-peer system. The conversation around OP_CTV forces people (including me) to ask questions like; is this really necessary now? Has the proposal been adequately discussed and reviewed? If so, and it is deemed worthy, how should it be activated on the Bitcoin network?
After speaking to a few developers who are familiar with both Bitcoin Core and the needs of some of the larger custodians, it appears that OP_CTV would be beneficial to many players in this space. Being able to use these types of covenants would expand the design latitude of the solutions they can offer customers as they have better security guarantees when moving large amounts of bitcoin. (I use security in this context to mean “human error results in loss of funds.”) I think OP_CTV would be used if enabled.
Another variable brought to light with the OP_CTV enablement (or disapproval) debate is that Bitcoin Core’s senior maintainers have what is known as “commit access” and are responsible for actually pushing the buttons who are merging the code into Bitcoin Core seem to have no part in suggesting whether or not something should be merged and how it should or should not be done. They seem to be adopting an increasingly neutral stance, lest they come across as partisan and biased controllers of the codebase. This appears to be evident from their unwillingness to provide an answer to Jeremy Rubin, the developer behind OP_CTV, when he asked, “How do I go about merging this into Bitcoin Core?” I’m actually positive about that. Changing bitcoin should be difficult, and those who hold the keys to the machine that allows you to change the most commonly used client should be as impartial as possible.
Due to the refusal to give Jeremy a clear answer regarding an activation path, he took it upon himself to create his own client that activated OP_CTV and provides users with a path through which they can attempt to make OP_CTV official, by participating in another User Activated Soft Fork (UASF) that leverages the Speedy Trial activation method. While I understand Jeremy’s drive to enable OP_CTV, I’m not a huge fan of pushing another soft fork via Speedy Trial. In hindsight, it seems like a bad precedent was set by enabling taproot. I am afraid that normalizing a rapid succession of soft forks via Speedy Trial is a slippery slope that could lead to many unnecessary changes in the future that could cause the integrity of the Bitcoin network to deteriorate.
While there are many people who would likely use OP_CTV if it were activated tomorrow, there doesn’t seem to be an urgent need at the moment. I’m all for a more thorough conversation and debate about the merits of the feature and the precedent we’ll set by enabling it, should that happen. I like the idea of OP_CTV, but certainly don’t think it’s a make-or-break feature right now.
I advocate a hazy, crude consensus driving protocol changes over a well-defined process that could potentially be socially attacked. It will be interesting to see when and how this debate is resolved. One thing is for sure, I am pleased that OP_CTV is here to bring these tough but necessary consensus talks to the fore. These are very important discussions to have.