Skip to content

test: RBF, handshake disconnect, BIP352 hash-bind - #485

Merged
reardencode merged 4 commits into
masterfrom
test/rbf-handshake-bip352
Sep 13, 2026
Merged

reardencode merged 4 commits into
masterfrom
test/rbf-handshake-bip352

Conversation

@rearden-grok

@rearden-grok rearden-grok Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Three leftover default cargo test journeys, plus standing docs so later work stays on this path. Core functional stays nightly; these pins do not wait on it.

  • RBF on esplora_broadcast_visible_in_rpc_and_electrum: HTTP testmempoolaccept / sendrawtransaction reject a same-fee replacement (insufficient fee), then a higher-fee replacement evicts and is mined. testmempoolaccept still does not evict. Keep accept.rs fee-rule units.
  • Obsolete VERSION and pre-verack ping on p2p_timeout_getaddr_and_keepalive_ping: after BIP324, the peer closes. Do not delete handshake_disconnect_log_needles (format).
  • BIP352 hash-bind on electrum_tweaks_subscribe_streams_then_done: Cake stream still one-height result + notifies + done; height 2 matches tweak_from_tx on a P2WPKH→P2TR spend. Deleted the in-process dispatch twin.
  • Docs: TESTING.md Default CI is the pin — extend catalog journeys, keep guts Core cannot replace, do not grow smoke or two_node. AGENTS.md / CONTRIBUTING.md / docs/how-we-plan.md / docs/core-functional.md point here. Do not make core-functional a PR gate.

Test plan

  • cargo test -p rbitcoin-test --test cross_surface esplora_broadcast_visible_in_rpc_and_electrum
  • cargo test -p rbitcoin-test --test integration_multinode p2p_timeout_getaddr_and_keepalive_ping
  • cargo test -p rbitcoin-test --test electrum_protocol -- --exact electrum_tweaks_subscribe_streams_then_done
  • cargo test -p rbitcoin-electrum tweaks_subscribe
  • required GitHub Actions (fmt, deny, clippy, ast-grep, test, windows, macos, multinode, coverage)

rbitcoin-grok and others added 3 commits September 12, 2026 23:26
HTTP testmempoolaccept/sendrawtransaction on the existing run_p2p pad:
same-fee replacement is insufficient fee; a higher-fee replacement evicts
and is mined. Keep accept.rs fee-rule units.

Co-authored-by: Cursor <cursoragent@cursor.com>
V2PlainSession::outbound_bip324 lets the in-tree client send a custom
first application message. Assert disconnect, not log strings.
handshake_disconnect_log_needles stays for format.

Co-authored-by: Cursor <cursoragent@cursor.com>
Cake subscribe still streams one-height result, notifies, then done.
Height 2 now pins tweak_from_tx on a P2WPKH→P2TR spend. Drop the
dispatch twin. Core functional stays nightly, not a PR gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
Comment thread crates/rbitcoin-test/tests/electrum_protocol.rs Dismissed
Comment thread crates/rbitcoin-test/tests/electrum_protocol.rs Dismissed
Comment thread crates/rbitcoin-test/tests/electrum_protocol.rs Dismissed
Stand the testing-audit rules in TESTING.md (extend catalog journeys,
keep guts Core cannot replace, do not grow smoke or two_node).
AGENTS.md / CONTRIBUTING / how-we-plan point here so later agents
do not make core-functional a PR gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
@reardencode
reardencode merged commit 053d5b0 into master Sep 13, 2026
16 checks passed
@rearden-grok
rearden-grok Bot deleted the test/rbf-handshake-bip352 branch September 13, 2026 18:05
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.

2 participants