Evaluated on: · Spec revision: 2023-05-11 · e9b6a228f0
Scope at the cutoff. At the 2023-05-25 information cutoff, EIP-5656 introduced the single MCOPY instruction at opcode 0xb7 to copy an arbitrary byte range within EVM memory. It specified three stack inputs, no output, memmove-like overlap semantics, memory expansion, and dynamic gas by adding the instruction to the existing W_copy group. The proposal did not change state, transactions, blocks, interfaces, precompiles, or system contracts.
- Evaluator
- LLMChecklist v2
- Confidence
- High
- Under-specified at assessment cutoff
- No
- Plausible range
- 9–9 (Low)
- Assessment cutoff
- 2023-05-25 · EIP revision
e9b6a228f0(2023-05-11)
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.
Notable ambiguities noted by the assessor (1)
- The security-considerations section is TBA, which limits explicit risk analysis but does not leave MCOPY execution behavior unresolved.
Criterion breakdown
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Edge/boundary conditions | 3 | Several independent boundary-prone dimensions are introduced: zero versus nonzero length, 32-byte rounding and partial words, overlap direction and equality, and expansion caused by either range. Overlap and expansion must also be combined across arbitrary offsets and lengths, producing an elevated case matrix; this meets score 3. |
Confidence: High |
| Added opcodes | 2 | This is a single complex opcode because it processes a variable data portion and has dynamic gas. It therefore matches the score-2 anchor exactly. |
Confidence: High |
| EVM Gas rule changes | 1 | The proposal extends an existing EVM gas-accounting mechanism to one new opcode. This matches score 1: an existing mechanism is updated, rather than a distinct new mechanism being introduced or existing opcode gas changing. |
Confidence: High |
| Patterns affecting pre-existing tests | 1 | A narrow subset of pre-fork tests exercising the formerly invalid opcode or fork-transition bytecode behavior must be reworked. That is the minor-subset impact described by score 1, not a broad rewrite of existing tests. |
Confidence: High |
| Security risks | 1 | Incorrect overlap, bounds, or gas handling could create divergent execution, but the mechanism is self-contained and testable in isolation and does not alter state or cross-component security invariants. This matches score 1. |
Confidence: Medium Uncertainty: The historical proposal contains no substantive security analysis, so the risk classification rests on the specified memory-only scope. |
| Performance risks | 1 | Variable-size copying warrants validating that implementation work tracks its gas schedule, but the opcode is memory-only and can be benchmarked directly across lengths and overlap cases. It does not alter the performance path of existing opcodes, matching score 1. |
Confidence: High |
Show 22 zero-score criteria
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Modified opcodes | 0 | Adding MCOPY is scored under Added opcodes, while no existing opcode behavior is modified; this criterion is score 0. |
|
| Added precompiles | 0 | No precompile is added, so the score-0 anchor applies. |
|
| Modified precompiles | 0 | The identity precompile remains unchanged and no other precompile is altered; this criterion scores 0. |
|
| Added system contracts | 0 | No system contract is introduced, so this criterion scores 0. |
|
| Modified system contracts | 0 | No pre-existing system contract is directly or indirectly modified; score 0. |
|
| State-access ordering within opcode execution | 0 | No opcode state access is added or reordered, and no gas charge is moved relative to a state access, so the score-0 anchor applies. |
|
| Blob gas accounting changes | 0 | No blob resource or blob-gas rule is introduced or changed; this is score 0. |
|
| State gas accounting changes | 0 | The proposal has no state-gas charging site, budget, reservoir, or spill interaction, satisfying the score-0 anchor. |
|
| New EVM gas refund | 0 | No gas-refund mechanism is introduced, so the score-0 anchor applies. |
|
| New transaction types | 0 | No transaction type is introduced, so this criterion scores 0. |
|
| New or modified transaction validity mechanisms | 0 | Existing transaction validity and intrinsic gas are unchanged; score 0. |
|
| New block / header fields | 0 | No block or block-header field is added, so this criterion scores 0. |
|
| Encoding changes (RLP/SSZ) | 0 | No RLP, SSZ, transaction, block, or interface encoding changes; score 0. |
|
| Block syncing changes | 0 | Block RLP validation and client syncing are unchanged, satisfying score 0. |
|
| New fork activation mechanism | 0 | Ordinary fork-gated opcode availability is not the state/internal-variable mutation covered by this anchor; no new activation mechanism exists, score 0. |
|
| Engine API changes | 0 | No Engine API field, endpoint, or communication mechanism changes; score 0. |
|
| Transition-tool interface changes | 0 | The transition-tool interface needs no field or mechanism change, matching score 0. |
|
| New invariant on pre-existing tests | 0 | Existing tests not concerned with MCOPY gain no cross-cutting assertion, so this criterion scores 0. |
|
| New test-framework primitives | 0 | Standard bytecode execution, gas, failure, and memory-result assertions can express the feature's tests; no new expectation or modifier primitive is required by the text. This matches score 0. |
|
| Cryptography | 0 | No cryptography is introduced or modified, so the score-0 anchor applies. |
|
| Cross-EIP interactions | 0 | The cited EIP-2929 change explains why an alternative copying technique has particular overhead, but EIP-5656 neither depends on, modifies, nor conflicts with EIP-2929. The feature can be implemented and tested independently, so it is self-contained under the score-0 anchor. |
|
| Unspecified behavior requiring cross-client consensus | 0 | Every proposal-specific constructible case is determined by the supplied rules together with the explicitly incorporated existing W_copy calculation; no localized detail is left for clients to agree before baselining tests. The score-0 anchor applies. |
|
Assessment provenance
- Assessed EIP revision
ethereum/EIPs@e9b6a228f0EIPS/eip-5656.md committed 2023-05-11 · information cutoff 2023-05-25- 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/cancun/eip-5656.yaml· sha256a7414c59426f - Supporting documents in the sealed package
supporting/eip-2929.md