PTC Vote vs Proposer Decision

How attesters behave depending on PTC presence, proposer payload, and block type

PTC Proposer Has P_N Builds Attesters Have P_N Attesters Vote Reason
Present Yes FULL Yes Yes PTC + proposer aligned on FULL, attesters follow
Present Yes FULL No No Attesters can't validate block (need payload_states)
Present Yes EMPTY Yes No PTC wins tiebreaker → FULL; proposer's block not on FULL branch
Present Yes EMPTY No Yes Attesters' FC has no FULL option, follows EMPTY to proposer
Present No FULL — Impossible Can't build FULL without payload
Present No EMPTY Yes No PTC wins tiebreaker → FULL; proposer's block not on FULL branch
Present No EMPTY No Yes Attesters' FC has no FULL option, follows EMPTY to proposer
Not Present Yes FULL Yes Yes Proposer overrides PTC; attesters with payload can validate
Not Present Yes FULL No No Attesters can't validate block (need payload_states)
Not Present Yes EMPTY Yes Yes PTC + proposer aligned on EMPTY, attesters follow
Not Present Yes EMPTY No Yes PTC + proposer aligned on EMPTY, attesters follow
Not Present No FULL — Impossible Can't build FULL without payload
Not Present No EMPTY Yes Yes PTC + proposer aligned on EMPTY, attesters follow
Not Present No EMPTY No Yes PTC + proposer aligned on EMPTY, attesters follow
PTC Present
PTC Present Vote: Yes
Yes
FULL
Yes
PTC + proposer aligned on FULL, attesters follow
PTC Present Vote: No
Yes
FULL
No
Attesters can't validate block (need payload_states)
PTC Present Vote: No
Yes
EMPTY
Yes
PTC wins tiebreaker → FULL; proposer's block not on FULL branch
PTC Present Vote: Yes
Yes
EMPTY
No
Attesters' FC has no FULL option, follows EMPTY to proposer
PTC Present Impossible
No
FULL
—
Can't build FULL without payload
PTC Present Vote: No
No
EMPTY
Yes
PTC wins tiebreaker → FULL; proposer's block not on FULL branch
PTC Present Vote: Yes
No
EMPTY
No
Attesters' FC has no FULL option, follows EMPTY to proposer
PTC Not Present
PTC Not Present Vote: Yes
Yes
FULL
Yes
Proposer overrides PTC; attesters with payload can validate
PTC Not Present Vote: No
Yes
FULL
No
Attesters can't validate block (need payload_states)
PTC Not Present Vote: Yes
Yes
EMPTY
Yes
PTC + proposer aligned on EMPTY, attesters follow
PTC Not Present Vote: Yes
Yes
EMPTY
No
PTC + proposer aligned on EMPTY, attesters follow
PTC Not Present Impossible
No
FULL
—
Can't build FULL without payload
PTC Not Present Vote: Yes
No
EMPTY
Yes
PTC + proposer aligned on EMPTY, attesters follow
PTC Not Present Vote: Yes
No
EMPTY
No
PTC + proposer aligned on EMPTY, attesters follow
● Yes / Present ● No / Not Present FULL Full block EMPTY Empty block