Part of #20257 (see also #20415/#21196). Blocks #20266 — after #21787 lands, this harness is the last in-process op-geth L2 EL consumer in the tree.
Context
rust/kona/tests/proofs/ (the Go tests driving kona fault-proof witness generation) builds an in-process op-geth L2 engine via the op-e2e action-test helpers (NewL2Engine + EngineWithP2P, pervasive engine.L2Chain() — ~81 uses across ~28 files) for direct state/preimage access. #21787 removes that machinery from op-e2e/actions; the subset the kona harness needs is relocated to a contained, kona-proofs-only package (op-e2e/e2eutils/gethengine) so the actions suite is genuinely geth-EL-free while this harness keeps working.
Work
Migrate the harness onto the op-reth-test-engine subprocess EL (#20415). The gap is witness/preimage access: the harness reads chain state directly from the in-process core.BlockChain; the reth engine currently serves only Engine-API + read-only eth_* over UDS. Likely shape: extend the engine's optest_*/witness surface (related deferred item: the kona-host HTTPEndpoint panics against the reth engine — same missing surface), then port the harness call sites and delete op-e2e/e2eutils/gethengine.
Acceptance
rust/kona/tests/proofs runs against the reth test engine; op-e2e/e2eutils/gethengine deleted; no in-process op-geth L2 EL constructor remains in the tree.
🤖 Generated by Claude Fable 5
Part of #20257 (see also #20415/#21196). Blocks #20266 — after #21787 lands, this harness is the last in-process op-geth L2 EL consumer in the tree.
Context
rust/kona/tests/proofs/(the Go tests driving kona fault-proof witness generation) builds an in-process op-geth L2 engine via the op-e2e action-test helpers (NewL2Engine+EngineWithP2P, pervasiveengine.L2Chain()— ~81 uses across ~28 files) for direct state/preimage access. #21787 removes that machinery fromop-e2e/actions; the subset the kona harness needs is relocated to a contained, kona-proofs-only package (op-e2e/e2eutils/gethengine) so the actions suite is genuinely geth-EL-free while this harness keeps working.Work
Migrate the harness onto the
op-reth-test-enginesubprocess EL (#20415). The gap is witness/preimage access: the harness reads chain state directly from the in-processcore.BlockChain; the reth engine currently serves only Engine-API + read-onlyeth_*over UDS. Likely shape: extend the engine'soptest_*/witness surface (related deferred item: the kona-hostHTTPEndpointpanics against the reth engine — same missing surface), then port the harness call sites and deleteop-e2e/e2eutils/gethengine.Acceptance
rust/kona/tests/proofsruns against the reth test engine;op-e2e/e2eutils/gethenginedeleted; no in-process op-geth L2 EL constructor remains in the tree.🤖 Generated by Claude Fable 5