-
Notifications
You must be signed in to change notification settings - Fork 1k
LSP-Plugin: Add MPP support #8948
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
Open
nepet
wants to merge
41
commits into
ElementsProject:master
Choose a base branch
from
nepet:plugins/lsps2/mpp-fsm
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
41 commits
Select commit
Hold shift + click to select a range
85ba3e4
plugins(lsps2): add session FSM for LSPS2 payment collection
nepet 2d79a6c
plugins(lsps2): add session actor with action executor boundary
nepet 6fe7ff7
plugins(lsps2): add session manager and unify HTLC handling
nepet d4657ab
plugins(lsps2): add integration tests for session lifecycle
nepet 3b9804f
plugins(lsps2): add restart recovery for session persistence
nepet d7ee591
plugins(lsps2): simplify DatastoreProvider to focused trait
nepet 95454d2
plugins(lsps2): add EventSink trait for session event notification
nepet 4d32656
plugins(lsps2): decouple lsps2 crate from CLN-specific types
nepet 5213d99
plugins(lsps2): simplify actor and session manager
nepet eb52a1d
plugins(lsps2): make collect timeout dev config
nepet ddeb9de
plugins(lsps2): route recovered sessions through forward_event path
nepet f140c32
lsps2: adding list_finalized_sessions to the DatastoreProvider
072d16f
plugins(lsps2): fix onion failure codes sent when failing HTLCs
nepet 9dddf74
plugins(lsps2): key HTLCs by (incoming channel, htlc id)
nepet 0bfa3af
plugins(lsps2): forward replayed HTLCs to recovered sessions
nepet 203be33
plugins(lsps2): prevent double channel funding for one payment hash
nepet 126cef4
plugins(lsps2): fail held HTLCs before cltv expiry, not after
nepet 62f31ad
plugins(lsps2): spawn only one channel-poll task per session
nepet da807f4
plugins(lsps2): harden recovery loop and fee-overflow handling
nepet 1ca6efd
plugins(lsps2): advertise client_trusts_lsp and validate payment size…
nepet 7f3b805
plugins(lsps2): fix opening fee base and zero extra_fee TLV
nepet 438354c
plugins(lsps2): make channel reserve opt-in and pin datastore compat
nepet 06ad8f1
plugins(lsps2): only abandon session once no forwarded parts remain
nepet 8ded411
plugins(lsps2): cleanups from review
nepet c7bbb47
plugins(lsps2): make finalize_session idempotent
nepet 0d3c433
plugins(lsps2): only expire offers when starting a new session
nepet c4fb1fb
plugins(lsps2): always release funding inputs when abandoning
nepet 8549d0a
pytest: cover finalize_session over an existing finalized entry
nepet 6aa8794
docs: add experimental lsps options to config
nepet 69d9795
plugins(lsps2): Add u16 zero len to TEMPORARY_CHANNEL_FAILURE
nepet 45033b6
tests: wait for mempool on lsps2 tests
nepet c2ec421
tests: relax collect timeout on lsps2 plugin tests
nepet 98becca
tests: shorten long test name
nepet ab7539b
plugins(lsps2): route parts by scid, not payment hash alone
nepet 4acf561
plugins(lsps2): fund at most one channel per jit scid
nepet be970b5
plugins(lsps2): monitor recovered sessions for channel death
nepet a9a44cc
plugins(lsps2): release the channel when recovery finds all forwards …
nepet 31e43da
plugins(lsps2): bound variable-amount payments by the policy size range
nepet 85fb96b
tests: channel_ready wait is bounded
nepet 8449fad
tests: fix flaky reserved-utxo check in channel_ready wait test
nepet afe8d68
tests: tolerate late channel_update in force-close-abandoned test
nepet File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there no way to identify a peer that is unable to set a zero-reserve and reply based on that, rather than setting the degraded mode as default, and asking users to configure an extra flag to get the desired default behavior? Also this means a node is either fully non-0-reserver or fully 0-reserve, no mixing possible.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, do not amend this PR, create a new follow up one. experimental changes are not logged in the changelog anyway.