Peter Neuroth
581eb3076f
lsp_plugin: add lsps2_getinfo handler and call
...
This commit adds the lsps2_get_info call defined by BLIP052. It also
adds a test policy plugin that the LSP service plugin uses to fetch the
actual fee menu from to separate the concerns of providing a spec
compliant implementation of an LSP and making business decisions about
fee prices.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
17a9a928f5
lsp_plugin: add lsps2 models
...
Add models and options to enable lsps2 on the lsp
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
ef539dd52e
lsp_plugin: refactor lsps0listprotocols handler
...
Move the handler to a separate file, and add lsps2_enabled flag to the
handler.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
bbcb51d98e
lsp_plugin: check that featurebit is set and that
...
the client is connected to the lsp before sending a request
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
6c5c302c26
lsp_plugin: change listprotocols request
...
Using lsp_id instead of peer as identifier
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
e36fdeff81
lsp_plugin: add primitives for messages
...
Adds some primitives defined in lsps0 for other protocol messages.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
3606106c4f
lsp_plugin: add dev-eneabled flag for client
...
While this is still experimental, we only want to enable the client when
explicitly defined!
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
511e61d784
lsp_plugin: add sane error to listprotocols
...
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
c52da76a57
lsp_plugin: add fn to wrap payload with peer id
...
We need to somehow access the peer id in the jrpc server to know where
the response should go. This seems to be the most convenient way for
now. We may unclutter this in the future if this results in performance
issues.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
60174f73f8
lsp_plugin: change id type in jsonrpc
...
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-11-13 10:58:49 +10:30
Peter Neuroth
ae226cbf7a
lsps: Add additional documentation
...
Adds some additional documentation to the json-rpc v2.0 messages
and error types.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-05-02 13:34:21 -07:00
Peter Neuroth
e879f88eb0
lsps: Add service implementation for LSPS0
...
Implements the LSPS0 service plugin for core lightning
Changelog-Added: lsps-plugin: lsps0 service support
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-05-02 13:34:21 -07:00
Peter Neuroth
f3f222f39f
lsps: Add client implementation of LSPS0
...
We want a working client to run some integration tests.
Changelog-Added: lsps-plugin: lsps0 client support
2025-05-02 13:34:21 -07:00
Peter Neuroth
4d9ed8e2fb
lsps: Implement the transport layer for lsps0
...
For lsps0 we send JSON-RPC messages via custom messages over the
lightning network. This commit adds a basic implementation based
on custom messages.
2025-05-02 13:34:21 -07:00
Peter Neuroth
68ca86ca4f
lsps: Add JSON-RPC V2 server
2025-05-02 13:34:21 -07:00
Peter Neuroth
203621a629
lsps: Implement JSON-RPC V2 client
...
Adds an async safe JSON-RPC V2 client for a generic transport layer. The
transport layer we will use later on are BOLT8 lightning messages.
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-05-02 13:34:21 -07:00
Peter Neuroth
ea5635c4c8
lsps: Implement JSON-RPC message structure
...
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com >
2025-05-02 13:34:21 -07:00