Skip to content

Add LSPS0 Client and Service Plugin #8227

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

nepet
Copy link
Collaborator

@nepet nepet commented Apr 10, 2025

This PR implments the basic transport mechanism (lsps0) for LSP clients and services as described in https://github.com/lightning/blips/blob/master/blip-0050.md

lsps0 describes how LSPs communicate with their clients, wich basically is JSON-RPC v2.0 via custom lightning messages.

nepet added 8 commits April 10, 2025 15:18
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com>
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>
For lsps0 we send JSON-RPC messages via custom messages over the
lightning network. This commit adds a basic implementation based
on custom messages.
We want a working client to run some integration tests.

Changelog-Added: lsps-plugin: lsps0 client support
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>
Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com>
Adds some additional documentation to the json-rpc v2.0 messages
and error types.

Signed-off-by: Peter Neuroth <pet.v.ne@gmail.com>
@nepet nepet requested a review from cdecker April 10, 2025 16:18
@rustyrussell
Copy link
Contributor

I don't think the service does anything right now, so it's probably OK that it's enabled by default. But obviously we'll want some options and documentation once it does...

@ShahanaFarooqui ShahanaFarooqui added this to the v25.05 milestone Apr 15, 2025
@cdecker
Copy link
Member

cdecker commented Apr 24, 2025

Very nice PR, looks like there is either a missing include of a Makefile or the Makefile was not committed, otherwise good to go 👍

ACK 80cb8c4

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants