Repository navigation
docs(l1): add testing and verification roadmap - #7517
unbalancedparentheses wants to merge 3 commits into
Conversation
Add a Testing & Verification section to ROADMAP.md with proposed priorities, and docs/developers/l1/testing/roadmap.md covering current suites, gaps from recent incidents, techniques used by database teams and a phased plan with acceptance criteria.
|
…and fairness testing
…tion blockers and more incidents Lead with per-incident failpoint tests that need no spawned work; make the spawned v0.7 upgrade an explicit prerequisite; record what blocks simulation (clock, RNG, sockets, process::exit) with file:line; split subsystem from whole-node simulation; add five more incidents; refine reference-model, metamorphic, Kani and TLA+ items; note what is shared with ethlambda.
|
Folded into #7518, which carries the spawned v0.7 adoption together with this testing roadmap (same commits). |
Motivation
Our suites check that ethrex computes the right answers. Our worst recent bugs came from how it behaves over time, under faults and between actors. Examples: the ~1.5 GB/day P2P leak (#6900), the
ActorStopped→exit(2)teardown race (#7491), the request timeout that exited the node (#6823), the L2 import deadlock (#7429) and the duplicate-connection cleanup bug (#7435). This PR plans how to test for those failures with methods that database teams already use.Description
Docs only. No code, CI or Cargo changes.
docs/developers/l1/testing/roadmap.md(new, linked fromSUMMARY.mdand the testing README) covers:spawned-test, Porcupine-style history checking, reference-model property tests (ShardStore), metamorphic storage tests (Pebble), Attacknet, PObserve-style invariant monitors, deterministic simulation (FoundationDB, TigerBeetle, Dropbox, madsim/turmoil), spawned actor exploration, ethshadow and Antithesis;ROADMAP.md: a new## Testing & Verificationtable. Each row links to its section of the new doc. The existing UX / DX testing rows are unchanged.The priorities are proposals for the team to review. Cheap, high-value items come first (reproducible-bug rule and soak at 0; failpoints, differential testing and
spawned-testadoption at 1). Simulation work comes later (p2p DST at 3; actor exploration, ethshadow and Antithesis at 4).Notes:
docs.ethrex.xyzlinks, as the existing Based Rollups row does, becauseROADMAP.mdis also included intodocs/roadmap.mdand a relative path cannot resolve from both places. These links will work once the docs are deployed.