Anyprevout functional tests using eltoo scripts

Anyprevout functional tests using eltoo scripts
From: Richard Myers @ 2021-08-17 11:24 UTC ( / )
  To: bitcoin-dev



I implemented some basic functional test scripts for the eltoo channel update scheme to better understand BIP-118/Anyprevout (APO). My tests are based on the rough Taproot eltoo scripts AJ Towns outlined on this list back in 2019. These tests also require AJ's APO branch of core. This is just the start of a real eltoo implementation, but I wanted to share it to get feedback and to help others interested in understanding APO and eltoo.

If you want to take a quick look, my functional tests are implemented in the function "test_tapscript_eltoo":
https://github.com/remyers/bitcoin/blob/eltoo-anyprevout/test/functional/simulate_eltoo.py#L1623

I've also written a blog post that describes in more detail how to run the tests and includes notes that I hope will be helpful to anyone else interested in APO and eltoo:
https://yakshaver.org/2021/07/26/first.html

I'd love to work with anyone else interested in eltoo and APO who wants to help extend and elaborate these tests. Any PRs for the eltoo tests or blog post would be very welcome.

Many thanks to AJ and Christian Decker who have both been very generous with their time in helping me understand the finer details of APO and eltoo.

All the best,

-- Richard