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

offers: limit expiry to offer limit, or 10 minutes with currency conversion.

Public commit record

What the developer wrote

Authored by Rusty Russell

73/100 · Adequate
offers: limit expiry to offer limit, or 10 minutes with currency conversion.

This mirrors the previous commit, where we did it for recurring offers.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Fixed: Offers: we set a 10 minute expiry when we create invoices for offers in other currencies.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit tightens the expiration time on invoices created from BOLT12 offers. Previously, all such invoices defaulted to a 2-hour payment window. Now, if the offer has an absolute expiry, the invoice expires when the offer expires; and if the offer uses a foreign currency, the invoice expires in 10 minutes (or a developer-tunable value). This reduces the window in which an attacker can exploit stale exchange rates or expired offers.

Recommended action

Review the default dev_currency_expiry value and ensure it is appropriate for production currency conversions; confirm that the absolute-expiry cap correctly handles edge cases where offer_absolute_expiry is in the past or very near invoice_created_at.

Security signals we found

01

BOLT12 invoice expiry now bounded by offer absolute expiry

02

Currency-converted invoices use short expiry to limit exchange-rate exposure

03

New regression test added for expiry behavior

04

Mirrors a prior fix for recurring offers, indicating a class of issue being addressed

Risk score

Why this scored 45/100

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