Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework virtual channel abstractions #2311

Open
t-bast opened this issue Jun 10, 2022 · 3 comments
Open

Rework virtual channel abstractions #2311

t-bast opened this issue Jun 10, 2022 · 3 comments

Comments

@t-bast
Copy link
Member

t-bast commented Jun 10, 2022

We currently have an AbstractCommitments trait that was introduced to support hosted channels implemented in plugins. However, this is a leaky abstraction that created many issues in the codebase, to which we found work-arounds that most likely never really worked with hosted channels.

I'd like to remove that trait and re-design from the ground up. Now that folks like @engenegr and @btcontract have some experience running and maintaining hosted channels in production, I'd like to know what abstractions eclair should provide to make it easy to implement such virtual channels. We'll most likely want a new set of messages/events, separate from the ones used by real channels, to guarantee stability across eclair releases.

Based on my current understanding, the only things that are missing today are ways to inject a virtual channel into:

  • the Router's graph, to include such virtual channels in path-finding
  • the Register, to correctly forward messages to those virtual channels
  • the Relayer, to use those virtual channels to relay payments
  • the PostRestartHtlcCleaner, to clean-up broken htlcs -> it's unclear to me why if that is really necessary?

Am I missing something? Can you provide more details about which operations happen at the boundaries between eclair and such plugins?

@evd0kim
Copy link
Contributor

evd0kim commented Jun 10, 2022

Likely we won't have any capacity to redesign HC plugin. There are only two of us with @NCrashed and we also really busy working with SBW with an option to be only persons who maintain this wallet (fork to be precise). I will try to follow your thoughts as soon as I will be sure that Asset Channels protocol, which is replacement for HC supporting ticker and price in channel state, works fine.

@evd0kim
Copy link
Contributor

evd0kim commented Jun 16, 2022

@t-bast can you help us in refactoring Hosted channels? I am asking just in case we decide to continue working on Eclair.

@t-bast
Copy link
Member Author

t-bast commented Jun 17, 2022

No, we really don't have the resources to work on something like hosted channels, we already have a very full backlog.

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

No branches or pull requests

2 participants