Skip to content

Expose APIs to access node's supported feature flags#810

Draft
enigbe wants to merge 1 commit intolightningdevkit:mainfrom
enigbe:2026-02-expose-node-features-api
Draft

Expose APIs to access node's supported feature flags#810
enigbe wants to merge 1 commit intolightningdevkit:mainfrom
enigbe:2026-02-expose-node-features-api

Conversation

@enigbe
Copy link
Contributor

@enigbe enigbe commented Feb 26, 2026

What this PR does

Expose APIs to access the node's supported feature flags. The public API on Node include:

  • node_features()
  • init_features()
  • channel_features()
  • bolt11_invoice_features()

With this, we can read the features supported by the node as used in node announcements, channel announcements, init messages, and BOLT 11 invoices. The plan is to modify ldk-server's handle_get_node_info_request and make features available on GetNodeInfoResponse so that the node's supported features are available to any requesting client.

lnrpc and cln-grpc make these fields available in the response to get_node_info.

Additionally, we write a small integration test to assert that, at minimum, certain features are supported by default, for example, keysend.

This is in relation to an exploratory sim-ln PR seeking to support/integrate ldk-node/server.

With this, we can read the features supported by the node
as announced in node and channel announcements, within
an init message, and within a BOLT 11 invoice.

We write a small integration test to assert that, at minimum,
certain features are supported by default, for example, keysend
support.
@ldk-reviews-bot
Copy link

ldk-reviews-bot commented Feb 26, 2026

👋 Hi! This PR is now in draft status.
I'll wait to assign reviewers until you mark it as ready for review.
Just convert it out of draft status when you're ready for review!

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