You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: specs/electra/validator.md
+50Lines changed: 50 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,6 +38,19 @@ All behaviors and definitions defined in this document, and documents it extends
38
38
All terminology, constants, functions, and protocol mechanics defined in the updated Beacon Chain doc of [Electra](./beacon-chain.md) are requisite for this document and used throughout.
39
39
Please see related Beacon Chain doc before continuing and use them as a reference throughout.
40
40
41
+
## Helpers
42
+
43
+
### Modified `GetPayloadResponse`
44
+
45
+
```python
46
+
@dataclass
47
+
classGetPayloadResponse(object):
48
+
execution_payload: ExecutionPayload
49
+
block_value: uint256
50
+
blobs_bundle: BlobsBundle
51
+
execution_requests: list[bytes] # [New in Electra]
52
+
```
53
+
41
54
## Containers
42
55
43
56
### Modified Containers
@@ -59,6 +72,24 @@ class SignedAggregateAndProof(Container):
59
72
signature: BLSSignature
60
73
```
61
74
75
+
## Protocol
76
+
77
+
### `ExecutionEngine`
78
+
79
+
#### Modified `get_payload`
80
+
81
+
Given the `payload_id`, `get_payload` returns the most recent version of the execution payload that
82
+
has been built since the corresponding call to `notify_forkchoice_updated` method.
1. The execution payload is obtained from the execution engine as defined above using `payload_id`. The response also includes a `execution_requests` entry containing a list of bytes. Each element on the list corresponds to one ssz list of requests as defined
187
+
in [EIP-7685](https://eips.ethereum.org/EIPS/eip-7685). The index of each element in the array determines the type of request.
188
+
2. Set `block.body.execution_requests = get_execution_requests(execution_requests)`, where:
0 commit comments