Switch ABLA (upgrade10) to use height-based activation, rather than MTP
requested to merge cculianu/bitcoin-cash-node:upgrade10_switch_to_height_based_activation into master
Note: This MR depends on !1849 (merged) and is commit(s) on top of that MR.
Summary
After !1849 (merged), it is now safe to do the faster height-based activation checks for ABLA (upgrade10) rather than the slower-to-calculate MTP checks. This transition to height-based checking is what we typically do in this codebase after an upgrade has been activated and checkpointed.
Updated all unit and functional tests to use the new height-based CLI arg and checks.
Also in this MR: The "upgrade 10 activation block tracker" has now been updated to track the upcoming tentative upgrade11 instead.
Notes:
- For regtest we set the activation height to 0 (always activated).
- For scalenet, we set the activation height to 10,006 (retroactively activated as of block 10,006), which is what we also did with upgrade9.
Test Plan
- Review
- Make sure the hard-coded heights for each chain for upgrade10
are the first heights for which the MTP time >= activation time (
1715774400
for main, test3, test4, or1700049600
for chipnet).- If you do use
getblockheader
to verify this, also these are the first heights where the verbose results fromgetblockheader
returns some abla state associated with these blocks.
- If you do use
ninja all check-all