boltlabs-inc / zeekoe

Zero-knowledge layer-2 payment channels
MIT License
24 stars 1 forks source link

Create chain-agnostic `ArbiterClient` trait #346

Open marsella opened 2 years ago

marsella commented 2 years ago

As a first draft of our chain agnostic design, we'll try to decouple the zeekoe implementation from the specific Tezos instantiation. We anticipate that closing will be similar for most chains, while establishing may be slightly to very different (e.g. depending on the number of operations required, whether it's efficient to batch establishing and funding, etc). However, we will start by just defining a trait that includes all the functions currently called for the TezosClient. Then, refactor the main body of zeekoe to use the trait instead of hardcoded Tezos calls.

Expected places that need changing:

This decision per discussion with @gijsvl, @indomitableSwan.