Skip to content

Commit 119346d

Browse files
authored
Merge pull request #789 from frstrtr/bch/broadcaster-stale-comment-fix
bch: correct 2 stale broadcaster comments -- reconstruction has landed (#744)
2 parents c4bd8ef + 5654020 commit 119346d

2 files changed

Lines changed: 12 additions & 8 deletions

File tree

src/impl/bch/node.hpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -197,10 +197,11 @@ class NodeImpl : public pool::SharechainNode<bch::Config, bch::ShareChain, bch::
197197
// other_txs from m_known_txs via the share transaction_hash_refs over
198198
// parent shares (data.py get_other_tx_hashes / _get_other_txs); returns
199199
// nullopt when not all parent txs are present (== as_block None).
200-
// NOTE: coinbase (gentx) full-body reconstruction (GenerateShareTransaction,
201-
// share_check.hpp:472) is the remaining dependency before this emits a
202-
// complete block; until it lands this returns nullopt -- no partial/
203-
// invalid block is ever broadcast. The other_tx gather seam is here.
200+
// Coinbase (gentx) full-body reconstruction is IMPLEMENTED below via
201+
// generate_share_transaction (the same fn the verify path uses), so this
202+
// emits a COMPLETE wire block on success. nullopt is returned ONLY when not
203+
// all parent txs are present (== as_block None) or the gentx/header build
204+
// fails -- never a partial/invalid block. The other_tx gather seam is here.
204205
std::optional<std::pair<std::vector<unsigned char>, std::string>>
205206
reconstruct_won_block(const uint256& share_hash)
206207
{

src/impl/bch/pool_standup.hpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,13 @@
1414
// run-loop; idempotent (set_block_broadcaster replaces).
1515
//
1616
// The sink being live is NECESSARY but NOT SUFFICIENT to close the gate to
17-
// verified: reconstruct_won_block() still returns nullopt until gentx (coinbase)
18-
// full-body reconstruction lands (share_check.hpp:472) and leg C is exercised
19-
// against VM300 (192.168.86.110:8333). Until then the lambda has a live sink yet
20-
// emits nothing -- the gate stays honestly GAP and no partial block is relayed.
17+
// verified: reconstruct_won_block() now fully reconstructs the block (gentx +
18+
// header + full wire serialization), so on a won share the lambda emits a
19+
// complete block down BOTH broadcast arms. What remains before the gate flips to
20+
// verified is a run-path dual-path soak -- leg C (submitblock RPC) exercised
21+
// against a live BCHN (e.g. VM300, 192.168.86.110:8333) alongside the P2P relay
22+
// arm. Until that soak lands the gate stays honestly GAP on VERIFICATION, not on
23+
// missing code; no partial block is ever relayed (nullopt on incomplete txs).
2124
//
2225
// PER-COIN ISOLATION: src/impl/bch only. Zero p2pool-merged-v36 surface -- block
2326
// dispatch, NOT share/PPLNS/coinbase bytes. BCH = SHA256d standalone parent.

0 commit comments

Comments
 (0)