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

askrene: fixed a timeout corner case

Public commit record

What the developer wrote

Authored by Lagrang3

68/100 · Adequate
askrene: fixed a timeout corner case

Changelog-Fixed: askrene: fixed a class of corner cases that cause askrene main loop to timeout instead of quickly failing, thus wasting runtime.

Signed-off-by: Lagrang3 <lagrang3@protonmail.com>
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit fixes a bug in Core Lightning's payment routing plugin (askrene) where certain impossible or severely constrained payments would make the routing engine loop until a timeout instead of quickly giving up. The fix detects tiny or nearly-undeliverable payment paths, disables the bottleneck channel, and removes the bad path so the engine can fail fast. It is a denial-of-service/availability issue rather than theft of funds, and it only affects routing attempts that already violate constraints.

Recommended action

Treat as a routine bug-fix patch with minor availability impact. Reviewers should verify that remove_bottleneck() never disables a channel incorrectly when deliverable is merely small but valid, and that the 1000 msat / 20% thresholds are safe for all network sizes. Re-run test_impossible_payment and related askrene tests before release.

Security signals we found

01

Denial-of-service/availability: routing operation timeout due to algorithmic loop

02

Resource exhaustion: wasted runtime in askrene main loop

03

Algorithmic constraint violation: HTLC max and fee constraints made a path effectively undeliverable

04

New defensive guard: early removal of zero-amount and near-zero-deliverable flows

05

New bottleneck-disabling logic to prune impossible channels

06

Test re-enabled: test_impossible_payment validates the timeout corner case

Risk score

Why this scored 32/100

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