dgb: conform share/coin params to p2pool-dgb-scrypt oracle - #131
Merged
Conversation
Builds a fully populated core::CoinParams for the DigiByte-Scrypt p2pool parent chain. Holds zero hardcoded consensus bytes: every consensus-critical value is sourced from the single-source-of-truth static members of dgb::CoinParams (config_coin.hpp) and dgb::PoolConfig (config_pool.hpp). Sourced from the DGB oracle frstrtr/p2pool-dgb-scrypt (switch-oracle / Option B): IDENTIFIER 4b62545b1a631afe, PREFIX 1c0553f23ebfcffe, P2P 5024, minproto floor 1700, softforks csv+segwit, version-gated donation (v35 forrestv P2PK / v36 P2SH). Single-coin scope: touches only src/impl/dgb/.
Migrate the share-layer and parent-period constants left at merged-v36/ farsider holdovers over to the canonical DGB oracle (frstrtr/p2pool-dgb- scrypt). The oracle-switch (operator Option B, 2026-06-17) only carried IDENTIFIER/PREFIX/donation/minproto; these were still stale. config_pool.hpp (networks/digibyte.py): SPREAD 30->24, TARGET_LOOKBEHIND 200->100, SHARE_PERIOD 25->15, CHAIN_LENGTH/REAL 8640->2880, SEGWIT_ACTIVATION_VERSION 17->35, BLOCK_MAX_SIZE 1M->32M, BLOCK_MAX_WEIGHT 4M->128M, SOFTFORKS_REQUIRED += nversionbips,reservealgo,odo,taproot. config_coin.hpp (bitcoin/networks/digibyte.py): BLOCK_PERIOD 15->75 (Scrypt-only parent observes the per-algo period). params.hpp: resolve [confirm-vs-oracle] for worker_port (5025) and dust_threshold (0.001e8); refresh stale value comments. Already-matching (unchanged): IDENTIFIER, PREFIX, P2P_PORT 5024, MAX_TARGET, donation P2PK, ADDRESS_VERSION 30 / P2SH 63, magic, HRP. Still open [confirm-vs-oracle], NOT changed here: subsidy weeks off-by-one + COIN scale, parent daemon ports 12024/14024 vs oracle 12029/14029, address_p2sh_version2=5 (oracle silent on a 2nd P2SH prefix).
This was referenced Jun 17, 2026
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.
Stacked on #129 (params.hpp factory). HOLD merge — integrator merges on operator approval.
What
Migrates DGB share-layer + parent-period constants from stale merged-v36/farsider holdovers to the canonical DGB oracle
frstrtr/p2pool-dgb-scrypt(operator ruling 2026-06-17, Option B "switch-oracle"; merged-v36 byte-compat WAIVED for DGB). The oracle-switch only carried IDENTIFIER/PREFIX/donation/minproto — the rest of the sharechain identity was never migrated.Adjudication table (config SSOT vs oracle)
✅ already matched (unchanged): IDENTIFIER, PREFIX, P2P_PORT 5024, MAX_TARGET, donation P2PK, ADDRESS_VERSION 30 / P2SH 63, magic, HRP, dust 0.001e8, worker_port 5025.
Still OPEN [confirm-vs-oracle] — deliberately NOT changed here (need adjudication)
weeks=(blocks/period)+1(off-by-one vs our loop) and a localCOIN=1e6(vs our 1e8). Needs careful review before touching consensus subsidy math.GPG-signed c51f39b.