From aa5f17ec3cb57abb22d0a262b20323c95c030c1f Mon Sep 17 00:00:00 2001 From: evoskuil Date: Wed, 8 Jul 2026 21:13:39 -0400 Subject: [PATCH 1/2] Remove invalid assertion. --- src/chasers/chaser_validate_capture.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/chasers/chaser_validate_capture.cpp b/src/chasers/chaser_validate_capture.cpp index 15ff20ef..269c9e3d 100644 --- a/src/chasers/chaser_validate_capture.cpp +++ b/src/chasers/chaser_validate_capture.cpp @@ -94,8 +94,6 @@ bool chaser_validate::do_multisig(const hash_digest& digest, const ec_compresseds& points, const ec_signatures& signs, const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT { - BC_ASSERT(points.size() == signs.size()); - multisig_ += points.size(); const auto id = (*sequence)++; if (is_limited(id)) return false; From 2522d5e65d8983c75fea4af01c630519f7d14de0 Mon Sep 17 00:00:00 2001 From: evoskuil Date: Wed, 8 Jul 2026 21:32:55 -0400 Subject: [PATCH 2/2] Remove/refactor dead code (threshold correlate). --- .../bitcoin/node/chasers/chaser_validate.hpp | 6 +++--- src/chasers/chaser_validate_capture.cpp | 18 ++++++------------ 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/include/bitcoin/node/chasers/chaser_validate.hpp b/include/bitcoin/node/chasers/chaser_validate.hpp index 5c4572b6..9c86fddc 100644 --- a/include/bitcoin/node/chasers/chaser_validate.hpp +++ b/include/bitcoin/node/chasers/chaser_validate.hpp @@ -107,13 +107,13 @@ class BCN_API chaser_validate const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT; bool do_schnorr(const system::hash_digest& digest, const system::ec_xonly& point, const system::ec_signature& sign, - const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT; + const header_link& link) NOEXCEPT; bool do_multisig(const system::hash_digest& digest, const system::ec_compresseds& points, const system::ec_signatures& signs, const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT; - bool do_threshold(const threshold& batch, const header_link& link, - const atomic_counter_ptr& sequence) NOEXCEPT; + bool do_threshold(const threshold& batch, + const header_link& link) NOEXCEPT; // Capture helpers. signatures get_capture(const header_link& link) NOEXCEPT; diff --git a/src/chasers/chaser_validate_capture.cpp b/src/chasers/chaser_validate_capture.cpp index 269c9e3d..d9e47bec 100644 --- a/src/chasers/chaser_validate_capture.cpp +++ b/src/chasers/chaser_validate_capture.cpp @@ -79,13 +79,10 @@ bool chaser_validate::do_ecdsa(const hash_digest& digest, bool chaser_validate::do_schnorr(const hash_digest& digest, const ec_xonly& point, const ec_signature& sign, - const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT + const header_link& link) NOEXCEPT { ++schnorr_; - const auto id = (*sequence)++; - if (is_limited(id)) return false; - const auto group = narrow_cast(id); - const auto set = archive().set_signature(digest, point, sign, group, link); + const auto set = archive().set_signature(digest, point, sign, link); if (!set) fault(error::batch6); return set; } @@ -104,13 +101,10 @@ bool chaser_validate::do_multisig(const hash_digest& digest, } bool chaser_validate::do_threshold(const threshold& batch, - const header_link& link, const atomic_counter_ptr& sequence) NOEXCEPT + const header_link& link) NOEXCEPT { threshold_ += batch.tuples.size(); - const auto id = (*sequence)++; - if (is_limited(id)) return false; - const auto group = narrow_cast(id); - const auto set = archive().set_signatures(batch, group, link); + const auto set = archive().set_signatures(batch, link); if (!set) fault(error::batch8); return set; } @@ -131,9 +125,9 @@ signatures chaser_validate::get_capture(const header_link& link) NOEXCEPT .log = BIND_THIS(do_log, _1), .fire = BIND_THIS(do_fire, _1, _2), .ecdsa = BIND_THIS(do_ecdsa, _1, _2, _3, link, sequence), - .schnorr = BIND_THIS(do_schnorr, _1, _2, _3, link, sequence), + .schnorr = BIND_THIS(do_schnorr, _1, _2, _3, link), .multisig = BIND_THIS(do_multisig, _1, _2, _3, link, sequence), - .threshold = BIND_THIS(do_threshold, _1, link, sequence) + .threshold = BIND_THIS(do_threshold, _1, link) }; }