mirror of
https://github.com/luxfi/chains.git
synced 2026-07-27 03:39:41 +00:00
The package exported ExecuteBlockV1, V2, V3, V4 and ExecuteBlock for a single operation, plus BlockResult and BlockResultV2 for a single result. V2/V3/V4 were pure argument adapters over the same implementation and V1 additionally downcast the result into a lossy struct, so the versions described how the API had grown rather than anything a caller needs to choose between. Now: ExecuteBlock(backend, numThreads, txs, ctx, state) -> *BlockResult. Callers without a block context or state snapshot pass nil, which is what the adapters did on their behalf. BlockResult carries the full shape; the lossy variant is gone. Nothing outside the package used the versioned names. The duplicate tests went with them — TestExecuteBlockEmpty existed three times and the backend smoke test twice, one per version, all exercising the same function. Merged, keeping every distinct assertion. go vet clean; ./evm/cevm and ./evm/cevm/parallel both pass. Co-authored-by: Hanzo Dev <dev@hanzo.ai>