Uh oh!
There was an error while loading. Please reload this page.
Add BOLT12 support to LSPS2 via custom Router implementation - #4463
Add BOLT12 support to LSPS2 via custom Router implementation#4463tnull wants to merge 12 commits into
Router implementation#4463Conversation
👋 Thanks for assigning @TheBlueMatt as a reviewer! |
2cb0546 to
25ab3bcCompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
ldk-reviews-bot
commented
Mar 7, 2026
🔔 1st Reminder Hey @jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Mar 9, 2026
🔔 2nd Reminder Hey @jkczyz! This PR has been waiting for your review. |
Uh oh!
There was an error while loading. Please reload this page.
25ab3bc to
5786409CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
No issues found. I re-reviewed the full current state of the PR at head commit What I verified this pass:
One low-confidence observation I deliberately did not file (consistent with prior passes): No inline comments posted this pass. |
5786409 to
98a9e9dCompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
8800d48 to
7ca886dCompareCodecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@## main #4463 +/- ##
==========================================
+ Coverage 87.08% 87.13% +0.04%
==========================================
Files 161 162 +1 Lines 109255 109707 +452 Branches 109255 109707 +452 ==========================================
+ Hits 95147 95589 +442 - Misses 11627 11632 +5 - Partials 2481 2486 +5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
7ca886d to
2ff16d7CompareUh oh!
There was an error while loading. Please reload this page.
bcc4e10 to
5602e07CompareUh oh!
There was an error while loading. Please reload this page.
ea05389 to
3acf915Compareldk-reviews-bot
commented
Jun 13, 2026
🔔 2nd Reminder Hey @jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 15, 2026
🔔 3rd Reminder Hey @jkczyz! This PR has been waiting for your review. |
Let BOLT12 blinded payment paths include LSPS2 parameters decoded from payment metadata, so JIT-channel paths work without router state for the intercepted SCID. Co-Authored-By: HAL 9000
Fail async static-invoice path creation when no LSPS2 metadata exists. This prevents automatic refreshes from uploading unusable invoices. Co-Authored-By: HAL 9000
Allow offer metadata maps to key entries directly by offer id without wrapping the identifier. Co-Authored-By: HAL 9000
Let async recipients refresh receive offers explicitly, wait for readiness, and preserve payment metadata across static-invoice refreshes. Co-Authored-By: HAL 9000
Return a completed future when an async receive offer is already ready. Drop redundant public wrappers now covered by lower-level APIs. Co-Authored-By: HAL 9000
26da1dd to
abdecc2Compareldk-reviews-bot
commented
Jun 17, 2026
🔔 4th Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 20, 2026
🔔 5th Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 20, 2026
🔔 1st Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 22, 2026
🔔 6th Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 22, 2026
🔔 2nd Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 24, 2026
🔔 7th Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jun 24, 2026
🔔 3rd Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
Uh oh!
There was an error while loading. Please reload this page.
Co-Authored-By: HAL 9000
Align LSPS2 CLTV deltas with the wire format and LDK routing types. Co-Authored-By: HAL 9000
Clarify how LSPS2 invoice parameters relate to BOLT11 route hints and BOLT12 blinded payment path creation. Co-Authored-By: HAL 9000
Let integration tests force specific blinded payment paths, so LSPS2 BOLT12 routing behavior can be exercised deterministically. Co-Authored-By: HAL 9000
Exercise decoder-provided LSPS2 parameters across custom-router, end-to-end, compact message path, and async-payment BOLT12 flows. Co-Authored-By: HAL 9000
Assert no static invoice is uploaded before LSPS2 metadata is ready. Keep LSPS2 integration tests compiling with current upstream types. Co-Authored-By: HAL 9000
Record the new LSPS2 BOLT12 routing support and its compatibility note for the next release notes. Co-Authored-By: HAL 9000
abdecc2 to
a83d765Compareldk-reviews-bot
commented
Jun 27, 2026
🔔 8th Reminder Hey @TheBlueMatt@jkczyz! This PR has been waiting for your review. |
ldk-reviews-bot
commented
Jul 3, 2026
Hi @tnull, Thanks for your contributions to After too many struggles with bugs, outages, contributor bans, and, finally, a multi-week CI ban, the rust-lightning project is moving off of GitHub for day-to-day development. You can still file issues and access the git tree here, but PRs will now take place exclusively at https://git.rust-bitcoin.org/. As such, this PR has been migrated to https://git.rust-bitcoin.org/lightningdevkit/rust-lightning/pulls/4463 If you log in using GitHub (or otherwise link your GitHub account from https://git.rust-bitcoin.org/user/settings/security), ownership of your PRs, issues, and comments will automatically transfer. To push updates to this PR, you'll need to use |
Closes#4272.
This is an alternative approach to #4394 which leverages a custom
Routerimplementation on the client side to inject the respective.LDK Node integration PR over at lightningdevkit/ldk-node#817