Consider adding new methods that verify the payload is correct and also return the stateless witness that one would use to execute the block statelessly.
For the zkEVM usecase, provers need the stateless witness in order to generate proofs. Currently it requires them calling debug_executionWitness on an EL , however we can simplify this by having the CL be passed the witness from the EL and the prover fetches the witness from the CL or the CL passes the witness to the prover (depending on whether there is a push or pull model.
This seems to have been needed for verkle in the past, so there is a Geth method for it here: https://github.com/ethereum/go-ethereum/blob/494908a8523af0e67d22d7930df15787ca5776b2/eth/catalyst/witness.go#L138-L162
Consider adding new methods that verify the payload is correct and also return the stateless witness that one would use to execute the block statelessly.
For the zkEVM usecase, provers need the stateless witness in order to generate proofs. Currently it requires them calling debug_executionWitness on an EL , however we can simplify this by having the CL be passed the witness from the EL and the prover fetches the witness from the CL or the CL passes the witness to the prover (depending on whether there is a push or pull model.
This seems to have been needed for verkle in the past, so there is a Geth method for it here: https://github.com/ethereum/go-ethereum/blob/494908a8523af0e67d22d7930df15787ca5776b2/eth/catalyst/witness.go#L138-L162