ENG ideas: Remove op-geth Hash Scheme Dependency
Describe the solution you'd like to see
Currently the preimage data required to execute op-program can only be retrieved from an archive op-geth node using the hash/tree database scheme via debug_dbGet. These are the worst performing kind of nodes and often struggle to keep up with op-mainnet loads, preventing us from increasing gas limits. Without this we risk our challenger being unable to counter games in a timely manner because the nodes are unable to keep up with the chain.
op-program will need to be modified to be able to load L2 world state data and code via a more standard API. Suggestion is to add a new standard debug_executionWitness that provides all required state data to execute a block in one call.
Additional context We will like to see some open source contributions that can help with this implementation