dgb: make_coin_params factory (params.hpp) — Scrypt-only, oracle-sourced - #129
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/.
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.
Adds src/impl/dgb/params.hpp: dgb::make_coin_params(testnet) building a populated core::CoinParams for the DGB-Scrypt parent chain — the struct that flows through the modern share_check/tracker stack.
Consensus-neutral by construction: NO hardcoded consensus bytes in this file. Every consensus-critical value derives from the SSOT static members of dgb::CoinParams (config_coin.hpp) and dgb::PoolConfig (config_pool.hpp), so there is exactly one place a DGB constant can drift.
Oracle source: frstrtr/p2pool-dgb-scrypt (switch-oracle / Option B, operator 2026-06-17). IDENTIFIER 4b62545b1a631afe, PREFIX 1c0553f23ebfcffe, P2P 5024, minproto floor 1700, softforks csv+segwit, version-gated donation (v35 forrestv P2PK 4104ffd0… / v36 combined P2SH).
Scope: single-coin — touches ONLY src/impl/dgb/params.hpp. No src/impl/bitcoin_family/ or src/core/ delta.
Three non-consensus fields carry [confirm-vs-oracle] markers (address_p2sh_version2 legacy parse-leniency, dust_threshold relay policy, worker_port stratum default) — operator-overridable, flagged not guessed.
HOLD merge for integrator gate (CI-green + operator approval).