55<!-- mdformat-toc start --slug=github --no-anchors --maxlevel=6 --minlevel=2 -->
66
77- [ Introduction] ( #introduction )
8+ - [ Configuration] ( #configuration )
9+ - [ Time parameters] ( #time-parameters )
810- [ Validator assignment] ( #validator-assignment )
911 - [ Lookahead] ( #lookahead )
1012- [ Beacon chain responsibilities] ( #beacon-chain-responsibilities )
2628This document represents the changes and additions to the Honest validator guide
2729included in the EIP-7732 fork.
2830
31+ ## Configuration
32+
33+ ### Time parameters
34+
35+ | Name | Value | Unit | Duration |
36+ | ------------------------------ | -------------- | :----------: | :-----------------------: |
37+ | ` ATTESTATION_DUE_BPS_EIP7732 ` | ` uint64(2500) ` | basis points | 25% of ` SLOT_DURATION_MS ` |
38+ | ` AGGREGRATE_DUE_BPS_EIP7732 ` | ` uint64(5000) ` | basis points | 50% of ` SLOT_DURATION_MS ` |
39+ | ` SYNC_MESSAGE_DUE_BPS_EIP7732 ` | ` uint64(2500) ` | basis points | 25% of ` SLOT_DURATION_MS ` |
40+ | ` CONTRIBUTION_DUE_BPS_EIP7732 ` | ` uint64(5000) ` | basis points | 50% of ` SLOT_DURATION_MS ` |
41+ | ` PAYLOAD_ATTESTATION_DUE_BPS ` | ` uint64(7500) ` | basis points | 75% of ` SLOT_DURATION_MS ` |
42+
2943## Validator assignment
3044
3145A validator may be a member of the new Payload Timeliness Committee (PTC) for a
@@ -69,16 +83,17 @@ All validator responsibilities remain unchanged other than the following:
6983 becomes a builder's duty.
7084- Some validators are selected per slot to become PTC members, these validators
7185 must broadcast ` PayloadAttestationMessage ` objects during the assigned slot
72- before the deadline of ` 3 * SECONDS_PER_SLOT // INTERVALS_PER_SLOT ` seconds
86+ before the deadline of
87+ ` get_slot_component_duration_ms(PAYLOAD_ATTESTATION_DUE_BPS) ` milliseconds
7388 into the slot.
7489
7590### Attestation
7691
77- The attestation deadline is implicitly changed by the change in
78- ` INTERVALS_PER_SLOT ` . Moreover, the ` attestation.data.index ` field is now used
79- to signal the payload status of the block being attested to
80- ( ` attestation.data.beacon_block_root ` ). With the alias
81- ` data = attestation.data ` , the validator should set this field as follows:
92+ The attestation deadline is changed with ` ATTESTATION_DUE_BPS_EIP7732 ` .
93+ Moreover, the ` attestation.data.index ` field is now used to signal the payload
94+ status of the block being attested to ( ` attestation.data.beacon_block_root ` ).
95+ With the alias ` data = attestation.data` , the validator should set this field as
96+ follows:
8297
8398- If ` block.slot == current_slot ` (i.e., ` data.slot ` ), then always set
8499 ` data.index = 0 ` .
@@ -92,7 +107,7 @@ to signal the payload status of the block being attested to
92107### Sync Committee participations
93108
94109Sync committee duties are not changed for validators, however the submission
95- deadline is implicitly changed by the change in ` INTERVALS_PER_SLOT ` .
110+ deadline is changed with ` SYNC_MESSAGE_DUE_BPS_EIP7732 ` .
96111
97112### Block proposal
98113
@@ -152,16 +167,17 @@ prepared to submit their PTC attestations during the next epoch.
152167
153168A validator should create and broadcast the ` payload_attestation_message ` to the
154169global execution attestation subnet not after
155- ` SECONDS_PER_SLOT * 3 / INTERVALS_PER_SLOT ` seconds since the start of ` slot `
170+ ` get_slot_component_duration_ms(PAYLOAD_ATTESTATION_DUE_BPS) ` milliseconds since
171+ the start of ` slot ` .
156172
157173#### Constructing a payload attestation
158174
159175If a validator is in the payload attestation committee for the current slot (as
160176obtained from ` get_ptc_assignment ` above) then the validator should prepare a
161177` PayloadAttestationMessage ` for the current slot, according to the logic in
162178` get_payload_attestation_message ` below and broadcast it not after
163- ` SECONDS_PER_SLOT * 3 / INTERVALS_PER_SLOT ` seconds since the start of the slot,
164- to the global ` payload_attestation_message ` pubsub topic.
179+ ` get_slot_component_duration_ms(PAYLOAD_ATTESTATION_DUE_BPS) ` milliseconds since
180+ the start of the slot, to the global ` payload_attestation_message ` pubsub topic.
165181
166182The validator creates ` payload_attestation_message ` as follows:
167183
0 commit comments