Retrospective LLM-Based Complexity Evaluations

EIP complexity assessment

EIP-8038: State-access gas cost update

Assessed in Amsterdam / Glamsterdam. The score describes the EIP text available at the assessment cutoff, not the EIP as it stands today.

RetrospectiveAmsterdam / GlamsterdamAssessment cutoff 2025-10-16Included by cutoffLayers: execution
LLM Completescore 17
Human Completescore 20 · Checklist revision 1· merged checklist

Evaluated on: · Spec revision: 2025-10-08 · 2023b9c151

Scope at the cutoff. At the information cutoff, EIP-8038 was a Draft proposal to increase four existing warm/cold state-access gas parameters affecting SSTORE, SLOAD, call-family, BALANCE, SELFDESTRUCT, and EXT-family operations. It also specified an extra warm-access charge for EXTCODESIZE and EXTCODECOPY, with conditional treatment when EIP-2926 or EIP-8032 applies. The actual gas values and supporting stateful benchmark results were not yet finalized.

17MediumMedium
Evaluator
LLMChecklist v2
Confidence
Medium
Under-specified at assessment cutoff
Yes — 7 criteria affected
Plausible range
13–17 (Medium)
Assessment cutoff
2025-10-16 · EIP revision 2023b9c151 (2025-10-08)
Score bands · Checklist revision 2
  • Low <12
  • Medium 12–22
  • High ≥23

28 criteria scored 0–3 (4 in exceptional cases; cross-EIP interactions is uncapped); nominal maximum 84.

Complexity profile

Each segment is one criterion's contribution to the LLM total. Hover or focus a segment for its score and rationale.

Top complexity drivers

  1. Patterns affecting pre-existing tests3
  2. Performance risks3
  3. Edge/boundary conditions3
  4. Cross-EIP interactions3

Under-specified at assessment cutoff: Yes

The EIP text available at the assessment cutoff left material behavior unresolved. The affected criteria and the plausible total range record that uncertainty.

Why: Material under-specification is present: all four replacement gas constants and increases are TBD, the stateful benchmark basis is unfinished, and the exact formula/parameter selection when EIP-2926 or EIP-8032 is active is not fully resolved. These gaps prevent authoritative exact-gas vectors even though the direction and broad opcode scope of the repricing are clear.

Unresolved questions at the cutoff (5)
  • What exact values replace each of the four gas parameters, and what benchmark data selects them?
  • Is GAS_WARM_ACCESS intentionally in scope even though the abstract highlights only three base costs?
  • Which parameter set applies if EIP-8032 activates in the same fork, and how is ACTIVATION_THRESHOLD incorporated into calibration?
  • Does EIP-2926 suppress only the extra EXTCODESIZE warm charge, and what combined treatment applies to EXTCODECOPY?
  • How should EIP-7928's parallel-read optimizations be reflected in the final benchmark baseline?
Notable ambiguities noted by the assessor (4)
  • The abstract names three raised base costs, while the specification table also changes GAS_WARM_ACCESS.
  • The front matter requires EIP-8032, yet the rationale says EIP-8032 was not scheduled and defines both before- and after-EIP-8032 calibration cases.
  • The backwards-compatibility text refers to "calldata cost rules" and "floor cost values" even though the specification is state-access opcode repricing.
  • EIP-2926 is said to preserve the old EXTCODESIZE formula, but the combined EXTCODECOPY behavior is not similarly settled.

Criterion breakdown

EIP-8038 Amsterdam / Glamsterdam: LLM criterion scores and rationale
CriterionScoreWhy this scoreEvidence / uncertainty
Patterns affecting pre-existing testsUnder-specified3A major and diverse set of existing state-access and exact-gas/OOG tests must be re-baselined across several opcode families, matching anchor 3.
  • eip.md · Specification, lines 28-45 Existing gas charges change across SSTORE, SLOAD, all call-family opcodes, BALANCE, SELFDESTRUCT, and EXT-family opcodes, with a distinct formula for EXTCODESIZE and EXTCODECOPY.
  • eip.md · Backwards Compatibility, lines 74-83 The EIP calls the repricing backwards incompatible and requires gas estimation behavior to account for it.
Confidence: Medium
Uncertainty: The package contains no test inventory, and TBD constants prevent counting precisely which existing gas-limit vectors change outcome.
Performance risksUnder-specified3Performance validation cannot be reduced to a context-free microbenchmark: it is stateful, affects a broad existing benchmark surface, and has complex interactions with three other mechanisms, matching anchor 3.
  • eip.md · Rationale - Benchmarking, lines 47-53 Final values depend on stateful benchmarks that were still in development, so the proposal had neither finalized numbers nor completed calibration.
  • eip.md · Interactions with EIP-8032, EIP-2926, and EIP-7928, lines 59-72 Calibration and even one opcode formula vary with storage-depth pricing, code layout, and BAL client optimizations; initial benchmarks explicitly omit the BAL optimizations.
Confidence: Medium
Uncertainty: Benchmark methodology and results were not present, so the magnitude of the performance-benchmark disruption cannot be quantified.
Edge/boundary conditionsUnder-specified3Exact-gas boundaries must be exercised across multiple opcode families and warm/cold branches, and the EXTCODECOPY and conditional EIP-8032 cases create an elevated test matrix, matching anchor 3.
  • eip.md · Specification, lines 28-45 Four gas parameters span several opcode families, while EXTCODESIZE and EXTCODECOPY have separate warm and cold branches with an added warm charge.
  • eip.md · Interaction with EIP-8032, lines 59-64 SSTORE/SLOAD parameter calibration has distinct before/after-EIP-8032 cases around an activation threshold and depth-scaled cost regime.
Confidence: Medium
Uncertainty: Missing constants prevent enumerating the exact boundary values, and final fork composition controls whether the EIP-8032 branch is active.
Cross-EIP interactionsUnder-specified3The proposal has strong, design-level dependencies across three contemporaneous EIPs and modifies the earlier EIP-2929 cost model. Formula selection and benchmark baselines therefore require coordinated cross-EIP testing, matching anchor 3; four interacting EIPs do not trigger the uncapped +1 increment.
  • eip.md · Front matter and Motivation, lines 1-12 and 18-22 The EIP declares requirements on 2926, 7928, and 8032 and explicitly reprices the state-access cost model previously raised by EIP-2929.
  • eip.md · Interactions with EIP-8032, EIP-2926, and EIP-7928, lines 59-72 EIP-8032 changes parameter calibration, EIP-2926 removes the extra EXTCODESIZE read/charge, and EIP-7928 introduces optimizations omitted from the initial benchmarks.
  • supporting/eip-2926.md · Code merkleization, lines 44-68 EIP-2926 adds codeSize to contract accounts and separately changes code storage and creation costs, confirming why EXTCODESIZE treatment differs.
  • supporting/eip-7928.md · Abstract and Scope and Inclusion, lines 13-15 and 96-118 EIP-7928 makes executed account accesses, including EXTCODESIZE, EXTCODECOPY, calls, SLOAD-related storage, and SELFDESTRUCT targets, part of a consensus block access list.
  • supporting/eip-8032.md · Specification - Gas cost changes, lines 54-62 EIP-8032 makes SSTORE cost depend on an account depth field and an activation threshold, the regime for which EIP-8038 conditionally calibrates costs.
Confidence: High
Uncertainty: Fork scheduling is unresolved in the text, and the exact combined parameter values are TBD.
Interacting EIPs: EIP-2926, EIP-2929, EIP-7928, EIP-8032
Security risksUnder-specified2The change touches several existing execution and estimation components and slightly alters resource-pricing assumptions, requiring targeted review and boundary testing; it does not introduce the broad new security mechanism required for anchor 3.
  • eip.md · Motivation, lines 18-22 The repricing is motivated by state growth degrading state-access performance and by different database-read costs across existing opcodes.
  • eip.md · Backwards Compatibility and Security Considerations, lines 74-87 Incorrect estimation can lead to failed transactions, and the proposal flags unresolved usability effects across applications and user behavior.
Confidence: Medium
Uncertainty: The security section calls for more analysis and gives no threat model or quantitative application-impact results.
Unspecified behavior requiring cross-client consensusUnder-specified2Client agreement is required before gas outcomes can be baselined, but the missing decisions are localized to parameters and conditional formulas rather than making previously unobservable behavior consensus-critical.
  • eip.md · Specification, lines 26-35 Every new gas value and increase is TBD, followed by an explicit TODO, so clients cannot derive consensus gas results or exact-gas test vectors.
  • eip.md · Rationale - Benchmarking, lines 47-53 The document states that final numbers await stateful benchmark data and retains another TODO.
Confidence: High
Uncertainty: The intended direction of every change is clear, but no authoritative numeric result exists for any affected exact-gas case.
EVM Gas rule changesUnder-specified1This updates the existing EVM warm/cold gas-accounting mechanism rather than introducing a separate accounting mechanism, matching anchor 1.
  • eip.md · Specification, lines 24-45 The proposal updates four existing gas-model parameters and revises the EXTCODESIZE/EXTCODECOPY charge to add one existing warm-access cost.
Confidence: High
Uncertainty: The numerical values are TBD, but that does not change the mechanism-level classification.
Show 21 zero-score criteria
Zero-score criteria (Checklist revision 2)
CriterionScoreWhy this scoreEvidence / uncertainty
Added opcodes0No opcode is introduced.
  • eip.md · Specification, lines 28-45 The table and formula refer only to pre-existing opcode families and add no opcode number or new operation.
Modified opcodes0The rubric expressly excludes gas-only changes from the modified-opcodes anchor, so the score is 0.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 SSTORE, SLOAD, call-family, BALANCE, SELFDESTRUCT, and EXT-family operations retain their functional behavior while only their gas charges change.
Added precompiles0No precompile is added.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 No precompile address, input processing rule, or new precompile gas schedule is introduced.
Modified precompiles0No pre-existing precompile is modified.
  • eip.md · Specification, lines 28-45 The call-family account-access overhead changes generally, but no existing precompile's own logic or gas schedule is modified.
Uncertainty: Calls to precompile addresses may experience generic call overhead, but that is an opcode access charge rather than a precompile gas-schedule change.
Added system contracts0No system contract is added.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 The complete feature is a gas-schedule update and does not introduce a contract address, code deployment, or system action.
Modified system contracts0No direct or specified indirect system-contract modification occurs.
  • eip.md · Specification, lines 24-45 The affected entities are opcode gas parameters and two opcode formulas; no pre-existing system contract code, state, or behavior is identified.
Uncertainty: Generic execution-gas changes can affect any contract invocation, but the EIP identifies no system-contract-specific effect warranting this anchor.
State-access ordering within opcode execution0No state access is moved and no new rule changes where gas is charged relative to a state access; only charge amounts are revised.
  • eip.md · Specification, lines 37-45 The pseudocode retains the warm/cold accessed-address branch and changes the amount assigned to access_gas_cost for two opcodes.
Uncertainty: The pseudocode does not show the eventual gas-deduction point, but the text states no ordering change.
Blob gas accounting changes0No blob gas accounting mechanism is changed.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 The complete described change concerns state-access EVM charges and does not introduce or alter blob gas.
State gas accounting changes0The proposal changes execution gas for state-accessing opcodes, not the rubric's separate state-gas accounting system for writing state.
  • eip.md · Specification, lines 26-37 GAS_STORAGE_UPDATE is repriced as part of the ordinary EVM gas model for SSTORE; no StateGasCosts schedule, state-byte rate, block state-gas budget, reservoir, or spill path is specified.
Uncertainty: The parameter name includes "STORAGE_UPDATE", but the proposal consistently places it in the existing EVM gas model and defines no separate state gas.
New EVM gas refund0No new EVM gas-refund mechanism is introduced.
  • eip.md · Specification, lines 24-45 The specified changes are upfront operation charges; no refund rule or refund counter change is described.
New transaction types0No new transaction type is introduced.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 The proposal applies during execution of existing opcodes and defines no transaction envelope or transaction type.
New or modified transaction validity mechanisms0Execution-time opcode repricing does not modify transaction validity or intrinsic gas calculation under this anchor.
  • eip.md · Backwards Compatibility, lines 74-83 The stated compatibility impact is execution gas estimation and possible failed transactions from underestimation, not a validity or intrinsic-gas rule for any transaction type.
Uncertainty: Higher execution charges can change whether execution runs out of gas, but that is not a transaction validity mechanism.
New block / header fields0No new block or header field is introduced.
  • eip.md · Specification, lines 24-45 Activation updates gas-model parameters only; no block-body or header field is defined.
Encoding changes (RLP/SSZ)0No RLP, SSZ, or other interface-level encoding change is introduced.
  • eip.md · Specification, lines 24-45 The specification changes numeric gas parameters and a charge formula, not transaction, block, or interface serialization.
Block syncing changes0No block RLP validation mechanism is introduced.
  • eip.md · Specification and Backwards Compatibility, lines 24-45 and 74-83 The EIP changes execution gas and gas estimation but specifies no block RLP field or block-validation rule used during syncing.
New fork activation mechanism0Ordinary fork selection of a gas schedule is not a new activation mechanism.
  • eip.md · Specification and Backwards Compatibility, lines 26-37 and 74-76 A scheduled upgrade selects revised gas parameters, with no activation-block state mutation, migration, or pre-existing internal-variable modification.
Engine API changes0No Engine API change is specified.
  • eip.md · Backwards Compatibility, lines 74-83 The proposal mentions eth_estimateGas RPC handling but no Engine API field, endpoint, or execution/consensus communication mechanism.
Transition-tool interface changes0No transition-tool interface change is required by the text.
  • eip.md · Backwards Compatibility, lines 74-83 The only interfaces called out are wallet and node RPC gas estimation; no field or mechanism is added to the state transition-tool interface.
New invariant on pre-existing tests0Existing gas tests need changed expectations, not an additional invariant on tests that are unrelated to this EIP.
  • eip.md · Specification, lines 24-45 The proposal changes expected gas charges but creates no additional output, commitment, or state property that unrelated tests must newly assert.
New test-framework primitives0Existing gas and opcode test primitives suffice.
  • eip.md · Specification, lines 26-45 The change consists of gas constants and an existing warm/cold conditional charge, expressible with ordinary opcode execution and gas assertions.
Uncertainty: The historical EIP supplies no test plan, but nothing specified requires a new expectation or modifier abstraction.
Cryptography0No cryptography mechanism is introduced or modified.
  • eip.md · Abstract and Specification, lines 14-16 and 24-45 The proposal is limited to gas repricing and contains no cryptographic primitive or cryptographic behavior change.
Assessment provenance
Assessed EIP revision
ethereum/EIPs@2023b9c151 EIPS/eip-8038.md committed 2025-10-08 · information cutoff 2025-10-16T08:11:36Z
Current master · File history · blob 63255d55d9 · sha256 8b5fa9f486be
Rubric
Checklist revision 2 · ethspecs/pm@3d8c0128c5
Evaluator
gpt-5.6-sol at xhigh reasoning effort · isolation bubblewrap_one_eip_capsule_v1
Source record
Frozen research record research/tasks/05-retrospective-complexity-assignment/outputs/fork-eips/amsterdam/eip-8038.yaml · sha256 4f61b3f1be97
Supporting documents in the sealed package
supporting/eip-2926.md, supporting/eip-7928.md, supporting/eip-8032.md

Evaluated on: · Spec revision: 2025-10-08 · 2023b9c151

Scope at the cutoff. The sealed Draft reprices existing state-access gas constants and adds an extra warm-access charge to EXTCODESIZE and EXTCODECOPY, with behavior coordinated with EIP-2926, EIP-7928, and EIP-8032; the numerical schedule and supporting benchmarks are not yet finalized.

17MediumMedium
Evaluator
LLMChecklist v1
Confidence
Medium
Under-specified at assessment cutoff
Yes — 6 criteria affected
Plausible range
12–19 (Medium)
Assessment cutoff
2025-10-16 · EIP revision 2023b9c151 (2025-10-08)
Score bands · Checklist revision 1
  • Low <10
  • Medium 10–19
  • High ≥20

24 criteria scored 0–3 (4 in exceptional cases; cross-EIP interactions is uncapped); nominal maximum 72.

Complexity profile

Each segment is one criterion's contribution to the LLM total. Hover or focus a segment for its score and rationale.

Top complexity drivers

  1. New fork activation mechanism3
  2. Patterns affecting pre-existing tests3
  3. Performance risks3
  4. Cross-EIP interactions3

Under-specified at assessment cutoff: Yes

The EIP text available at the assessment cutoff left material behavior unresolved. The affected criteria and the plausible total range record that uncertainty.

Why: All four replacement gas values, their increases, and the benchmarking rationale are TBD; the benchmark suite is still in development, and the required-EIP activation/configuration relationships are not made operationally precise.

Unresolved questions at the cutoff (4)
  • What are the final values for GAS_STORAGE_UPDATE, GAS_COLD_SLOAD, GAS_COLD_ACCOUNT_ACCESS, and GAS_WARM_ACCESS, and what measurements justify them?
  • Is EIP-8038 intended to activate only with all three required EIPs, and if so, why are before/after-EIP-8032 parameter cases specified?
  • How is the EXTCODESIZE formula selected when EIP-2926 is or is not active, and which fork combinations must be tested?
  • How will stateful benchmarks account for EIP-7928 optimizations, state size, client database behavior, and EIP-8032 depth scaling?
Notable ambiguities noted by the assessor (4)
  • The historical checklist includes Engine API encoding changes but supplies no definition; that row was scored conservatively from its label with low confidence.
  • The front matter requires EIP-2926, EIP-7928, and EIP-8032, while the rationale describes before/after-EIP-8032 cases and an EIP-2926-dependent exception without a precise activation matrix.
  • Backwards Compatibility refers to updated calldata cost rules and floor cost values, although neither term is defined by this state-access repricing specification.
  • The specification contains a TODO marker, the benchmarking rationale is unfinished, and every new parameter value is TBD.

Criterion breakdown

EIP-8038 Amsterdam / Glamsterdam: LLM criterion scores and rationale
CriterionScoreWhy this scoreEvidence / uncertainty
New fork activation mechanism3Existing protocol gas parameters, which are internal execution variables, are modified at fork activation, matching the row's binary score-3 definition.
  • eip.md · Specification, opening sentence and parameter table Upon activation, four existing gas-model parameters are updated from their current values.
  • eip.md · Backwards Compatibility States that the backwards-incompatible repricing requires a scheduled network upgrade.
Confidence: Medium
Uncertainty: There is no one-time state migration; the score rests on the rubric's express inclusion of internal-variable modifications. The activation timestamp and final values are unspecified.
Patterns affecting pre-existing testsUnder-specified3Exact gas expectations and out-of-gas boundaries change across several pervasive and diverse opcode families, so a major and varied body of pre-existing execution tests is affected.
  • eip.md · Specification, parameter table Reprices SSTORE, SLOAD, CALL-family operations, BALANCE, SELFDESTRUCT, and EXT-family operations, including the shared warm-access charge.
  • eip.md · Backwards Compatibility Identifies the repricing as backwards-incompatible and requires gas-estimation handling to change.
Confidence: Medium
Uncertainty: The snapshot provides no test cases and leaves all new values TBD, so the exact regression count cannot be established.
Performance risksUnder-specified3State-access pricing cannot be validated fully in isolation and has complex interactions with client state performance and the two optimization/pricing proposals, while affecting pervasive existing performance behavior.
  • eip.md · Motivation and Rationale, Benchmarking The repricing responds to state-growth-driven slowdown, requires stateful benchmarks, and cannot yet supply finalized numbers.
  • eip.md · Rationale, Interaction with EIP-7928 and Interaction with EIP-8032 Benchmark assumptions omit EIP-7928 optimizations and parameterization changes around EIP-8032's depth-based scaling.
Confidence: Medium
Uncertainty: The stateful benchmarks are still in development and neither measurements nor final parameters are present.
Cross-EIP interactionsUnder-specified3The proposal has strong behavioral and calibration interdependencies with three required EIPs, including two that directly select different gas formulas or parameter assumptions, requiring extensive coordinated combination testing.
  • eip.md · Front matter, requires Explicitly requires EIP-2926, EIP-7928, and EIP-8032.
  • eip.md · Rationale, Interaction with EIP-8032, EIP-2926, and EIP-7928 EIP-8032 changes parameter assumptions, EIP-2926 changes whether EXTCODESIZE receives the extra charge, and EIP-7928 changes benchmarking assumptions.
  • supporting/eip-2926.md · Specification, Code merkleization Adds codeSize to account records, supplying the single-read behavior on which EIP-8038's EXTCODESIZE exception depends.
  • supporting/eip-8032.md · Specification, Constants and parameters and Gas cost changes Defines the still-TBD ACTIVATION_THRESHOLD and depth-based SSTORE pricing that EIP-8038 uses to choose its assumptions.
  • supporting/eip-7928.md · Abstract and Rationale, BAL Design Choice Describes parallel disk reads and transaction execution optimizations that EIP-8038 says its initial benchmarks will omit.
Confidence: High
Uncertainty: The text simultaneously declares EIP-8032 required and specifies before/after-EIP-8032 cases; fork ordering and the final combined configuration are unresolved.
Security risksUnder-specified2The repricing alters the resource-pricing assumptions of the state-access component and many callers, warranting targeted security and compatibility review, but the mechanism is still localized to gas accounting rather than multiple substantially altered security subsystems.
  • eip.md · Motivation The proposal changes resource pricing because state growth has slowed state-access operations relative to their existing prices.
  • eip.md · Security Considerations Warns that higher costs may affect application usability and says more analysis is needed.
Confidence: Medium
Uncertainty: Without final values or the promised analysis, the magnitude of underpricing, denial-of-service protection, and application failure risks cannot be bounded.
Edge/boundary conditionsUnder-specified2The warm/cold path and the two fork-combination conditions create multiple boundary-prone mechanisms, but the sealed text does not establish that any one needs an elevated number of cases.
  • eip.md · Specification, EXTCODESIZE/EXTCODECOPY pseudocode Charges differ at the warm/cold membership boundary and the cold branch mutates accessed_addresses.
  • eip.md · Rationale, Interaction with EIP-8032 and Interaction with EIP-2926 Parameter selection changes around EIP-8032's activation threshold, while EIP-2926 removes the extra EXTCODESIZE access charge.
Confidence: Medium
Uncertainty: Activation ordering and final constants are unresolved, limiting enumeration of exact boundary cases.
EVM Gas rule changesUnder-specified1This updates the existing EVM gas-accounting mechanism rather than introducing a separate accounting mechanism, matching score 1.
  • eip.md · Specification, parameter table and EXTCODESIZE/EXTCODECOPY pseudocode Updates GAS_STORAGE_UPDATE, GAS_COLD_SLOAD, GAS_COLD_ACCOUNT_ACCESS, and GAS_WARM_ACCESS, and changes access-gas calculation for two existing opcodes.
Confidence: High
Uncertainty: The type of change is explicit, but every replacement parameter value is TBD.
Show 17 zero-score criteria
Zero-score criteria (Checklist revision 1)
CriterionScoreWhy this scoreEvidence / uncertainty
Added opcodes0No new opcode is introduced.
  • eip.md · Specification, parameter table The proposal lists only existing opcode families whose gas charges change.
Uncertainty: None material within the sealed proposal.
Modified opcodes0The row definition expressly excludes gas changes; no pre-existing opcode behavior is otherwise modified or deprecated.
  • eip.md · Specification, parameter table and EXTCODESIZE/EXTCODECOPY pseudocode Existing opcodes receive changed gas charges, but their non-gas behavior is not modified.
Uncertainty: The EXTCODESIZE/EXTCODECOPY formula change remains a gas-accounting change and is scored in the gas row.
Added precompiles0No precompile is introduced.
  • eip.md · Abstract and Specification No new precompile is named or specified.
Uncertainty: None material within the sealed proposal.
Modified precompiles0No existing precompile is modified.
  • eip.md · Specification, parameter table The changed account-access parameters apply to listed EVM operations; no precompile logic or precompile gas schedule is changed.
Uncertainty: A CALL's generic account-access charge is distinct from a precompile's own gas schedule under this row.
Added system contracts0No new system contract is introduced.
  • eip.md · Abstract and Specification The design modifies gas prices and does not create or call a new system contract.
Uncertainty: None material within the sealed proposal.
Modified system contracts0The sealed proposal does not introduce a direct or discernible indirect modification to a pre-existing system contract.
  • eip.md · Specification No pre-existing system contract code, state, or system action is identified as a target of the repricing.
Uncertainty: Ordinary gas consumption by unspecified system-contract execution is not documented and is not treated as evidence of a system-contract modification.
Blob gas accounting changes0No blob gas accounting change is introduced.
  • eip.md · Abstract and Specification The proposal is limited to state-access gas parameters and EXTCODESIZE/EXTCODECOPY access charges; it specifies no blob-gas rule.
Uncertainty: None material within the sealed proposal.
New EVM gas refund0No new EVM gas-refund mechanism is introduced.
  • eip.md · Specification The specified changes are upfront state-access charges and contain no refund rule or refund-counter change.
Uncertainty: None material within the sealed proposal.
New transaction types0No new transaction type is introduced.
  • eip.md · Specification and Backwards Compatibility The proposal reprices execution for existing transactions and does not define a transaction envelope or new transaction type.
Uncertainty: None material within the sealed proposal.
New or modified transaction validity mechanisms0No transaction validity mechanism or intrinsic-gas calculation is changed.
  • eip.md · Specification and Backwards Compatibility The changes concern execution gas for state-access operations and gas estimation, not transaction validity rules or intrinsic gas calculation.
Uncertainty: Different execution gas can change out-of-gas outcomes, but the rubric's validity row is limited to validity rules and intrinsic gas.
New block / header fields0No new block or header field is introduced.
  • eip.md · Specification No block or block-header field is added by the gas repricing.
Uncertainty: The block_access_list_hash in required EIP-7928 is not introduced by EIP-8038 and is handled as a cross-EIP dependency.
Encoding changes (RLP/SSZ)0No RLP, SSZ, or other transaction/block/interface encoding change is introduced by EIP-8038.
  • eip.md · Specification The EIP changes gas constants and access charging without specifying a transaction, block, or interface encoding change.
Uncertainty: EIP-2926 and EIP-7928 contain encoding changes of their own; those are dependency interactions rather than changes introduced here.
Block syncing changes0No new RLP validation mechanism requiring syncing tests is introduced.
  • eip.md · Specification The proposal contains no block-RLP structure or validation change.
Uncertainty: The required supporting EIPs have their own structures, but those changes are not introduced by this proposal and are accounted for under cross-EIP interactions.
Engine API changes0No new Engine API field or communication mechanism is introduced.
  • eip.md · Specification No Engine API field, endpoint, or communication mechanism appears in the stated gas repricing.
Uncertainty: EIP-7928 specifies Engine API changes, but EIP-8038 only discusses its benchmark implications and does not introduce those API changes.
Engine API encoding changes0Conservatively, the row label provides no basis for a positive score because no Engine API encoding change is stated.
  • eip.md · Specification The proposal specifies only EVM gas parameter and calculation changes, with no Engine API encoding content.
Uncertainty: The historical rubric has no dedicated definition for this row, so the score is based only on the label and global score range.
Transition-tool interface changes0No transition-tool interface modification is required by the stated design.
  • eip.md · Specification The proposal changes EVM gas parameters and opcode gas calculation without specifying a new transition-tool field or interface mechanism.
Uncertainty: The document does not discuss transition-tool integration; the zero follows from the bounded specification, not an explicit interface statement.
Cryptography0No cryptography mechanism is introduced or modified.
  • eip.md · Abstract and Specification Only gas constants and address-access charging are changed; no cryptographic primitive or cryptographic behavior is specified.
Uncertainty: None material within the sealed proposal.
Assessment provenance
Assessed EIP revision
ethereum/EIPs@2023b9c151 EIPS/eip-8038.md committed 2025-10-08 · information cutoff 2025-10-16T08:11:36Z
Current master · File history · blob 63255d55d9 · sha256 8b5fa9f486be
Rubric
Checklist revision 1 · ethspecs/pm@d936bcb349
Evaluator
gpt-5.6-sol at xhigh reasoning effort · isolation bubblewrap_one_eip_capsule_v1
Source record
Frozen research record research/tasks/05c-amsterdam-human-assessment-alignment/outputs/automated/eip-8038.yaml · sha256 0872ca686022
Supporting documents in the sealed package
supporting/eip-2926.md, supporting/eip-7928.md, supporting/eip-8032.md

Evaluated on: Not recorded · Spec revision: 2025-10-24 · a691b7ad1a

20HighHigh
Evaluator
HumanChecklist v1
Confidence
Not recorded
Under-specified at assessment cutoff
Not recorded in the checklist
Checklist published
2025-11-07 · EIP at a691b7ad1a
Score bands · Checklist revision 1
  • Low <10
  • Medium 10–19
  • High ≥20

24 criteria scored 0–3 (4 in exceptional cases; cross-EIP interactions is uncapped); nominal maximum 72.

Complexity profile

Each segment is one criterion's contribution to the Human total. Hover or focus a segment for its score and rationale.

Top complexity drivers

  1. EVM Gas rule changes3
  2. Patterns affecting pre-existing tests3
  3. Security risks3
  4. Performance risks3

Criterion breakdown

EIP-8038 Amsterdam / Glamsterdam: Human criterion scores and rationale
CriterionScoreWhy this scoreNotes
EVM Gas rule changes3Updated mechanism introduced to cold and warm account accesses
Patterns affecting pre-existing tests311 opcodes affected
Security risks3Any time gas costs are modified introduces inherent risk. Better specification may bring this number down.
Performance risks3New values are unspecified, and the EIP does not have current benchmarking numbers yet
Cross-EIP interactions3Strong interactions with EIP-8032, EIP-2926, EIP-2929, EIP-2930/EIP-1559,and EIP-7928.
New or modified transaction validity mechanisms2Access list cost change which affects type 1 and type 2 intrinsic gas.
Edge/boundary conditions2Many edge-case and boundary condition prone mechanisms
New EVM gas refund1`GAS_STORAGE_CLEAR_REFUND` is modified.
Show 16 zero-score criteria
Zero-score criteria (Checklist revision 1)
CriterionScoreWhy this scoreNotes
Added opcodes0No rationale recorded.
Modified opcodes0No rationale recorded.
Added precompiles0No rationale recorded.
Modified precompiles0No rationale recorded.
Added system contracts0No rationale recorded.
Modified system contracts0No rationale recorded.
Blob gas accounting changes0No rationale recorded.
New transaction types0No rationale recorded.
New block / header fields0No rationale recorded.
Encoding changes (RLP/SSZ)0No rationale recorded.
Block syncing changes0No rationale recorded.
New fork activation mechanism0No rationale recorded.
Engine API changes0No rationale recorded.
Engine API encoding changes0No rationale recorded.
Transition-tool interface changes0No rationale recorded.
Blank cell read as zero because the published total proves it.
Cryptography0No rationale recorded.
Assessment provenance
Assessed EIP revision
ethereum/EIPs@a691b7ad1a EIPS/eip-8038.md committed 2025-10-24
EIP master revision at the time of the human checklist commit; the checklist itself does not pin an EIP revision.
Current master · File history · blob cdbf7e8c47 · sha256 d4f4e83f2ba6
Rubric
Checklist revision 1 · ethspecs/pm@d936bcb349
Evaluator
STEEL team · ethspecs/pm complexity_assessments
Source record
Merged checklist ethspecs/pm@3b1cc85210 complexity_assessments/EIPs/EIP-8038.md · committed 2025-11-07
blob 284c321322 · sha256 cf9187ccf3b6
Research record
research/tasks/05c-amsterdam-human-assessment-alignment/inputs/human/eip-8038.yaml · sha256 a106b274163b

Both assessments applied Checklist revision 1 (24 criteria) to EIP-8038 in Amsterdam / Glamsterdam. Δ is LLM minus Human.

LLM17Medium
Human20High
Δ total−3Tiers differ: Medium vs High
Criteria19/24agree exactly · 2 differ by 1 · 3 differ by 2+
Confounded comparison. The human checklist evaluated the EIP as it stood when the checklist was written; the LLM evaluated the sealed historical revision. Input alignment: substantive drift; human hindsight exposure: possible exposure. The study's primary LLM score under checklist revision 2 is 17; it uses a different criterion inventory and thresholds and is not directly comparable to either total here.
Exposure evidence

The assessment notes that benchmark numbers were not yet available, showing fork-development awareness without reporting completed implementation outcomes.

Substantive intervening revisions: Retitles the EIP to 'State-access gas cost update' (PR #10582); renames GAS_STORAGE_UPDATE to GAS_COLD_STORAGE_WRITE and GAS_COLD_SLOAD to GAS_COLD_STORAGE_ACCESS; expands the repricing scope to GAS_STORAGE_CLEAR_REFUND, ACCESS_LIST_STORAGE_KEY_COST, and ACCESS_LIST_ADDRESS_COST; updates the discussions-to link.

Complexity profiles side by side

LLM
Human

Largest disagreements: New fork activation mechanism (+3), EVM Gas rule changes (−2), New or modified transaction validity mechanisms (−2), New EVM gas refund (−1), Security risks (−1)

Per-criterion scores, Human versus LLM, ordered by the size of the difference
CriterionLLMHumanΔAgreementRationale from each source
New fork activation mechanism30+3Differ by 2+
Show rationale

LLM Existing protocol gas parameters, which are internal execution variables, are modified at fork activation, matching the row's binary score-3 definition.

Human No rationale recorded.

EVM Gas rule changes13−2Differ by 2+
Show rationale

LLM This updates the existing EVM gas-accounting mechanism rather than introducing a separate accounting mechanism, matching score 1.

Human Updated mechanism introduced to cold and warm account accesses

New or modified transaction validity mechanisms02−2Differ by 2+
Show rationale

LLM No transaction validity mechanism or intrinsic-gas calculation is changed.

Human Access list cost change which affects type 1 and type 2 intrinsic gas.

New EVM gas refund01−1Differ by 1
Show rationale

LLM No new EVM gas-refund mechanism is introduced.

Human `GAS_STORAGE_CLEAR_REFUND` is modified.

Security risks23−1Differ by 1
Show rationale

LLM The repricing alters the resource-pricing assumptions of the state-access component and many callers, warranting targeted security and compatibility review, but the mechanism is still localized to gas accounting rather than multiple substantially altered security subsystems.

Human Any time gas costs are modified introduces inherent risk. Better specification may bring this number down.

Added opcodes000Agree
Show rationale

LLM No new opcode is introduced.

Human No rationale recorded.

Modified opcodes000Agree
Show rationale

LLM The row definition expressly excludes gas changes; no pre-existing opcode behavior is otherwise modified or deprecated.

Human No rationale recorded.

Added precompiles000Agree
Show rationale

LLM No precompile is introduced.

Human No rationale recorded.

Modified precompiles000Agree
Show rationale

LLM No existing precompile is modified.

Human No rationale recorded.

Added system contracts000Agree
Show rationale

LLM No new system contract is introduced.

Human No rationale recorded.

Modified system contracts000Agree
Show rationale

LLM The sealed proposal does not introduce a direct or discernible indirect modification to a pre-existing system contract.

Human No rationale recorded.

Blob gas accounting changes000Agree
Show rationale

LLM No blob gas accounting change is introduced.

Human No rationale recorded.

New transaction types000Agree
Show rationale

LLM No new transaction type is introduced.

Human No rationale recorded.

New block / header fields000Agree
Show rationale

LLM No new block or header field is introduced.

Human No rationale recorded.

Encoding changes (RLP/SSZ)000Agree
Show rationale

LLM No RLP, SSZ, or other transaction/block/interface encoding change is introduced by EIP-8038.

Human No rationale recorded.

Block syncing changes000Agree
Show rationale

LLM No new RLP validation mechanism requiring syncing tests is introduced.

Human No rationale recorded.

Engine API changes000Agree
Show rationale

LLM No new Engine API field or communication mechanism is introduced.

Human No rationale recorded.

Engine API encoding changes000Agree
Show rationale

LLM Conservatively, the row label provides no basis for a positive score because no Engine API encoding change is stated.

Human No rationale recorded.

Transition-tool interface changes000Agree
Show rationale

LLM No transition-tool interface modification is required by the stated design.

Human No rationale recorded.

Patterns affecting pre-existing tests330Agree
Show rationale

LLM Exact gas expectations and out-of-gas boundaries change across several pervasive and diverse opcode families, so a major and varied body of pre-existing execution tests is affected.

Human 11 opcodes affected

Performance risks330Agree
Show rationale

LLM State-access pricing cannot be validated fully in isolation and has complex interactions with client state performance and the two optimization/pricing proposals, while affecting pervasive existing performance behavior.

Human New values are unspecified, and the EIP does not have current benchmarking numbers yet

Edge/boundary conditions220Agree
Show rationale

LLM The warm/cold path and the two fork-combination conditions create multiple boundary-prone mechanisms, but the sealed text does not establish that any one needs an elevated number of cases.

Human Many edge-case and boundary condition prone mechanisms

Cryptography000Agree
Show rationale

LLM No cryptography mechanism is introduced or modified.

Human No rationale recorded.

Cross-EIP interactions330Agree
Show rationale

LLM The proposal has strong behavioral and calibration interdependencies with three required EIPs, including two that directly select different gas formulas or parameter assumptions, requiring extensive coordinated combination testing.

Human Strong interactions with EIP-8032, EIP-2926, EIP-2929, EIP-2930/EIP-1559,and EIP-7928.

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.

  • Added opcodes
    Introduces new opcodes
    Score anchors
    0
    No new opcodes are introduced.
    1
    A new simple opcode is introduced (no data portion, no complex stack mechanics, and a constant gas cost).
    2
    Multiple new simple opcodes are introduced, or a single new complex opcode is introduced (has data portion, or complex stack mechanics, or a dynamic gas cost).
    3
    Multiple new opcodes are introduced, and at least one of them is complex (has data portion, or complex stack mechanics, or a dynamic gas cost).
    • Cryptography opcodes are not considered complex by default. Refer to the "Cryptography" section for a separate assessment.
  • Modified opcodes
    Modifies pre-existing opcodes
    Score anchors
    0
    No pre-existing opcode modifications are introduced.
    3
    At least one pre-existing opcode's behavior is modified (not including gas changes) or a pre-existing opcode is deprecated.
  • Added precompiles
    Introduces new precompiles
    Score anchors
    0
    No new precompiles are introduced.
    1
    A new simple precompile is introduced (constant input length, constant gas cost).
    2
    Multiple new simple precompiles are introduced, or a single new complex precompile is introduced (dynamic input length or dynamic gas cost).
    3
    Multiple new precompiles are introduced, and at least one of them is complex (dynamic input length or dynamic gas cost).
    • Cryptography precompiles are not considered complex by default. Refer to the "Cryptography" for a separate assessment.
  • Modified precompiles
    Modifies pre-existing precompiles logic or gas-accounting
    Score anchors
    0
    No pre-existing precompiles are modified.
    1
    At least one pre-existing precompile has its gas schedule modified.
    2
    Multiple pre-existing precompiles have their gas schedule modified, or a single pre-existing precompile has its behavior modified.
    3
    The behavior of multiple pre-existing precompiles, or a single complex pre-existing precompile modified.
  • Added system contracts
    Introduces new system contract, stateful or not
    Score anchors
    0
    No new system contracts are introduced.
    1
    A new system contract is introduced that is not stateful nor does it trigger a new system action (e.g. requests to the consensus layer).
    2
    Multiple new system contracts are introduced or a single new system contract that is either stateful or triggers a new system action (e.g. requests to the consensus layer).
    3
    Multiple new system contracts are introduced and at least one of them is either stateful or triggers a new system action (e.g. requests to the consensus layer).
  • Modified system contracts
    Modifies pre-existing system contracts
    Score anchors
    0
    No modifications to pre-existing system contracts are introduced, directly or indirectly.
    1
    Does not directly modify any system contract, but its behavior has minor indirect effects on one or more system contracts.
    2
    Does not directly modify any system contract, but its behavior has major indirect effects on one or more system contracts.
    3
    At least one pre-existing system contract code or state is modified, which would involve irregular state transition or a similarly complex transition methodology.

Gas and accounting

Execution, blob, and state gas rules, refunds, and where charges happen inside opcodes.

  • EVM Gas rule changes
    New EVM gas accounting rules
    Score anchors
    0
    No gas accounting changes.
    1
    Existing gas accounting mechanism is updated.
    2
    A new gas accounting mechanism is introduced but it does not affect existing mechanisms nor does it affect existing tests.
    3
    A new gas accounting mechanism is introduced and affects existing mechanisms which in turn affect existing tests.
  • State-access ordering within opcode execution · Checklist revision 2 only
    Changes *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.
    Score anchors
    0
    No change to where state is accessed, or to where gas is charged relative to a state access, within any opcode.
    1
    A single opcode's state-access or gas-charge ordering changes.
    2
    Multiple opcodes' ordering changes, or a new state-accessing operation is introduced whose position in the order must be settled.
    3
    The ordering rule changes for a whole class of state-accessing opcodes at once, or what counts as a recordable state access is redefined — requiring existing BAL vectors to be re-derived across opcodes and forks.
    • Distinct from "Modified opcodes", which asks whether an opcode's **result** changed. This row asks about the **path to the result**, which is observable even when the result is identical. An EIP can be 0 on that row and 3 on this one.
    • Score changes **to** the ordering. Do not score the fact that state accesses are observable — they always are.
    • Each boundary must be re-tested against every other dimension that can change the answer (cold/warm, static/non-static, delegated/direct, revert/success), so the case count grows multiplicatively rather than additively. Note this explicitly under Special Considerations.
  • Blob gas accounting changes
    New Blob gas accounting rules which potentially affect pre-existing tests
    Score anchors
    0
    No blob gas accounting changes.
    1
    Existing blob gas accounting mechanism is updated.
    2
    A new blob gas accounting mechanism is introduced but it does not affect existing mechanisms nor does it affect existing tests.
    3
    A new blob gas accounting mechanism is introduced and affects existing mechanisms which in turn affect existing tests.
  • State gas accounting changes · Checklist revision 2 only
    New 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.
    Score anchors
    0
    No state gas accounting changes.
    1
    An existing state gas cost or `STATE_BYTES_PER_*` rate is adjusted.
    2
    A new state-gas-charging site is introduced, or the block-level state gas budget or reservoir allocation is modified.
    3
    A new state gas charging mechanism is introduced, or the spill interaction between state gas and execution gas is modified, affecting existing gas tests.
    • Harder to test than blob gas: the spill path means state gas cannot be metered independently of execution gas, and some costs (e.g. `NEW_ACCOUNT`) are state-dependent.
  • New EVM gas refund
    New gas-refund mechanism
    Score anchors
    0
    No new gas-refund mechanisms are introduced.
    1
    A new simple gas-refund mechanism is introduced that does not affect either existing tests or existing gas-refund mechanisms.
    2
    A new complex gas-refund mechanism is introduced or a simple mechanism that affects existing tests or existing gas-refund mechanisms.
    3
    A new complex gas-refund mechanism is introduced that affects existing tests or existing gas-refund mechanisms.

Blocks, transactions, and encoding

Transaction types and validity, block and header fields, encodings, syncing, and activation-time changes.

  • New transaction types
    Introduces a new transaction type
    Score anchors
    0
    No new transaction types are introduced.
    3
    A new transaction type is introduced.
  • New or modified transaction validity mechanisms
    Creates new or modifies pre-existing transaction types' validation mechanisms
    Score anchors
    0
    No changes are introduced to the validity rules of existing transaction types or to their intrinsic gas cost calculation.
    1
    Minor adjustments are introduced to validity rules or intrinsic gas cost calculation, but they do not significantly affect existing tests.
    2
    Changes to validity rules or intrinsic gas cost calculation affect existing tests, but require only limited updates to test cases and no redesign of the testing infrastructure.
    3
    Changes to validity rules or intrinsic gas cost calculation require extensive rework or redesign of the tests or testing infrastructure.
  • New block / header fields
    Introduces new block or block header fields
    Score anchors
    0
    No new block or header fields are introduced.
    3
    A new block or header field is introduced.
  • Encoding changes (RLP/SSZ)
    Introduces encoding changes at the transaction/block/interfaces level
    Score anchors
    0
    No encoding changes are introduced at the transaction, block, or interfaces levels.
    3
    An encoding change is introduced at transaction, block or interfaces level (e.g. RLP -> SSZ).
    • "Interfaces level" includes the Engine API. Score an Engine API encoding change (e.g. JSON -> SSZ) here.
  • Block syncing changes
    Modifies block RLP validation mechanisms that require test client syncing.
    Score anchors
    0
    No new RLP validation mechanism is introduced.
    1
    A single simple RLP validation mechanism is introduced.
    2
    Multiple simple RLP validation mechanisms are introduced or a single complex one.
    3
    Multiple RLP validation mechanisms are introduced and at least one of them is deemed complex.
  • New fork activation mechanism
    Modifies state, internal variables, or similar, at the fork activation block
    Score anchors
    0
    No state modifications, internal variables or similar are modified at the fork activation block.
    3
    Either a state modification or internal variables are modified at the fork activation block.
    • Initialization of new internal variable is not considered a modification.

Client interfaces

Engine API and transition-tool interface changes.

  • Engine API changes
    Introduces new fields to the Engine API directives
    Score anchors
    0
    No new fields or communication mechanisms are introduced to the Engine API.
    1
    A single new field is introduced in one of the Engine API endpoints.
    2
    Multiple fields are introduced to one or multiple Engine API end points, or a new Engine API end-point is introduced.
    3
    Multiple fields are introduced to one or multiple Engine API end points and a new Engine API end-point is introduced.
  • Engine API encoding changes · Checklist revision 1 only
    Engine API encoding changes (the revision-1 template defines no anchor text for this row).
  • Transition-tool interface changes
    Modifies or adds new fields to the transition tool interface.
    Score anchors
    0
    No modifications to the transition tool interface are required.
    1
    A single new field needs to be introduced to the transition tool interface.
    2
    Multiple new fields or a new mechanism has to be introduced to the transition tool interface.
    3
    Multiple new fields and a new mechanism has to be introduced to the transition tool interface.
    • Special consideration must be paid to this section if the EIP introduces a mechanism that requires the state transition tool to be aware whether the block it is processing is the fork-activation block.

Testing impact

Rework, new invariants, and new primitives required in the test framework.

  • Patterns affecting pre-existing tests
    Implements a new validation mechanism or rule that translates in reworking pre-existing tests
    Score anchors
    0
    No pre-existing tests are affected by this change.
    1
    Minor subset of existing tests are affected by this change.
    2
    Considerable subset of existing tests are affected by this change but involves only a contrived category of tests.
    3
    Major subset of existing tests are affected, including diverse category of tests (benchmarks, static, multiple forks, etc.).
  • New invariant on pre-existing tests · Checklist revision 2 only
    Tests 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.
    Score anchors
    0
    Pre-existing tests assert nothing new.
    1
    A narrow, contrived category of pre-existing tests gains a new assertion.
    2
    A broad category gains a new assertion, applied mechanically.
    3
    Every test in the fork gains the assertion regardless of what it tests, and pre-fork vectors must be re-derived to satisfy it.
    • Paired with the row above, and easy to confuse with it. "Patterns affecting pre-existing tests" asks whether existing tests must be **reworked**; this row asks whether they must **additionally assert something new**. Score both — an EIP can be low on one and high on the other.
  • New test-framework primitives · Checklist revision 2 only
    Requires new abstractions in the test framework itself — expectation types, modifiers, helpers — beyond writing test functions with what already exists.
    Score anchors
    0
    Existing test primitives suffice.
    1
    Existing primitives need minor extension.
    2
    New expectation or modifier primitives are required, reusable within this EIP's own test suite.
    3
    New framework-level primitives are required that become a permanent part of the framework and are used by other EIPs' tests.

Risk and validation

Security, performance, boundary conditions, and cryptography that need validation.

  • Security risks
    Introduces or modifies mechanisms that could compromise the security of the chain, users, validators, or other stakeholders, if not implemented properly.
    Score anchors
    0
    No new mechanisms are introduced that could pose a security risk.
    1
    The introduced mechanisms are self-contained, can be validated in isolation, and do not alter existing invariants that could pose a security risk for any stakeholders.
    2
    The introduced mechanisms interact with a limited number of existing components, slightly altering their security assumptions and requiring a targeted security review or fuzzing.
    3
    The introduced mechanisms interact with multiple existing components, including critical ones, substantially altering their security assumptions and requiring an extensive security review and fuzzing.
  • Performance risks
    Introduces or modifies mechanisms and requires performance validation.
    Score anchors
    0
    No new mechanisms are introduced that require performance validation.
    1
    The introduced mechanisms can be benchmarked in isolation and do not affect existing performance behavior.
    2
    The introduced mechanisms cannot be fully benchmarked in isolation, but they only have a limited impact on the existing performance benchmarks.
    3
    The introduced mechanisms cannot be benchmarked in isolation and have a substantial impact on existing performance benchmarks or have complex interactions with existing mechanisms.
  • Edge/boundary conditions
    Feature contains edge/boundary conditions.
    Score anchors
    0
    No discernible edge cases or boundary conditions are introduced.
    1
    A single edge-case or boundary-condition prone mechanism is introduced.
    2
    Multiple edge-case or boundary-condition prone mechanisms are introduced, but none of them requires an elevated number of cases to test.
    3
    Multiple edge-case or boundary-condition prone mechanisms are introduced and at least one of them requires an elevated number of cases to test.
  • Cryptography
    Introduces new cryptography mechanisms or modifies existing functionality that involves cryptography
    Score anchors
    0
    No cryptography mechanisms are introduced.
    1
    A new cryptography mechanism is introduced but it is a well known mechanism that is known to have vast resources to aid on its testing.
    2
    Multiple new cryptography mechanisms are introduced that are well-known or a single but novel mechanism is introduced that is either untested or has limited resources.
    3
    Multiple new cryptography mechanisms are introduced and at least one of them is a novel mechanism.

Coordination

Cross-EIP interactions and behavior that clients must agree on before tests exist.

  • Cross-EIP interactions
    Introduces or modifies mechanisms that affect other EIPs in either the same or past forks.
    Score anchors
    0
    Fully self-contained EIP that does not depend on, modify, or conflict with any other EIP.
    1
    The EIP interacts with one or more other EIPs in a non-critical and limited way but can be tested independently for the most part.
    2
    The EIP depends on or modifies one or more other EIPs such that coordinated testing and consideration is required, but interactions are limited in scope and not complex.
    3
    The EIP has strong interdependencies with multiple EIPs, requiring extensive coordinated cross-EIP testing as well as potential re-design of existing test vectors.
    • +1 for every 3 additional interacting EIPs beyond the first 3, each of which requires its own coordinated test cases. List the EIPs in the rationale.
    • This row is intentionally uncapped, unlike every other anchor: each interacting EIP is another axis of the test matrix, so a ceiling would make a 12-EIP product indistinguishable from a 3-EIP one.
  • Unspecified behavior requiring cross-client consensus · Checklist revision 2 only
    The 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.
    Score anchors
    0
    The EIP text determines the answer for every case a test could construct.
    1
    A few details are unspecified but have an obvious intended reading.
    2
    Details require client agreement before tests can be written, but they are localized.
    3
    A previously unspecified *and previously unobservable* behavior becomes consensus-critical; expect tests to be re-baselined on each round of EIP amendment.
    • Score this from the EIP's state at assessment time: whether it has client implementations, whether it has been through a devnet, and how many open questions remain on its discussion thread.