AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Low 42 Bitcoin

Fix pending multisig signature retries

Public commit record

What the developer wrote

Authored by rockstardev

50/100 · Thin
Fix pending multisig signature retries
✓ Descriptive subject✓ Names a concrete action or component✓ Names security-relevant behavior explicitly! No meaningful explanatory body
The short version

What changed, and why it matters

This commit fixes a bug in BTCPay Server's multisig transaction handling. Previously, the service could get stuck in a 'Pending' state even when enough valid signatures had been collected, because it discarded new signature submissions that didn't immediately improve progress and didn't retry finalizing the transaction. The fix keeps distinct-but-not-yet-helpful PSBTs (partially signed transactions), records them, and retries finalization each time a new PSBT arrives, allowing later valid signatures to complete the transaction.

Recommended action

Review the updated progress accounting and finalization retry logic for correctness across all multisig threshold configurations. Ensure the new test cases exercise edge cases such as repeated identical PSBTs, invalid signatures from eligible keys, and mixed valid/invalid signature sets. Consider whether any pending transactions in production are stuck in the Pending state and may need reprocessing.

Security signals we found

01

Logic flaw in multisig signature collection could leave transactions permanently pending despite sufficient valid signatures

02

Previously ignored distinct PSBTs that did not immediately increase signature progress

03

Missing retry of transaction finalization after collecting additional signatures

04

Progress accounting used Math.Min(valid sigs, threshold) instead of actual valid sig count, potentially under-reporting collected signatures

05

Fix adds structured logging for finalization failures and duplicate PSBT detection

Risk score

Why this scored 42/100

Our methodology →
Potential impact 12/30
Exploitability 8/25
Stealth signal 6/15
Affected reach 7/15
Confidence 6/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.