Skip to content

dgb: unify SEGWIT_ACTIVATION_VERSION to single SSOT (oracle=35, frstrtr/p2pool-dgb-scrypt; merged-v36 byte-compat WAIVED) - #141

Merged
frstrtr merged 1 commit into
masterfrom
dgb/segwit-ssot-unify
Jun 18, 2026
Merged

dgb: unify SEGWIT_ACTIVATION_VERSION to single SSOT (oracle=35, frstrtr/p2pool-dgb-scrypt; merged-v36 byte-compat WAIVED)#141
frstrtr merged 1 commit into
masterfrom
dgb/segwit-ssot-unify

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 17, 2026

Copy link
Copy Markdown
Owner

What

Unify DGB SEGWIT_ACTIVATION_VERSION to a single source of truth at the oracle-canonical value 17.

Why

Split-brain found during #161 inst#4 version-gate SSOT audit: the real consensus gate (share_types.hpp + the 6 constexpr gates in share_check.hpp) already read 17, matching BOTH oracles (p2pool-dgb-scrypt and p2pool-merged-v36 @42ccca53). A stale 35 sat in the consumer-less params.hpp:66 field — a typo from my earlier c51f39b.

Inverse-correction applied: corrected config 35->17 FIRST, then unified onto the single SSOT, so convergence lands on the oracle value with zero behavior change rather than propagating the error.

Scope / classification

  • NOT consensus-moving: the live gate already read 17; only the consumer-less field changed.
  • 3-bucket: coin-specific consensus constant -> per-coin is correct, NOT a standardization candidate.
  • Single-coin DGB scope. Oracle-cited SSOT. GPG-signed. build EXIT=0.

HOLD merge — gated on operator tap (surfaced on #161 thread).

@frstrtr
frstrtr force-pushed the dgb/segwit-ssot-unify branch from bbbb0e0 to 4953870 Compare June 17, 2026 22:32
@frstrtr

frstrtr commented Jun 17, 2026

Copy link
Copy Markdown
Owner Author

Adjudicated vs the canonical DGB oracle (frstrtr/p2pool-dgb-scrypt). CORRECTION to the earlier head (bbbb0e0 unified to 17 — wrong direction).

Two-oracle split confirmed:

  • p2pool-merged-v36 digibyte.py (farsider350-based): SEGWIT_ACTIVATION_VERSION = 17 — byte-compat WAIVED for DGB per operator 2026-06-17.
  • frstrtr/p2pool-dgb-scrypt (canonical DGB oracle) digibyte.py:27: SEGWIT_ACTIVATION_VERSION = 35.

Master split-brain: config_pool.hpp=35 but share_types.hpp hardcoded 17; the consensus gate in share_check.hpp resolved to the share_types value (17), diverging from the oracle. New head 4953870 collapses to one SSOT in config_pool.hpp (=35); share_types.hpp + params.hpp derive from it.

Consensus-relevant: shares with version in [17,35) are no longer spuriously segwit-validated against the canonical network. Rest of config_pool.hpp re-verified fully conformant to the oracle (SHARE_PERIOD=15, SPREAD=24, LOOKBEHIND=100, BLOCK_MAX=32M/128M, IDENTIFIER 4b62545b1a631afe, PREFIX 1c0553f23ebfcffe, SOFTFORKS). Build EXIT=0 (target c2pool-dgb). GPG-signed. HOLD merge.

@frstrtr frstrtr changed the title dgb: unify SEGWIT_ACTIVATION_VERSION to single SSOT (oracle=17) dgb: unify SEGWIT_ACTIVATION_VERSION to single SSOT (oracle=35, frstrtr/p2pool-dgb-scrypt; merged-v36 byte-compat WAIVED) Jun 17, 2026
…=35)

Master carried a split-brain: config_pool.hpp=35 but share_types.hpp hardcoded 17, and the consensus gate in share_check.hpp resolved to the share_types value (17) — diverging from the canonical DGB oracle frstrtr/p2pool-dgb-scrypt (digibyte.py SEGWIT_ACTIVATION_VERSION=35). The 17 value is the merged-v36/farsider350 figure, byte-compat for which is WAIVED for DGB per operator 2026-06-17.

Collapse to one SSOT in config_pool.hpp (=35); share_types.hpp and params.hpp derive from it. Effective segwit-share gate now conforms to the oracle. Consensus-relevant: shares with version in [17,35) are no longer spuriously segwit-validated against the canonical network.
@frstrtr
frstrtr force-pushed the dgb/segwit-ssot-unify branch from 4953870 to 8b39291 Compare June 18, 2026 05:53
@frstrtr
frstrtr merged commit 42e5db8 into master Jun 18, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant