Skip to content

Added splicing plumbing - #736

Merged
cdecker merged 8 commits into
mainfrom
feature/splicing_support
Sep 3, 2026
Merged

Added splicing plumbing#736
cdecker merged 8 commits into
mainfrom
feature/splicing_support

Conversation

@ihordiachenko

@ihordiachenko ihordiachenko commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Rationale

This PR prepares Greenlight for splicing support without waiting for the VLS side of things. This establishes the CLN API, binding, persistence, and policy boundaries needed for later signer integration.

What Changed

  • Added low-level CLN splice RPC plumbing and v26.06 bindings.
  • Persisted splice sessions, wallet PSBT context, authorization metadata, and outpoint indexes.
  • Captured relevant CLN response facts and linked PSBTs to splice sessions.
  • Added a signer policy resolver that validates known invariants and fails closed at the missing VLS proof boundary.
  • Added trace and regtest coverage for policy decisions and signer rejections.

Trade-offs

  • Splices are exposed via experimental-splicing Cargo feature but cannot complete until VLS provides the required signing proofs.

Handling PBSTs

Greenlight links each splice PSBT to its splice session during SpliceInit and records whether funding and signing were authorized. The signer rejects it unless the link and signing approval are present. Unrelated PSBTs remain outside splice handling and follow the existing signer policy.

@ihordiachenko
ihordiachenko force-pushed the feature/splicing_support branch 4 times, most recently from 6de2272 to 2b9b71d Compare July 22, 2026 00:53
@ihordiachenko
ihordiachenko marked this pull request as ready for review July 22, 2026 13:19
@ihordiachenko
ihordiachenko requested a review from cdecker July 22, 2026 21:08
Comment thread libs/gl-client-py/glclient/__init__.py
Comment thread libs/gl-client/src/persist.rs Outdated
Comment thread libs/gl-client/src/persist/splice.rs Outdated
Comment thread libs/gl-client/src/persist/splice.rs Outdated
@cdecker

cdecker commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Sorry for the [ISSUE] prefixes in the comments, I'm trying out some new tooling to help with reviews (tuicr a CLI review tool).

@ihordiachenko ihordiachenko changed the title Added splicing plumbing Draft: Added splicing plumbing Aug 10, 2026
@ihordiachenko
ihordiachenko force-pushed the feature/splicing_support branch 2 times, most recently from b543a5b to 4b3fa1b Compare August 11, 2026 18:14
@ihordiachenko ihordiachenko changed the title Draft: Added splicing plumbing Added splicing plumbing Aug 12, 2026
@ihordiachenko
ihordiachenko force-pushed the feature/splicing_support branch from fc88d4e to 02095aa Compare August 12, 2026 16:06
@cdecker
cdecker force-pushed the feature/splicing_support branch from 02095aa to 162cc0a Compare September 3, 2026 12:38
@cdecker

cdecker commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Ok, reviewed once more, and rebased. This is ready to go in, sorry for the slowness in reviewing.

@cdecker
cdecker merged commit 74e694c into main Sep 3, 2026
16 checks passed
@cdecker
cdecker deleted the feature/splicing_support branch September 3, 2026 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants