Skip to content

test(dash-g1): injectable block-version seam + byte-parity golden KAT#625

Merged
frstrtr merged 1 commit into
masterfrom
ci-steward/dash-g1-version-seam
Jul 4, 2026
Merged

test(dash-g1): injectable block-version seam + byte-parity golden KAT#625
frstrtr merged 1 commit into
masterfrom
ci-steward/dash-g1-version-seam

Conversation

@frstrtr

@frstrtr frstrtr commented Jul 3, 2026

Copy link
Copy Markdown
Owner

Next G1 byte-parity seam after the curtime slice (#622). Fenced, SAFE-ADDITIVE, non-consensus.

What

  • build_embedded_workdata version becomes an injectable trailing-default param (default 0x20000000, the BIP9 no-signaling baseline), replacing the hardcoded w.m_version = 0x20000000 + TODO. Every existing caller is byte-for-byte unchanged.
  • New KAT G1GoldenVersionSeamEchoesInjectedVersion: the seam echoes a pinned version exactly (no arithmetic of its own), the default preserves the prior projection, and injecting a non-default version drifts ONLY m_version — orthogonal to height/prev/bits/mintime/coinbase.

Scope

Fenced to src/impl/dash/coin/embedded_gbt.hpp + test/test_dash_embedded_gbt.cpp. No shared/other-coin tree, no consensus-value change (default identical to old constant). Mirrors the #622 curtime seam pattern one-for-one.

Sequencing note

Independent of #622 (its own fenced PR, per request). If #622 lands first, this rebases with a trivial fixup: curtime and version both become trailing defaults, so the positional call sites in the new KAT get the extra arg — mechanical, no logic change.

Merge-gated: hold for operator tap on green rollup, no self-merge.

Make build_embedded_workdata version an injectable trailing-default param
(default 0x20000000, the BIP9 no-signaling baseline) so every existing
caller is byte-for-byte unchanged. Add G1GoldenVersionSeamEchoesInjectedVersion:
the seam echoes a pinned version exactly, the default preserves the prior
hardcoded projection, and a non-default version drifts ONLY m_version.

SAFE-ADDITIVE, fenced to embedded_gbt.hpp + test_dash_embedded_gbt.cpp,
non-consensus (default value unchanged). Companion to the curtime seam (#622).
@frstrtr frstrtr force-pushed the ci-steward/dash-g1-version-seam branch from 1b44221 to 308586e Compare July 4, 2026 19:55
@frstrtr frstrtr merged commit f040823 into master Jul 4, 2026
32 of 33 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