-
Notifications
You must be signed in to change notification settings - Fork 957
BOLT12 recurrence spec update #8398
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
rustyrussell
merged 14 commits into
ElementsProject:master
from
rustyrussell:guilt/bolt12-recurrence-update
Oct 1, 2025
Merged
BOLT12 recurrence spec update #8398
rustyrussell
merged 14 commits into
ElementsProject:master
from
rustyrussell:guilt/bolt12-recurrence-update
Oct 1, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
efafa63
to
9d855fa
Compare
77c6052
to
420582f
Compare
ea34758
to
d7993b7
Compare
d7993b7
to
66640c3
Compare
Use months instead. Changelog-EXPERIMENTAL: Protocol: BOLT 12 recurrence `years` removed; use 12 x months.
Offer_absolute_expiry should be used if you want to require starting at the start. Changelog-EXPERIMENTAL: Protocol: BOLT 12 recurrence `start_any_period` removed, use expiry if you need to restrict when they can start using the offer.
Changes: * Fields renumbered to their draft values + billion. * offer_recurrence now comes in compulsory or optional (backwards compat) flavors. * `proportional_amount` is now inside `offer_recurrence_base` not `offer_recurrence_paywindow`. * New field `invreq_recurrence_cancel`. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Changelog-EXPERIMENTAL: Draft specification for recurring offers changed: old recurring offers will no longer work.
And fix incorrect comment on its use in the header! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
If you're doing just-in-time stock management, it would be annoying to discover this wasn't allowed! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We added this to the recurrence spec: the offer expiration only applies to the first request, not subsequent ones. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We're going to want this for cancelrecurringinvoice. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We're going to want this for cancelrecurringinvoice. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
We're going to want this for sending invreq_recurrence_cancel invoice_requests. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
`fetchinvoice` variant, for setting invreq_recurrence_cancel instead. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Changelog-EXPERIMENTAL: `cancelrecurringinvoice` command to send new "don't expect any more invoice requests" msg to recurring bolt12 invoices.
In this case, we make an immediately-expiring invoice. This correctly blocks any successive requests for invoices, as per the spec requirement. This means we have to handle invoice_requests without reply_path, amounts or quantity *if* they specify invreq_recurrence_cancel. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
66640c3
to
6783ece
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This means we now do cancellation of recurring offers.
We use the experimental range for this, instead of the actual range used in the spec PR (lightning/bolts#1240)
Closes: #8392