From a4f5e3e6abc150f55bc7753036cf45bb5e7a3c96 Mon Sep 17 00:00:00 2001 From: Ningyu He Date: Thu, 4 Dec 2025 16:15:11 +0800 Subject: [PATCH] Update eip7928.md I have added one specification for the `engine_newPayloadV5` method. According to the Amsterdam upgrade, when the `blockAccessList` field is missing in `engine_newPayloadV5`, the error message: `-32602: Invalid params` should be returned. However, without specifying which error code should be returned, the `{status: INVALID, latestValidHash: null, validationError: errorMessage | null}` may be wrongly returned according to the previous description, which may lead to inconsistencies among clients. Therefore, I think it is necessary to clearly specify the should-be-returned error code. --- src/engine/eip7928.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/engine/eip7928.md b/src/engine/eip7928.md index dd228c288..914037a7e 100644 --- a/src/engine/eip7928.md +++ b/src/engine/eip7928.md @@ -75,9 +75,11 @@ This method follows the same specification as [`engine_newPayloadV4`](./prague.m 1. Client software **MUST** return `-38005: Unsupported fork` error if the `timestamp` of the payload does not fall within the time frame of the EIP-7928 activation. -2. Client software **MUST** validate the `blockAccessList` field by executing the payload's transactions and verifying that the computed access list matches the provided one. +2. Client software **MUST** return `-32602: Invalid params` error if the `blockAccessList` field is missing. -3. If the `blockAccessList` field is missing, malformed, or doesn't match the computed access list, the call **MUST** return `{status: INVALID, latestValidHash: null, validationError: errorMessage | null}`. +3. Client software **MUST** validate the `blockAccessList` field by executing the payload's transactions and verifying that the computed access list matches the provided one. + +4. If the `blockAccessList` field is malformed or doesn't match the computed access list, the call **MUST** return `{status: INVALID, latestValidHash: null, validationError: errorMessage | null}`. ### engine_getPayloadV6 @@ -122,4 +124,4 @@ a validation **MUST** be added: 1. Client software **MUST** return `-38005: Unsupported fork` error if the `timestamp` of payload greater or equal to the EIP-7928 activation timestamp. For the [`engine_forkchoiceUpdatedV3`](./cancun.md#engine_forkchoiceupdatedv3) the following modification **MUST** be made: -1. Return `-38005: Unsupported fork` if `payloadAttributes.timestamp` doesn't fall within the time frame of the Cancun, Prague, Osaka *or EIP-7928* forks. \ No newline at end of file +1. Return `-38005: Unsupported fork` if `payloadAttributes.timestamp` doesn't fall within the time frame of the Cancun, Prague, Osaka *or EIP-7928* forks.