consensus: add taproot deployment (BIP9 mainnet, always-active regtest)
This commit is contained in:
@@ -91,6 +91,9 @@ public:
|
|||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 1199145601;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = 1230767999;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1772323200; // March 1st, 2026
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1803859200; // March 1st, 2027
|
||||||
|
|
||||||
|
|
||||||
// The best chain should have at least this much work.
|
// The best chain should have at least this much work.
|
||||||
@@ -215,6 +218,9 @@ public:
|
|||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 0;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 0;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = 1772323200;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = 1803859200;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -294,6 +300,9 @@ public:
|
|||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].bit = 28;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 0;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nStartTime = 0;
|
||||||
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].bit = 2;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nStartTime = Consensus::BIP9Deployment::ALWAYS_ACTIVE;
|
||||||
|
consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
|
||||||
|
|
||||||
// The best chain should have at least this much work.
|
// The best chain should have at least this much work.
|
||||||
consensus.nMinimumChainWork = uint256S("0x00");
|
consensus.nMinimumChainWork = uint256S("0x00");
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ namespace Consensus {
|
|||||||
enum DeploymentPos
|
enum DeploymentPos
|
||||||
{
|
{
|
||||||
DEPLOYMENT_TESTDUMMY,
|
DEPLOYMENT_TESTDUMMY,
|
||||||
// NOTE: Also add new deployments to VersionBitsDeploymentInfo in versionbits.cpp
|
DEPLOYMENT_TAPROOT,
|
||||||
|
// NOTE: Also add new deployments to VersionBitsDeploymentInfo in versionbitsinfo.cpp
|
||||||
MAX_VERSION_BITS_DEPLOYMENTS
|
MAX_VERSION_BITS_DEPLOYMENTS
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1261,6 +1261,7 @@ UniValue getblockchaininfo(const JSONRPCRequest& request)
|
|||||||
BuriedForkDescPushBack(softforks, "csv", consensusParams.CSVHeight);
|
BuriedForkDescPushBack(softforks, "csv", consensusParams.CSVHeight);
|
||||||
BuriedForkDescPushBack(softforks, "segwit", consensusParams.SegwitHeight);
|
BuriedForkDescPushBack(softforks, "segwit", consensusParams.SegwitHeight);
|
||||||
BIP9SoftForkDescPushBack(softforks, "testdummy", consensusParams, Consensus::DEPLOYMENT_TESTDUMMY);
|
BIP9SoftForkDescPushBack(softforks, "testdummy", consensusParams, Consensus::DEPLOYMENT_TESTDUMMY);
|
||||||
|
BIP9SoftForkDescPushBack(softforks, "taproot", consensusParams, Consensus::DEPLOYMENT_TAPROOT);
|
||||||
obj.pushKV("softforks", softforks);
|
obj.pushKV("softforks", softforks);
|
||||||
|
|
||||||
obj.pushKV("warnings", GetWarnings(false));
|
obj.pushKV("warnings", GetWarnings(false));
|
||||||
|
|||||||
@@ -11,4 +11,8 @@ const struct VBDeploymentInfo VersionBitsDeploymentInfo[Consensus::MAX_VERSION_B
|
|||||||
/*.name =*/ "testdummy",
|
/*.name =*/ "testdummy",
|
||||||
/*.gbt_force =*/ true,
|
/*.gbt_force =*/ true,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
/*.name =*/ "taproot",
|
||||||
|
/*.gbt_force =*/ true,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user