Evaluated on: · Spec revision: 2025-04-13 · 7466599174
Scope at the cutoff. At this revision, EIP-7708 makes every nonzero-value ETH transfer emit a log. That covers three cases: a nonzero-value CALL, a SELFDESTRUCT that transfers nonzero value, and a nonzero-value transaction. Each log is "identical to a LOG3". Its three topics are MAGIC (still TBD), the sender address and the recipient address. Its data is the 32-byte big-endian transfer value. The transaction-level log comes before any logs from EVM execution. CALL and SELFDESTRUCT logs are emitted when the transfer executes. Whether withdrawals and fee payments should also emit logs is left as an open question. No gas cost, emitter address or revert handling is specified for the logs.
- Evaluator
- LLMChecklist v3
- Confidence
- Medium
- Under-specified at assessment cutoff
- Yes — 8 criteria affected
- Plausible range
- 14–23 (Medium–High)
- Assessment cutoff
- 2025-10-22 · EIP revision
7466599174(2025-04-13)
Score bands · Checklist revision 3
- 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
- Modified opcodes3
- Patterns affecting pre-existing tests2
- New invariant on pre-existing tests2
- New test-framework primitives2
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: MAGIC is TBD. The log's emitter address is unspecified, as are gas charging, revert handling, and coverage of CALLCODE, CREATE/CREATE2 endowments, contract-creation transactions, SELFDESTRUCT-to-self and failed value calls. Withdrawals and fees are explicit open questions. There is no test-case section.
Plausible total
14–23
recorded score 17 · plausible tiers Medium, High
Unresolved questions at the cutoff (8)
- What is the MAGIC topic value?
- What is the log's address field, both for in-EVM transfers and for the transaction-level log?
- Is any gas charged for the emitted log?
- Are transfer logs from reverted frames discarded like ordinary LOG3 logs?
- Do CALLCODE, CREATE/CREATE2 with value, and contract-creation transactions emit logs?
- Does a value CALL that fails (insufficient balance, depth limit) emit a log?
- Does SELFDESTRUCT to itself, or a burn, emit a log, and with what recipient?
- Should withdrawals and fee payments emit logs?
Notable ambiguities noted by the assessor (5)
- The abstract says all ETH transfers emit a log, but the specification lists only CALL, SELFDESTRUCT and transactions.
- "identical to a LOG3" does not say which address emits the log, especially for the transaction-level log.
- MAGIC is TBD, so the expected log contents cannot be fixed.
- "nonzero-value CALL" could mean the requested value or an executed transfer, which matters for calls that fail before transferring.
- Gas charging for the implicit log is never stated.
Criterion breakdown
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Modified opcodes | 3 | Emitted logs are part of instruction semantics, and the logs emitted by CALL and SELFDESTRUCT change. |
Confidence: High Uncertainty: It is unclear whether CALLCODE and CREATE/CREATE2 with an endowment are also covered. |
| Patterns affecting pre-existing testsUnder-specified | 2 | Baseline tests that assert log lists or log indices for value-transferring transactions or calls need revised expected logs. Examples are LOG-opcode tests in transactions with value, and CALL or SELFDESTRUCT tests with value. Their logs hash, bloom and receipt root also change. This rework covers ordinary cases in several log-checking families. It mostly means regenerating expectations rather than a common restructuring, so level 2. |
Confidence: Medium Uncertainty: Logs-hash and receipt-root changes affect nearly every value-transferring fixture. Whether that counts as a common cross-family rewrite (level 3) or as regeneration depends on how the tests are written. |
| New invariant on pre-existing tests | 2 | Baseline tests across many families (plain transfers, value calls, SELFDESTRUCT, contract interactions) must now check the new transfer log. Zero-value tests and pre-fork vectors are unaffected, so the requirement is neither universal nor re-derived for earlier forks. |
Confidence: High |
| New test-framework primitivesUnder-specified | 2 | The tests need a new expectation helper that builds the expected transfer log from a transfer and places it correctly among the other logs (transaction log first; call logs inline). That is a new expectation abstraction within the target's suite. |
Confidence: Medium Uncertainty: If the framework had to inject expected transfer logs into all existing log-checking families automatically, this could reach level 3. A simple log builder could be level 1. |
| Edge/boundary conditionsUnder-specified | 2 | Several boundary-sensitive mechanisms are introduced. These are the nonzero-value triggers for transactions, CALL and SELFDESTRUCT; whether the transfer actually executes (insufficient balance, call depth, OOG); log ordering; and survival of logs in reverted frames. They can mostly be tested independently. |
Confidence: Medium Uncertainty: An elevated matrix is possible: value × call success × enclosing-frame revert × SELFDESTRUCT beneficiary self/other. That could justify level 3. |
| Cross-EIP interactionsUnder-specified | 2 | The SELFDESTRUCT trigger needs coordinated cases against the baseline (Osaka) SELFDESTRUCT rules: same-transaction-created vs pre-existing contracts, beneficiary equal to self (burn), and balance-only transfer. ERC-20 needs only a local check that the log layout is compatible. |
Confidence: Medium Uncertainty: The SELFDESTRUCT rules come from an EIP that is not supplied or named. The ERC-20 definition is not supplied either. Interacting EIPs: EIP-20 |
| Unspecified behavior requiring cross-client consensusUnder-specified | 2 | Several consensus-visible outcomes (receipts and bloom) have competing interpretations: the MAGIC value, the log address field, gas charging, coverage of CALLCODE and CREATE, SELFDESTRUCT to self or burn, failed value calls, revert handling, and withdrawals and fees. Clients and the spec must agree on these before expected results can be fixed. |
Confidence: Medium Uncertainty: The emitter address and MAGIC apply to every transfer log. Depending on interpretation, that could justify level 3. |
| Security risksUnder-specified | 1 | The new security conditions are local: logs must be emitted exactly when a transfer happens, logs from reverted frames must not survive, and genuine transfer logs should be distinguishable from contract-emitted LOG3 forgeries. No other EL component's assumptions change. |
Confidence: Medium Uncertainty: Without a defined emitter address, forgeability affects off-chain consumers. That could warrant targeted review (level 2). |
| Performance risksUnder-specified | 1 | Receipt and bloom generation and log storage grow on average. Component benchmarks of log-heavy value-transfer blocks are enough, and end-to-end assumptions stay bounded according to the spec. |
Confidence: Low Uncertainty: If the logs are free and the 6700 figure does not apply in some paths, worst-case log volume per gas could need validation. |
Show 19 zero-score criteria
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Added opcodes | 0 | No new opcodes. |
|
| Added precompiles | 0 | None added. |
|
| Modified precompiles | 0 | No precompile semantics or gas change. |
|
| Added system contracts | 0 | None added. |
|
| Modified system contracts | 0 | No existing system contract's rules or surrounding behavior change. |
Uncertainty: It is unspecified whether system calls carrying value would emit logs, though baseline system calls are normally zero-value. |
| EVM Gas rule changesUnder-specified | 0 | No execution-gas accounting rule is specified as changing. The log appears to be emitted without its own gas charge. |
Uncertainty: The text never says whether LOG3-equivalent gas is charged. If it were, the gas results of value-transferring CALL, SELFDESTRUCT and transactions would change (level 1). |
| State-access ordering within opcode execution | 0 | Emitting a log does not access state. The order of state access and gas charging in CALL and SELFDESTRUCT is unchanged, and no access-list rule is introduced. |
|
| Blob gas accounting changes | 0 | Blob gas is unaffected. |
|
| State gas accounting changes | 0 | There are no state-gas accounting changes. |
|
| New EVM gas refund | 0 | No refund is introduced. |
|
| New transaction types | 0 | None. |
|
| New or modified transaction validity mechanisms | 0 | Transaction validity is unchanged. |
|
| New block / header fields | 0 | Changed values in existing fields do not count. |
|
| Encoding changes (RLP/SSZ) | 0 | New values within an unchanged receipt and log schema do not count. |
|
| Block syncing changes | 0 | Only receipt contents change, through ordinary execution. Structural validation is unchanged. |
|
| New fork activation mechanism | 0 | No activation-specific transition. |
|
| Engine API changes | 0 | No Engine API fields or endpoints change. |
|
| Transition-tool interface changes | 0 | Logs are already a t8n output. No new input, output field or mechanism is needed. |
Uncertainty: No transition-tool evidence was supplied. |
| Cryptography | 0 | No cryptographic change. |
|
Assessment provenance
- Assessed EIP revision
ethereum/EIPs@7466599174EIPS/eip-7708.md committed 2025-04-13 · information cutoff 2025-10-22T20:52:23Z- Rubric
- Checklist revision 3 ·
ethspecs/pm@fe2f793b03 - Evaluator
- Opus 5.5 (
claude-opus-5-5) at high effort, one tool-less call per EIP · isolationbubblewrap_claude_p_no_tools_v1 - Source record
- Frozen research record
research/tasks/10-opus-v3-reassessment/retrospective/outputs/assessments/amsterdam/eip-7708.yaml· sha2566e6720ac90af - Supporting documents supplied with the EIP
supporting/eip-20.md