Skip to content

feat(node): join V2 signing rounds only from acting leaders - #5143

Draft
haiyuechen-nearone wants to merge 8 commits into
5123-answer-v2-foreign-tx-requests-with-a-signed-verdictfrom
5124-accept-v2-foreign-tx-attempts-only-from-acting-leaders
Draft

haiyuechen-nearone wants to merge 8 commits into
5123-answer-v2-foreign-tx-requests-with-a-signed-verdictfrom
5124-accept-v2-foreign-tx-attempts-only-from-acting-leaders

Conversation

@haiyuechen-nearone

@haiyuechen-nearone haiyuechen-nearone commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Closes #5124

A V2 signer joins a signing round only when the node that sent Start is an acting leader of the request in its view, and at most three rounds per request and leader.

Reviewer notes:

  • ensure_acting_leader returns an ActingLeader proof bound to the request, and join_round takes only that proof. The signer checks the leader before it waits for the evidence, and counts the round last, so a refused round uses up nothing.

  • A backup's turn is timed from the signer's own index time, accepted up to 3 seconds early.

  • One counter covers verdict and inconclusive rounds. feat(node): sign an inconclusive when no V2 verdict can reach the threshold #5145 calls it on the inconclusive path.

  • queue.rs was already over 1,000 lines. open_requests.rs tests moved to their own file.

…t' into 5124-accept-v2-foreign-tx-attempts-only-from-acting-leaders

Resolve toward the collect first model: take the lower branch's open requests, signing
round and test files, drop the attempt follower and its tests, and keep the acting leader
check with the index time of each open request on top.
…t' into 5124-accept-v2-foreign-tx-attempts-only-from-acting-leaders

Keep the acting leader check and the round cap next to the new evidence size check of the
signer. Build the provider of the inspection tests from the shared test support too.
@haiyuechen-nearone haiyuechen-nearone changed the title feat(node): accept V2 foreign tx attempts only from acting leaders feat(node): join V2 signing rounds only from acting leaders Nov 12, 2026

This branch has not been deployed

No deployments
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.

Accept V2 signing rounds only from acting leaders

1 participant