ethereum / ethereum/execution-specs

chore(execute): evaluate feasibility of an execute simulator for RPC testing

Open
#1,560 1 comment 1 reaction 0 assignees View on GitHub
A-test-execute C-chore P-medium S-needs-discussion stale
Dominant language
Python
Stars
1.2k
Forks
505
Avg merge
2d 14h
Merged PRs (30d)
116

Description

The `execute` simulator runs consensus tests, but we could extend its capability by adding a new test type that has the potential to additionally detect RPC bugs (e.g. delays or failure propagating state to endpoints) by using a test's `post` state to verify that changes propagate correctly and timely through client/RPC.

An example is this bug:
- https://github.com/ethereum/go-ethereum/issues/31798

which was found by `test_async_sign_authorization_and_send_raw_set_code_transaction()` an [ethereum/web3.py](https://github.com/ethereum/web3.py) / [ethereum/py-geth](https://github.com/ethereum/py-geth/) unit test.

This wouldn't be a consensus test specific simulator, just a different use case of the consensus tests.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.