eth2.0-specs/tests/core/pyspec/eth2spec/test
Etan Kissling c4dbd241ac
Root `next_sync_committee` in `attested_header`
`LightClientUpdate` structures currently use different merkle proof root
depending on the presence of `finalized_header`. By always rooting it in
the same state (the `attested_header.state_root`), logic gets simpler.

Caveats:
- In periods of extended non-finality, `update.finalized_header` may now
  be outdated by several sync committee periods. The old implementation
  rejected such updates as the `next_sync_committee` in them was stale,
  but the new implementation can properly handle this case.
- The `next_sync_committee` can no longer be considered finalized based
  on `is_finality_update`. Instead, waiting until `finalized_header` is
  in the `attested_header`'s sync committee period is now necessary.
- Because `update.finalized_header > store.finalized_header` no longer
  holds (for updates with finality), an `is_better_update` helper is
  added to improve `best_valid_update` tracking (in the past, finalized
  updates with supermajority participation would always directly apply)

This PR builds on prior work from:
- @hwwhww at https://github.com/ethereum/consensus-specs/pull/2829
2022-07-01 14:49:24 -07:00
..
altair Root `next_sync_committee` in `attested_header` 2022-07-01 14:49:24 -07:00
bellatrix Fix param order in `prepare_execution_payload` 2022-04-25 16:49:00 +02:00
capella Partial withdrawals (#2862) 2022-06-08 13:16:12 -06:00
custody_game Clean up outdated attestation helper 2021-05-24 11:54:28 -07:00
helpers Root `next_sync_committee` in `attested_header` 2022-07-01 14:49:24 -07:00
phase0 Remove `@disable_process_reveal_deadlines` 2022-06-06 16:24:44 +08:00
sharding Move constants to `eth2spec.test.helpers.constants` 2021-04-12 22:34:00 +08:00
utils add randomized tests for bellatrix 2022-01-27 19:41:09 -08:00
__init__.py
conftest.py Update tests/core/pyspec/eth2spec/test/conftest.py 2021-10-21 23:21:56 +08:00
context.py create decorator for tests with matching config 2022-06-24 01:05:11 +02:00
exceptions.py Polishing merge tests 2021-09-23 23:10:29 +03:00