lighthouse
lighthouse copied to clipboard
MaxEB core feature
Issue Addressed
Part of
- https://github.com/sigp/lighthouse/issues/5399
Proposed Changes
Implements MaxEB core feature = everything except features below.
is_aggregator
The most tricky bit of the change is making is_aggregator dependent on previous state balances. The current code assumes that you can derive aggregator duties from a shuffling, but this is no longer the case.
I see two ways to fix the issue:
- Include previous epoch balances in the
CommitteeCachestruct - Add a second cache with distinct characteristics for aggregator duties
Initially I went for 1), however it breaks the state transition logic, since the CommitteeCache is used in the state to process blocks that contain attestations from previous and current epoch. Given a state you can only derive the CommitteeCache for the next epoch, since you only have access those state's balances.
So @ethDreamer attempted 2) in https://github.com/dapplion/lighthouse/pull/20 and it doesn't look to complicated, so we are taking that route for now.