Why
The end to end tests do not prepare the SNARK caches. Each node downloads the SRS and computes its circuit keys lazily during the first aggregation, which forces a long epoch length and makes the test runs slow and vulnerable to a download timeout.
What
Prepare the SRS and the circuit keys before the nodes start, so the first aggregation only pays for the proving.
How
Why
The end to end tests do not prepare the SNARK caches. Each node downloads the SRS and computes its circuit keys lazily during the first aggregation, which forces a long epoch length and makes the test runs slow and vulnerable to a download timeout.
What
Prepare the SRS and the circuit keys before the nodes start, so the first aggregation only pays for the proving.
How
mithril-end-to-end/src/mithril/infrastructure.rs)