dgb(#82): regtest-aware daemon softfork readiness gate - #283
Merged
Conversation
The startup readiness gate (NodeRPC::check) requires the full SSOT
SOFTFORKS_REQUIRED set {nversionbips,csv,segwit,reservealgo,odo,taproot}.
A regtest digibyted legitimately deploys only csv/segwit/taproot — the
DGB-specific algo softforks (reservealgo, odo) and nversionbips are
mainnet/testnet deployments not carried on regtest. Gating startup on
deployments the connected chain cannot carry made the regtest won-block
path (and CI against regtest) impossible to start, with no consensus
benefit.
Relax ONLY when chain==regtest; mainnet/testnet keep the full SSOT
requirement set unchanged. Non-consensus startup readiness gate only;
the SOFTFORKS_REQUIRED SSOT and its KAT are untouched.
Verified live: armed run-loop against regtest digibyted now clears the
gate (CoindRPC connected; no Refusing-to-start retry loop), work source
+ Stratum stand up, embedded P2P handshake OK. dgb_share_test 16/16.
frstrtr
added a commit
that referenced
this pull request
Jun 23, 2026
dgb(#82): regtest-aware daemon softfork readiness gate
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
NodeRPC::check (startup readiness gate) relaxes the DGB-specific algo softfork requirements (
reservealgo,odo,nversionbips) ONLY when chain==regtest. A regtest digibyted legitimately deploys just csv/segwit/taproot; those three are mainnet/testnet deployments not carried on regtest, so the mainnet-oriented gate could never pass against a regtest daemon.Why
Unblocks the #82 regtest won-block-reaches-network test (integrator-greenlit). Before this, the armed run-loop spun in a
Refusing to start ... Retry after 15 secondsloop and the work source never came up against regtest.Scope / safety
src/impl/dgb/coin/rpc.cpp. Single-coin, DGB-only.PoolConfig::SOFTFORKS_REQUIREDand its KAT untouched; mainnet/testnet keep the full required set.Verification (live, regtest)
missing required softfork features: nversionbips, odo, reservealgo->Refusing to startretry loop....CoindRPC connected!, work source + Stratum up, embedded P2P handshake OK, walk-forward getheaders.HOLD merge — integrator merges with operator push approval.