Now that the decision to activate taproot at block height 709632 has been buried under more than 5 months of POW, the deployment should be buried in a future release (see benefits below). If this patch is first included in version 23.0, the decision will be buried by ~10 months of POW at release time.
Benefits:
- All deployments will use the same code paths. Thus, in the extremely unlikely case of bugs being introduced in the future in the versionbits activation code, it won’t have any effect on previous deployments.
- Less code and complexity of the activation, because the versionbits params can be removed.
- Features can be developed assuming that taproot absolutely does activate at a specific block height. Thus, code to handle non-activation of taproot does not need to be maintained.
- Easier testing, because on regtest the newly introduced
-testactivationheight=name@height
(introduced in #22818) can be used.
For reference, previous buried versionbits deployments were:
Unlike previous buried deployments, this one is not a non-backwards compatible change, as explained in BIP90 (section considerations): https://github.com/bitcoin/bips/blob/master/bip-0090.mediawiki#considerations . Due to the use of a minimum activation height, there can not exist an alternative chain where the activation occurred at a lower block height than that. Obviously this patch can still result in a theoretical consensus split (though a “backwards compatible” one) if there were a massive reorg that activated taproot at a higher (or no) block height. In this case the BIP90 considerations on large reorgs apply.
This changes the output of the getblockchaininfo
RPC. I will add release notes when and if this patch is merged.