anton-rs / kona

A suite of `no_std` components for the OP Stack state transition function and L2 chain derivation.
https://anton-rs.github.io/kona
MIT License
121 stars 30 forks source link

feat(client): Channel Timeout Tests #428

Open refcell opened 1 month ago

refcell commented 1 month ago

Description

427 implements an optimization for the client program to avoid needing to walk back the full chainnel_timeout window of L1 blocks, but this codepath isn't tested.

This issue is to write a test suite that incorporates the client's driver logic that walks back the channel_timeout window.

The first test case to cover is that a partial channel causes the client to fail. This currently doesn't work since when witness data is missing, the client is stuck in an infinite loop waiting for the oracle to retrieve the data.

A comprehensive test case to cover the happy path should do the following.

refcell commented 1 month ago

We should be able to use derivation test fixtures from https://github.com/ethereum-optimism/tests