Evaluated on: · Spec revision: 2025-04-17 · 0ddb8e9192
Scope at the cutoff. EIP-7642 (revision at commit 0ddb8e91) defines a new wire-protocol version, eth/69, for the 'eth' p2p protocol. It removes total difficulty (td) from the Status handshake and adds earliestBlock, latestBlock and latestBlockHash, moving the block hash to the end. It replaces the consensus receipt encoding in the Receipts (0x10) message with a flat list [tx-type, post-state-or-status, cumulative-gas, logs] that omits the Bloom field, so receivers must recompute the bloom to verify the receipt hash. It also adds a BlockRangeUpdate (0x11) notification that clients send at most once per epoch. The EIP states that it does not change EVM consensus rules and does not need a hard fork.
- Evaluator
- LLMChecklist v3
- Confidence
- Medium
- Under-specified at assessment cutoff
- Yes — 3 criteria affected
- Plausible range
- 9–12 (Low–Medium)
- Assessment cutoff
- 2025-04-17 · EIP revision
0ddb8e9192(2025-04-17)
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
- Encoding changes (RLP/SSZ)3
- Unspecified behavior requiring cross-client consensus2
- Patterns affecting pre-existing tests1
- New test-framework primitives1
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: The receipt tx-type field has no type annotation, and its value for legacy transactions is not stated. Receiver behavior for invalid or overly frequent BlockRangeUpdate messages is also unspecified, and so is the response to requests outside the advertised range.
Plausible total
9–12
recorded score 11 · plausible tiers Low, Medium
Unresolved questions at the cutoff (4)
- Is tx-type encoded as an integer (P) or a byte string, and what value do legacy receipts carry?
- How should a node respond to BlockRangeUpdate with earliestBlock > latestBlock, or to updates sent more than once per epoch?
- What should a node return for requests outside its advertised range?
- Must latestBlockHash in Status be validated against latestBlock?
Notable ambiguities noted by the assessor (3)
- The tx-type field in the eth/69 receipt list has no type annotation.
- The once-per-epoch update limit is advisory ('should'), and the receiver's enforcement is undefined.
- The EIP is networking-only. Whether eth-protocol hive tests count as baseline EL tests affects the PAT and FWK scores.
Criterion breakdown
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Encoding changes (RLP/SSZ) | 3 | Three execution-client peer-message schemas change or are added: Status, Receipts and BlockRangeUpdate. This meets level 3. |
Confidence: High |
| Unspecified behavior requiring cross-client consensusUnder-specified | 2 | The legacy-receipt tx-type value and its encoding (integer 0 as 0x80 vs byte 0x00, or empty) are localized competing outcomes. They affect interoperability and the expected bytes in test vectors, so clients must agree before expectations can be fixed. The rules for validating and responding to BlockRangeUpdate are also omitted. |
Confidence: Medium Uncertainty: These are interoperability rather than consensus outcomes, and a devp2p spec not supplied here might resolve them. |
| Patterns affecting pre-existing tests | 1 | State-transition and blockchain consensus fixtures are not affected. Existing peer-protocol handshake and receipt-exchange tests stay valid for eth/68. Rework is limited to Status and Receipts message construction and expectations when those tests run under eth/69, which is localized to the message-exchange family. |
Confidence: Low Uncertainty: Whether eth-protocol hive/devp2p tests count as baseline EL tests, and whether the suite will be migrated to eth/69 rather than duplicated, decides between 0 and 2. |
| New test-framework primitives | 1 | Peer-protocol test harnesses need a local extension: an eth/69 capability, the new message codecs, and handling of an unsolicited notification. These are new message types within an existing kind of primitive (devp2p message exchange), not a shared new abstraction. |
Confidence: Medium Uncertainty: Checking unsolicited, rate-limited BlockRangeUpdate announcements over time could need a new expectation abstraction (level 2). |
| Security risksUnder-specified | 1 | Local checks are enough: receipts received without a bloom must still be verified against the receipt root, and malformed or false range announcements must be handled. No other component's assumptions change. |
Confidence: Medium Uncertainty: Peers can falsely advertise ranges, and the spec gives no rule for handling them. |
| Performance risks | 1 | Receipt serving and receiving workloads change: no bloom regeneration on the server, recomputation on the receiver. A component benchmark of receipt encode/verify throughput covers this without changing end-to-end assumptions. |
Confidence: Low Uncertainty: The change is intended to reduce load, and the claimed CPU cost is not quantified. The score could be 0. |
| Edge/boundary conditionsUnder-specified | 1 | One boundary-sensitive mechanism is introduced: advertising the block range and updating it at most once per 32 blocks. |
Confidence: Low Uncertainty: The rate limit is advisory ('should') and the receiver's response to violations is unspecified, so the score could be 0. |
| Cross-EIP interactions | 1 | Only local compatibility checks are needed: negotiating eth/68 and eth/69 side by side, and confirming that eth/68's announcement format remains unchanged under eth/69. EIP-7542 is withdrawn and does not interact. |
Confidence: Medium Uncertainty: Receipt encoding across all typed transaction types (EIP-2718-based) needs a conversion back to the consensus encoding to verify the root. Here that is treated as a local encoding check. Interacting EIPs: EIP-5793 |
Show 20 zero-score criteria
| Criterion | Score | Why this score | Evidence / uncertainty |
|---|---|---|---|
| Added opcodes | 0 | None. |
|
| Modified opcodes | 0 | None. |
|
| Added precompiles | 0 | None. |
|
| Modified precompiles | 0 | None. |
|
| Added system contracts | 0 | None. |
|
| Modified system contracts | 0 | None. |
|
| EVM Gas rule changes | 0 | No execution-gas charging, metering or limit rule changes. |
|
| State-access ordering within opcode execution | 0 | No opcode's state-access or gas-charge ordering changes. |
|
| Blob gas accounting changes | 0 | No blob-gas accounting changes. |
|
| State gas accounting changes | 0 | No state-gas accounting changes. |
|
| New EVM gas refund | 0 | No refund mechanism is introduced. |
|
| New transaction types | 0 | None. |
|
| New or modified transaction validity mechanisms | 0 | None. |
|
| New block / header fields | 0 | No block or header member is added. |
|
| Block syncing changes | 0 | The receipt download format changes, but block RLP decoding and block structural validation do not. Other sync work falls outside this criterion. |
Uncertainty: Receipt-hash verification after recomputing the bloom during sync could be read as a changed sync validation rule (level 1). |
| New fork activation mechanism | 0 | No activation-specific state transition. |
|
| Engine API changes | 0 | No Engine API changes. |
|
| Transition-tool interface changes | 0 | The transition-tool inputs and outputs do not change. Consensus receipts still include the bloom. |
|
| New invariant on pre-existing tests | 0 | Baseline tests need no new assertion on any consensus output. |
|
| Cryptography | 0 | Unchanged primitives are reused, so no cryptographic mechanism changes. The changed message bytes belong under encoding. |
|
Assessment provenance
- Assessed EIP revision
ethereum/EIPs@0ddb8e9192EIPS/eip-7642.md committed 2025-04-17 · information cutoff 2025-04-17T21:24:29Z- 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/prague/eip-7642.yaml· sha25698ee7624be09 - Supporting documents supplied with the EIP
supporting/eip-5793.md,supporting/eip-7542.md