Commit e9f3665
committed
dash: T1c byte-parity KAT vs live p2pool-dash oracle corpus (share-v16)
Close the T1c serialization-parity gap the 2026-07-21 join-lane audit
flagged: test_dash_conformance.cpp only exercised synthetic/out-of-band
vectors, with no byte-parity test against a real p2pool-dash node.
Adds:
- test/data/dash_oracle_corpus.hpp: 29 distinct canonical shares captured
off a controlled p2pool-dash node JOINED to the live public sharechain
(share-v16 / min-proto-1700), each raw wire-entry cross-validated
byte-identical across 4 independent peers, deduped by share_hash.
- test/test_dash_oracle_byte_parity.cpp: round-trips every canonical
SHARE_RAW through the production load_share -> DashFormatter::Read ->
DashFormatter::Write path and asserts serialize(parse(raw)) == raw
(the exact condition for a relayed share to VERIFY_PASS on the fork),
plus semantic cross-checks (prev_hash / donation / new_tx_count /
pubkey_hash -> payout_script) against the fork's SHARE_RECV fields.
Result: 30/30 pass. c2pool's DASH v16 layout already byte-matches the
canonical fork; no serialization divergence found. Promotes the real
captured-corpus KAT the conformance suite was missing.1 parent 9c7ae70 commit e9f3665
3 files changed
Lines changed: 417 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
263 | 263 | | |
264 | 264 | | |
265 | 265 | | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
266 | 281 | | |
267 | 282 | | |
268 | 283 | | |
| |||
0 commit comments