Skip to content

Tighten allowed slots for proposer index computation - #50

Merged
eserilev merged 1 commit into
eserilev:gloas-alpha-spec-9from
michaelsproul:gloas-alpha-spec-9
Jun 15, 2026
Merged

Tighten allowed slots for proposer index computation#50
eserilev merged 1 commit into
eserilev:gloas-alpha-spec-9from
michaelsproul:gloas-alpha-spec-9

Conversation

@michaelsproul

@michaelsproul michaelsproul commented Jun 15, 2026

Copy link
Copy Markdown

Spent way too long thinking about EIP-8045 and all I came up with was this sanity check.

The key idea is that we shouldn't allow computation of proposer indices at any slot after the decision root slot.

Prior to Gloas the decision root meant something like:

You can compute the proposer shuffling using any state that agrees with this decision root and has not diverged in effective_balances (in practice: the state at the decision slot, or any state descended from it prior to the subsequent epoch boundary).

Now post-Gloas (with EIP-8045) it means:

You can ONLY compute the proposer shuffling using the state at the decision slot itself. After that the proposer shuffling is liable to change due to slashings.

The sanity check guards against us accidentally using a state that has more information than it should (new slashings), but DOES NOT protect against a state from the decision slot with too little information (we can't tell whether the latest block from decision_slot is/should have been applied, and we can't tell whether the epoch transition affecting effective balances has already happened as it should have).

@eserilev
eserilev merged commit ff24e92 into eserilev:gloas-alpha-spec-9 Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants