lightninglabs / lightninglabs/pool

batch+config: extend configuration to allow pool to open channels from/to a cohort of lnd nodes

Open
#34 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

batch config funding lnd
Dominant language
Go
Stars
259
Forks
51
PR merge metrics
No merged PRs in 30d

Description

Over time, we have plans to being to decouple the roles of the capital provider from the routing node that actually allocates the capital on the network. In addition to this, a use case we want to support is a wallet author remotely purchasing channels for their user base. We can enable both of these features by extending the configuration of `poold` to allow it to connect to a _set_ of `lnd` nodes.

These nodes would only be used to open channels, with `lmd` getting its funds from a single backing `lnd` node. In order to implement this feature, we'll need to further abstract channel funding and channel shim creation, and also come up with a sane configuration format to specify the set of `lnd` nodes. The [upcoming lnd feature to allow custom macarons based on URIs](https://github.com/lightningnetwork/lnd/pull/4463) can be used to make this feature safer, by ensuring the capital provider only has the ability to open channels and register funding shims.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by examining the poold configuration and the existing channel funding and channel shim creation paths. Define how a set of lnd nodes is specified while funds continue to come from one backing node, and use the custom macaroon URI feature to constrain permissions; done means poold can open channels through the configured cohort.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.