Skip to content

opgeth-decoupling: migrate the kona proof harness off the in-process op-geth L2 EL #21905

Description

@sebastianst

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions