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

Free holding cell upon handling a counterparty tx_abort

Public commit record

What the developer wrote

Authored by Wilmer Paulino

85/100 · Strong
Free holding cell upon handling a counterparty tx_abort

After cad88af, a few code paths that also lead to a quiescence exit were
not accounted for. This commit addresses the path where we exit
quiescence due to processing a counterparty's `tx_abort` message.
✓ 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 patch fixes a bug in LDK's Lightning splicing code. During a splice, the channel enters a quiet 'quiescence' state where new HTLCs (payments) are held in a temporary 'holding cell.' When the splice is aborted via a counterparty `tx_abort` message, the channel should exit quiescence and release any held payments. Previously, one code path forgot to free the holding cell, so legitimate queued payments could get stuck until another event triggered their release. The patch makes the `tx_abort` handler return whether quiescence was exited, and if so, immediately frees the holding cell. The included test verifies that a queued HTLC is sent out after `tx_abort`.

Recommended action

Treat as a reliability/availability bug fix rather than an active exploit. Review other quiescence exit paths to ensure holding cells are freed consistently. Users running splice-enabled nodes should upgrade to avoid stuck HTLCs during splice aborts.

Security signals we found

01

Logic error causing payment/HTLC stalls after splice abort

02

Missing cleanup of quiescence holding cell on a specific exit path

03

Regression test added demonstrating stuck-then-freed HTLC behavior

04

Follow-up to prior fix cad88af for related quiescence exit paths

Risk score

Why this scored 44/100

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