Skip to content

bch(M5): --with-peer-verify — live VM300 won-block P2P leg + forced-stall reissue proof - #236

Merged
frstrtr merged 1 commit into
masterfrom
bch/m5-with-peer-verify
Jun 20, 2026
Merged

bch(M5): --with-peer-verify — live VM300 won-block P2P leg + forced-stall reissue proof#236
frstrtr merged 1 commit into
masterfrom
bch/m5-with-peer-verify

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Stacked on #231 (bch/m5-run-p2p-leg). Closes the WITH-peer end-to-end gap #231 step7 could not reach.

Live result @VM300 bchn-bch 192.168.86.110:8333 (BCHN 29.0.0, start_height 956031, compact-blocks v1), read-only:

  • (a) arm_p2p_no_rpc() (run() minus init_rpc) armed the real maybe_start_p2p(); broadcast_route()==p2p -> won-block dispatcher selects the embedded P2P relay leg, NOT the RPC-only fallback. No block relayed onto mainnet (dry sink-selection read).
  • (b) forced download-window stall (1 unservable hash via request_block_downloads, the connector deep-reorg re-request sink) drove reissue_count 0 -> 1 at t=70s off the live window after the 60s BLOCK_DL_TIMEOUT — not the synthetic tick the unit test uses.

armed=yes route_p2p=yes reissue=1 -> with_peer_verify: ALL PASS.

Fence: src/impl/bch/ + binary entrypoint only; transport/local block-dl wiring. p2pool-merged-v36 surface: NONE. GPG-signed. --with-peer-verify needs a live peer so it is a co-located manual mode (like leg-C), not a CI CTest; the binary builds under the COIN_BCH CI leg. §5.3 evidence appended to c2pool-bch-embedded-divergence-set.md (frstrtr/the, push operator-gated).

@frstrtr
frstrtr force-pushed the bch/m5-with-peer-verify branch from b7dda42 to a1f31da Compare June 19, 2026 22:22
@frstrtr
frstrtr changed the base branch from bch/m5-run-p2p-leg to master June 19, 2026 22:22
@frstrtr
frstrtr force-pushed the bch/m5-with-peer-verify branch from a1f31da to 1160bdd Compare June 19, 2026 23:09
… forced-stall reissue

Closes the end-to-end gap PR #231 (production run() arming the embedded P2P
leg via maybe_start_p2p) left open: its offline step7 test only proves the
no-peer RPC-only contract. This adds a co-located, strictly read-only WITH-peer
mode against the live VM300 bchn-bch peer proving the two positives:

  (a) arm_p2p_no_rpc() = run() minus init_rpc drives the REAL maybe_start_p2p()
      through its configured-peer gate; broadcast_route() reports p2p -> the
      won-block dispatcher SELECTS the embedded P2P relay leg, not the RPC-only
      fallback. Routing asserted via a dry sink-selection read (broadcast_route),
      no block relayed onto mainnet.
  (b) a forced download-window stall (one unservable hash enqueued through
      request_block_downloads, the connector deep-reorg re-request sink) makes
      reissue_count() go nonzero off the LIVE window after BLOCK_DL_TIMEOUT,
      not the synthetic tick the unit test uses.

Live result @VM300 192.168.86.110:8333 (BCHN 29.0.0, start_height 956031,
compact-blocks v1): armed=yes route_p2p=yes reissue 0->1 at t=70s -> ALL PASS.

Fenced src/impl/bch/ + binary entrypoint only; transport/local block-dl wiring,
no PoW/share/coinbase/PPLNS change. p2pool-merged-v36 surface: NONE.
@frstrtr
frstrtr force-pushed the bch/m5-with-peer-verify branch from 1160bdd to 1833bd4 Compare June 20, 2026 01:16
@frstrtr
frstrtr merged commit 16fb5bb into master Jun 20, 2026
19 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