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

Correct the reserve minimums in `FundingScope::for_splice`

Public commit record

What the developer wrote

Authored by Leo Nash

65/100 · Adequate
Correct the reserve minimums in `FundingScope::for_splice`

The reserve we should maintain on our own transaction should be greater
than our own dust limit.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
The short version

What changed, and why it matters

This commit fixes a swap in the Lightning channel splicing code. When a channel's funding is changed via splicing, each side must keep a minimum reserve balance to prevent the other side from pushing tiny, spammy transactions. The code had accidentally used the counterparty's dust limit when calculating the reserve that protects our own transactions, and used our own fixed minimum dust limit when calculating the reserve that protects the counterparty's transactions. The patch swaps them back so each side's reserve is based on the correct dust limit. A wrong reserve could let a peer set an abnormally low reserve, potentially enabling fee-griefing or dust-spam attacks against the channel.

Recommended action

Review whether any running channels were opened or spliced with code versions containing this swap, and consider whether the incorrect reserve values could have been exploited to force uneconomical outputs. Add or strengthen unit tests that assert the exact reserve values for both holder and counterparty after splice, using distinct dust-limit values to catch future swaps.

Security signals we found

01

Incorrect reserve calculation in channel funding/splicing logic

02

Swap of holder and counterparty dust-limit inputs to reserve function

03

Potential violation of BOLT 2 channel reserve semantics

04

Risk of peer-influenced reserve being set below dust threshold

Risk score

Why this scored 57/100

Our methodology →
Potential impact 18/30
Exploitability 12/25
Stealth signal 10/15
Affected reach 8/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.