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

ln: add incoming_accountable to PendingHTLCInfo

Public commit record

What the developer wrote

Authored by Carla Kirk-Cohen

80/100 · Strong
ln: add incoming_accountable to PendingHTLCInfo

Persist as a bool so that we don't need to use Option<bool> when we
will just inevitably unwrap_or(false) the field. This means that we
won't be able to distinguish between an incoming htlc that has no TLV
set, and one that has the TLV set with a false value in it. We accept
this loss of information for the sake of simplicity in the codebase.
✓ 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 adds a new boolean flag called incoming_accountable to an internal data structure (PendingHTLCInfo) used when routing Lightning payments. The flag records whether the node is expected to be 'accountable' for resolving an incoming payment on time. It is read from an optional TLV field in the incoming message and defaults to false when not present. The change is a straightforward plumbing/data-model update; it does not by itself fix or introduce a security flaw, but it is part of work that could affect how reputation and payment-timeout penalties are tracked in the future.

Recommended action

No immediate action required. Monitor follow-up commits that consume incoming_accountable to ensure the flag is validated against the expected channel counterparty and that false/absent semantics do not create edge cases in reputation scoring or HTLC timeout handling. Review test coverage for the new field once behavior depends on it.

Security signals we found

01

New persisted field related to HTLC accountability/reputation

02

Loss of semantic distinction between absent TLV and explicitly false TLV

03

Experimental field per code comment

04

No validation or authorization checks added around the new field

05

Serialization uses default_value false, preserving backward compatibility

Risk score

Why this scored 26/100

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