Evaluated on: · Spec revision: 2025-06-09 · c43098e67b
Scope at the cutoff. At the information cutoff, EIP-7939 proposed one new execution-layer opcode, CLZ at byte 0x1e, that consumes one 256-bit stack word and returns its count of leading zero bits, with zero explicitly returning 256. The opcode is stateless, has no data portion or dynamic stack behavior, and has a fixed gas cost of 3; the proposal also supplied reference algorithms and representative boundary test cases.
- Evaluator
- LLMChecklist v2
- Confidence
- High
- Under-specified at assessment cutoff
- No
- Plausible range
- 6–6 (Low)
- Assessment cutoff
- 2025-07-02 · EIP revision
c43098e67b(2025-06-09)
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
Under-specified at assessment cutoff: No
The EIP text available at the assessment cutoff left material behavior unresolved. The affected criteria and the plausible total range record that uncertainty.
The assessor found no material behavior left unresolved by the EIP text at the cutoff.
Criterion breakdown
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Added opcodes | 1 | This is exactly one simple opcode with no data portion, no complex stack mechanics, and a constant gas cost, matching anchor 1. |
Confidence: High |
| EVM Gas rule changes | 1 | Adding a fixed entry to the EVM gas schedule updates the existing constant-cost accounting mechanism, matching anchor 1; it does not introduce dynamic or new gas-accounting machinery. |
Confidence: High |
| Patterns affecting pre-existing tests | 1 | Existing post-activation invalid-opcode coverage that used byte 0x1e must change its expected behavior. That is a minor, narrowly targeted subset of pre-existing tests and matches anchor 1. |
Confidence: Medium Uncertainty: The EIP does not enumerate existing invalid-opcode tests, so the size of the affected subset is inferred from assigning a previously absent opcode byte. |
| Security risks | 1 | The new consensus operation must be implemented consistently, but its security surface is self-contained, independently testable, and does not alter existing state or stakeholder invariants. This matches anchor 1. |
Confidence: High |
| Performance risks | 1 | The new execution mechanism warrants isolated benchmarking to substantiate its gas price, but it is self-contained and does not alter existing performance behavior. This matches anchor 1. |
Confidence: High |
| Edge/boundary conditions | 1 | CLZ is one boundary-prone mechanism, principally around zero and each leading-bit transition. This matches anchor 1 rather than the multiple-mechanism anchors. |
Confidence: High |
Show 22 zero-score criteria
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Modified opcodes | 0 | No existing opcode behavior is modified or deprecated, so anchor 0 applies. |
|
| Added precompiles | 0 | No precompile is introduced, matching anchor 0. |
|
| Modified precompiles | 0 | No existing precompile behavior or gas schedule is modified; anchor 0 applies. |
|
| Added system contracts | 0 | No system contract is introduced, matching anchor 0. |
|
| Modified system contracts | 0 | No pre-existing system-contract code, state, or behavior is directly or indirectly modified, matching anchor 0. |
|
| State-access ordering within opcode execution | 0 | The opcode performs no state access, so neither the position of a state access nor gas charging relative to one changes; this is anchor 0. |
|
| Blob gas accounting changes | 0 | No blob object, blob validation, or blob gas rule is introduced or modified, matching anchor 0. |
|
| State gas accounting changes | 0 | The proposal has no state-gas charging site, state-byte rate, budget, reservoir, or spill interaction, so anchor 0 applies. |
|
| New EVM gas refund | 0 | No gas-refund mechanism is introduced, matching anchor 0. |
|
| New transaction types | 0 | No transaction type is introduced, matching anchor 0. |
|
| New or modified transaction validity mechanisms | 0 | Transaction validity and intrinsic-gas calculation are unchanged, so anchor 0 applies. |
|
| New block / header fields | 0 | No block or block-header field is introduced, matching anchor 0. |
|
| Encoding changes (RLP/SSZ) | 0 | No transaction, block, RLP, SSZ, or interface encoding changes are introduced, matching anchor 0. |
|
| Block syncing changes | 0 | No block RLP field or validation rule is introduced, so no client-syncing test mechanism changes and anchor 0 applies. |
|
| New fork activation mechanism | 0 | Activation requires no state transition or modification of an existing internal variable at the activation block, matching anchor 0. |
|
| Engine API changes | 0 | No Engine API field, endpoint, or communication mechanism changes; anchor 0 applies. |
|
| Transition-tool interface changes | 0 | No transition-tool input or output field, endpoint, or fork-block awareness interface is required, matching anchor 0. |
|
| New invariant on pre-existing tests | 0 | Tests unrelated to CLZ do not gain a new artifact or invariant to assert; the narrow invalid-opcode expectation change is a rework pattern, not an additional assertion. Anchor 0 applies. |
|
| New test-framework primitives | 0 | Existing opcode execution, stack-result, exceptional-stack, and gas test primitives suffice; no new expectation type, modifier, or helper abstraction is implied. This matches anchor 0. |
|
| Cryptography | 0 | Counting leading zero bits introduces no cryptographic primitive or modification. A possible cryptographic use case does not trigger the cryptography anchor, so the score is 0. |
|
| Cross-EIP interactions | 0 | The opcode can be specified and tested independently and no interacting EIP is established by the historical text, matching anchor 0. |
|
| Unspecified behavior requiring cross-client consensus | 0 | For every possible EVM word, the specification determines the CLZ result and supplies the execution metadata needed for testing. No constructible case needs an additional cross-client semantic agreement, so anchor 0 applies. |
|
Assessment provenance
- Assessed EIP revision
ethereum/EIPs@c43098e67bEIPS/eip-7939.md committed 2025-06-09 · information cutoff 2025-07-02T17:49:36Z- 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/osaka/eip-7939.yaml· sha256c87c3c2649da