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

Fakechanneld for testing against real topology. #7746

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

rustyrussell
Copy link
Contributor

A replacement subdaemon which does just enough to pretend it's talking to the peer, but it's actually simulating the network. It can do this because it knows all the private keys (generated by gossmap-compress, or for l2, our test harness).

@rustyrussell rustyrussell added this to the v24.11 milestone Oct 17, 2024
If you change branches and have a generated .md file, index.rst
will pick it up.  Use the Makefile variable, not the contents of
the filesystem!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This will be used by channeld_fakenet to create replies from the peer.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
…tore.

Our gossmap_store uncompresser generates nodeids with well-known
privkeys, so we can decrypt and respond to HTLCs sent to such nodes.
By replacing channeld with a fake, we can connect a node to another
node, but then once the channel is established, allow payments to be
sent into the generated network, and respond appropriately.

This minimal version handles MPP timeouts, but doesn't insert any
delays or runtime capacity for channels.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-None: Testing only
Note the impedence mismatch between sendpay and getroutes: we have to shift
amounts and delays by 1.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
100ms to 1 second per hop.  We don't do delays on the way back though!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This means we return WIRE_TEMPORARY_CHANNEL_FAILURE on congestion.

Takes about 5 minutes here, so marked the test as slow.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
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