Complexity Evaluations
Forks
Five retrospective fork evaluations of Execution Layer complexity and one forward-looking Execution Layer complexity evaluation for Hegotá. Each retrospective bar is normalized to its fork's total and shows what kind of complexity dominated; the totals differ in scale and are printed beside each bar. Hegotá is still being assessed, so its total is not shown here.
Retrospective4 EIPs by cutoff · score 65
1 added later (+3)
OP+OP~GASORDTXVHDRENCSYNCENGT8NTESTINVPRIMSECPERFEDGEXEIPUNSP
65○Not available No human checklists
View fork →Retrospective5 EIPs by cutoff · score 126
1 added later (+9)
OP+OP~PC+SC+GASORDBLOBTX+TXVHDRENCSYNCACTENGT8NTESTINVPRIMSECPERFEDGECRYPXEIPUNSP
126○Not available No human checklists
View fork →Retrospective8 EIPs by cutoff · score 216
3 added later (+38)
OP~PC+SC+SC~GASORDTX+TXVHDRENCSYNCACTENGT8NTESTINVPRIMSECPERFEDGECRYPXEIPUNSP
216○Not available No human checklists
View fork →Retrospective8 EIPs by cutoff · score 105
4 added later (+35)
PC+PC~GASBLOBTXVENCSYNCACTTESTINVPRIMSECPERFEDGECRYPXEIPUNSP
105○Not available No human checklists
View fork →Retrospective13 EIPs by cutoff · score 243
2 added later (+44)
OP+OP~SC+SC~GASORDSGASTXVHDRENCSYNCACTENGT8NTESTINVPRIMSECPERFEDGECRYPXEIPUNSP
24312 of 15 EIPs have a scored Human checklist
View fork →Prospective46 candidates at the 2026-08-26 snapshot · score TBD
Fork scope and assessments are still in progress; totals are not final.
In progress Human checklists scored for 25 of 46 EIPs so far · open assessment pull requests
View fork → Criterion legend and glossary
Every stacked bar, comparison matrix, and criterion table on this site uses the same criterion colours, abbreviations, and order. Colour marks the criterion group; the abbreviation and name identify the criterion. Scores are 0–3 per criterion (4 is exceptional; cross-EIP interactions is uncapped).
EVM surface
Opcodes, precompiles, and system contracts that are added or modified.
- OP+
Added opcodesIntroduces new opcodes
- OP~
Modified opcodesModifies pre-existing opcodes
- PC+
Added precompilesIntroduces new precompiles
- PC~
Modified precompilesModifies pre-existing precompiles logic or gas-accounting
- SC+
Added system contractsIntroduces new system contract, stateful or not
- SC~
Modified system contractsModifies pre-existing system contracts
Gas and accounting
Execution, blob, and state gas rules, refunds, and where charges happen inside opcodes.
- GAS
EVM Gas rule changesNew EVM gas accounting rules
- ORD
State-access ordering within opcode execution · Checklist revision 2 onlyChanges *where inside an opcode's execution* state is accessed, or where gas is charged relative to that access. Because a state access is recorded in the block-level access list only if execution had enough gas to reach it, this ordering is consensus-critical: moving it changes the BAL at every gas boundary of every affected opcode.
- BLOB
Blob gas accounting changesNew Blob gas accounting rules which potentially affect pre-existing tests
- SGAS
State gas accounting changes · Checklist revision 2 onlyNew state gas accounting rules. State gas is the cost of *writing* state, as opposed to accessing or executing it: `StateGasCosts`, `COST_PER_STATE_BYTE`, the block-level state gas budget, and the spill path into execution gas.
- RFND
New EVM gas refundNew gas-refund mechanism
Blocks, transactions, and encoding
Transaction types and validity, block and header fields, encodings, syncing, and activation-time changes.
- TX+
New transaction typesIntroduces a new transaction type
- TXV
New or modified transaction validity mechanismsCreates new or modifies pre-existing transaction types' validation mechanisms
- HDR
New block / header fieldsIntroduces new block or block header fields
- ENC
Encoding changes (RLP/SSZ)Introduces encoding changes at the transaction/block/interfaces level
- SYNC
Block syncing changesModifies block RLP validation mechanisms that require test client syncing.
- ACT
New fork activation mechanismModifies state, internal variables, or similar, at the fork activation block
Client interfaces
Engine API and transition-tool interface changes.
- ENG
Engine API changesIntroduces new fields to the Engine API directives
- ENGE
Engine API encoding changes · Checklist revision 1 onlyEngine API encoding changes (the revision-1 template defines no anchor text for this row).
- T8N
Transition-tool interface changesModifies or adds new fields to the transition tool interface.
Testing impact
Rework, new invariants, and new primitives required in the test framework.
- TEST
Patterns affecting pre-existing testsImplements a new validation mechanism or rule that translates in reworking pre-existing tests
- INV
New invariant on pre-existing tests · Checklist revision 2 onlyTests that are **not about this EIP** must nonetheless assert something this EIP produces. Their logic does not change; they gain a new thing to check.
- PRIM
New test-framework primitives · Checklist revision 2 onlyRequires new abstractions in the test framework itself — expectation types, modifiers, helpers — beyond writing test functions with what already exists.
Risk and validation
Security, performance, boundary conditions, and cryptography that need validation.
- SEC
Security risksIntroduces or modifies mechanisms that could compromise the security of the chain, users, validators, or other stakeholders, if not implemented properly.
- PERF
Performance risksIntroduces or modifies mechanisms and requires performance validation.
- EDGE
Edge/boundary conditionsFeature contains edge/boundary conditions.
- CRYP
CryptographyIntroduces new cryptography mechanisms or modifies existing functionality that involves cryptography
Coordination
Cross-EIP interactions and behavior that clients must agree on before tests exist.
- XEIP
Cross-EIP interactionsIntroduces or modifies mechanisms that affect other EIPs in either the same or past forks.
- UNSP
Unspecified behavior requiring cross-client consensus · Checklist revision 2 onlyThe EIP text does not determine the answer for cases a test can construct. Clients must agree on a previously unspecified detail before tests can be baselined. The cost here is coordination and re-baselining, not test writing.