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

validation: do not add the snapshot block to candidates of bg chainstate

Public commit record

What the developer wrote

Authored by Martin Zumsande

85/100 · Strong
validation: do not add the snapshot block to candidates of bg chainstate

The snapshot block needs to be added to the candidates set of the
assumed-valid chain because it will be the tip of that chainstate
right after snapshot activation.
However, adding it also to the background chainstate is not necessary
for anything. Before, the index would linger in the set without being
connectable. It will be eventually added to the set as part of the
normal block download - no extra logic is necessary here.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode
The short version

What changed, and why it matters

This commit fixes a minor bookkeeping error in Bitcoin Core's block validation engine. During a special one-time process called assumeutxo snapshot activation, the snapshot block was being incorrectly added to the candidate set of both the new lightweight chain and the older background chain. The background chain does not need or want this block as a candidate, because it cannot connect it. The patch removes the extra entry so the candidate set matches the intended design. There is no direct evidence this causes a security exploit, but it removes a confusing inconsistency that could theoretically affect validation decisions.

Recommended action

Treat as a correctness fix with low security urgency. Reviewers should confirm that removing the snapshot block from the background candidate set does not alter tip-selection behavior in any observable way beyond the intended cleanup. No immediate user action is required.

Security signals we found

01

Logic error in chainstate candidate selection

02

Assumeutxo snapshot activation edge case

03

Background chainstate received an unconnectable candidate block

04

No explicit security claim in commit message

Risk score

Why this scored 23/100

Our methodology →
Potential impact 5/30
Exploitability 2/25
Stealth signal 4/15
Affected reach 3/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.