Skip to content

Carry a configured fee claim into register_node#38

Merged
amackillop merged 1 commit into
lsp-0.7.0from
austin_mdk-981_configure-fee-claims-2
Jun 12, 2026
Merged

Carry a configured fee claim into register_node#38
amackillop merged 1 commit into
lsp-0.7.0from
austin_mdk-981_configure-fee-claims-2

Conversation

@amackillop

@amackillop amackillop commented Jun 11, 2026

Copy link
Copy Markdown

Mirror of the same change on the variant branch, applied here to the plain lsp-0.7.0 branch so the two ldk-node lines stay identical. The only difference is the rust-lightning pin: this branch tracks the plain lsp-0.2.0 lineage, so it moves aad7c226 -> bdcdf57de (M1+M2+A1) rather than the variant rev. Both tips now carry the fee-claim field, the verifier, and the new register_node parameter.

The bump forces three coupled changes, so they land together.

Client side: LSPS4ClientConfig and the internal LSPS4Client now hold an optional fee_claim, set_liquidity_source_lsps4 takes it as a third argument, and lsps4_register_node relays it on every registration. The value is opaque here, a lowercase-hex signed grant that only the LSP decodes.

Service side: the bumped LdkLSPS4ServiceConfig grew an issuer_pubkeys field with no Default, so the struct literal no longer compiles without naming it. LSPS4ServiceConfig surfaces it. This is the field the LSP role on this branch actually uses; mdkd's integration test stands up an in-process LSP from it and seeds the test-vector issuer key. An empty Vec honours no claim and keeps every peer on the standard policy.

With no claim configured the request carries None, the LSP resolves the standard policy, and behaviour is unchanged.

Mirror of the same change on the variant branch, applied here to the
plain lsp-0.7.0 branch so the two ldk-node lines stay identical. The only
difference is the rust-lightning pin: this branch tracks the plain
lsp-0.2.0 lineage, so it moves aad7c226 -> bdcdf57de (M1+M2+A1) rather
than the variant rev. Both tips now carry the fee-claim field, the
verifier, and the new register_node parameter.

The bump forces three coupled changes, so they land together.

Client side: LSPS4ClientConfig and the internal LSPS4Client now hold an
optional fee_claim, set_liquidity_source_lsps4 takes it as a third
argument, and lsps4_register_node relays it on every registration. The
value is opaque here, a lowercase-hex signed grant that only the LSP
decodes.

Service side: the bumped LdkLSPS4ServiceConfig grew an issuer_pubkeys
field with no Default, so the struct literal no longer compiles without
naming it. LSPS4ServiceConfig surfaces it. This is the field the LSP role
on this branch actually uses; mdkd's integration test stands up an
in-process LSP from it and seeds the test-vector issuer key. An empty Vec
honours no claim and keeps every peer on the standard policy.

With no claim configured the request carries None, the LSP resolves the
standard policy, and behaviour is unchanged.
@amackillop amackillop merged commit b0dee51 into lsp-0.7.0 Jun 12, 2026
4 of 34 checks passed
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.

1 participant