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

mining: clarify SubmitBlock result handling

Public commit record

What the developer wrote

Authored by w0xlt

80/100 · Strong
mining: clarify SubmitBlock result handling

Make the submitBlock return value explicit and check that it stays
consistent with the BIP22 reason string, so future changes do not return
success with a reason or failure without one.

Report "inconclusive" when no specific block rejection reason is
available. This covers blocks accepted without being connected, and
processing failures where ProcessNewBlock returns false without an
invalid BlockChecked result, for example when ActivateBestChain fails
after BlockChecked reported a valid block.

Also document why no validation-interface queue drain is needed before
unregistering: BlockChecked is emitted synchronously by ProcessNewBlock,
unlike most validation signals.
✓ 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 Bitcoin Core commit tightens how the mining interface reports whether a submitted block succeeded or failed. Previously, a block could be accepted but not connected to the chain (for example, a valid but lower-work 'stale' block), and the result could be ambiguous or inconsistent. The change makes the success/failure logic explicit, adds a safety check that success and a failure reason cannot both be returned, and introduces an 'inconclusive' reason when the node cannot give a clear validation verdict. It also documents that a particular notification is synchronous, so no extra wait step is needed. There is no direct evidence this fixes an exploitable vulnerability; it is primarily a robustness and clarity improvement for mining clients.

Recommended action

Treat as a defensive robustness improvement rather than an urgent security fix. Mining pool operators and users of the IPC/mining interface should review the new 'inconclusive' reason handling. No immediate upgrade is required solely for security reasons based on this commit alone.

Security signals we found

01

Adds explicit invariant check between success result and BIP22 rejection reason

02

Clarifies ambiguous block-submission outcomes that could mislead mining clients

03

Documents synchronous BlockChecked emission to prevent future unsafe unregistration assumptions

04

Adds functional test for stale-block submission behavior

Risk score

Why this scored 24/100

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