Skip to content

ZEUS: pub_inmemory_signer_new feature makes InMemorySigner::new public - #3

Merged
kaloudis merged 1 commit into
zeus-0.2.7from
zeus-0.2.7-pub-signer-new
Oct 8, 2026
Merged

kaloudis merged 1 commit into
zeus-0.2.7from
zeus-0.2.7-pub-signer-new

Conversation

@kaloudis

@kaloudis kaloudis commented Oct 6, 2026

Copy link
Copy Markdown

Adds a pub_inmemory_signer_new feature to lightning that makes InMemorySigner::new public, which upstream allows only under _test_utils.

Why: the zeus-vls self-recovery kit (ZeusLN/zeus-vls#269) builds InMemorySigners from vlsd's channel keys, which it derives from the customer's seed. It ships as a static release binary. Getting the constructor through _test_utils also compiles LDK's test utilities and the C++ bitcoinconsensus into the release (no musl C++ compiler in the pinned build image), and _test_utils turns off the stale channel_update check in gossip (routing/gossip.rs).

Change: one feature declaration and the cfg on the two new variants. Off by default; with the feature off the code is unchanged.

Checked: cargo check -p lightning with and without the feature. lnrod pins this rev (89b6184b) in the kit packaging PR; merging this into zeus-0.2.7 as a fast-forward keeps the rev.

@kaloudis kaloudis mentioned this pull request Oct 7, 2026
InMemorySigner::new is public only with _test_utils, which also compiles LDK's test utilities and the C++ bitcoinconsensus into the build. The zeus-vls self-recovery kit (lightningdevkit#269) builds InMemorySigners from vlsd's channel keys, which it derives from the customer's seed, and ships as a static release binary. This feature makes the constructor public with nothing else. Off by default; no behaviour change when unused.
@kaloudis
kaloudis force-pushed the zeus-0.2.7-pub-signer-new branch from 89b6184 to e65c0be Compare October 8, 2026 03:20
@kaloudis
kaloudis merged commit 62c5322 into zeus-0.2.7 Oct 8, 2026
33 checks passed
@kaloudis
kaloudis deleted the zeus-0.2.7-pub-signer-new branch October 8, 2026 05:53
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