lighthouse/eth2/utils
Paul Hauner b771bbb60c
Add proto_array fork choice (#804)
* Start implementing proto_array

* Add progress

* Add unfinished progress

* Add further progress

* Add progress

* Add tree filtering

* Add half-finished modifications

* Add refactored version

* Tidy, add incomplete LmdGhost impl

* Move impls in LmdGhost trait def

* Remove old reduced_tree fork choice

* Combine two functions in to `compute_deltas`

* Start testing

* Add more compute_deltas tests

* Add fork choice testing

* Add more fork choice testing

* Add more fork choice tests

* Add more testing to proto-array

* Remove old tests

* Modify tests

* Add more tests

* Add more testing

* Add comments and fixes

* Re-organise crate

* Tidy, finish pruning tests

* Add ssz encoding, other pub fns

* Rename lmd_ghost > proto_array_fork_choice

* Integrate proto_array into lighthouse

* Add first pass at fixing filter

* Clean out old comments

* Add more comments

* Attempt to fix prune error

* Adjust TODO

* Fix test compile errors

* Add extra justification change check

* Update cargo.lock

* Fix fork choice test compile errors

* Most remove ffg_update_required

* Fix bug with epoch of attestation votes

* Start adding new test format

* Make fork choice tests declarative

* Create test def concept

* Move test defs into crate

* Add binary, re-org crate

* Shuffle files

* Start adding ffg tests

* Add more fork choice tests

* Add fork choice JSON dumping

* Add more detail to best node error

* Ensure fin+just checkpoints from from same block

* Rename JustificationManager

* Move checkpoint manager into own file

* Tidy

* Add targetted logging for sneaky sync bug

* Fix justified balances bug

* Add cache metrics

* Add metrics for log levels

* Fix bug in checkpoint manager

* Fix compile error in fork choice tests

* Ignore duplicate blocks in fork choice

* Add block to fock choice before db

* Rename on_new_block fn

* Fix spec inconsistency in `CheckpointManager`

* Remove BlockRootTree

* Remove old reduced_tree code fragment

* Add API endpoint for fork choice

* Add more ffg tests

* Remove block_root_tree reminents

* Ensure effective balances are used

* Remove old debugging code, fix API fault

* Add check to ensure parent block is in fork choice

* Update readme dates

* Fix readme

* Tidy checkpoint manager

* Remove fork choice yaml files from repo

* Remove fork choice yaml from repo

* General tidy

* Address majority of Michael's comments

* Tidy bin/lib business

* Remove dangling file

* Undo changes for rpc/handler from master

* Revert "Undo changes for rpc/handler from master"

This reverts commit 876edff0e4a501aafbb47113454852826dcc24e8.

Co-authored-by: Age Manning <Age@AgeManning.com>
2020-01-29 15:05:00 +11:00
..
bls Bump bls version (#768) 2020-01-28 15:19:45 +11:00
cached_tree_hash Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
compare_fields Add extra level of comparisons to CompareFields 2019-05-24 14:08:19 +10:00
compare_fields_derive Robustify derive macro attribute parsing (#544) 2019-09-28 14:29:14 +10:00
deposit_contract Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
eth2_config Eth1 Integration (#542) 2019-11-15 14:47:51 +11:00
eth2_hashing Implement tree hash caching (#584) 2019-11-05 15:46:52 +11:00
eth2_interop_keypairs Bump bls version (#768) 2020-01-28 15:19:45 +11:00
eth2_testnet_config Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
int_to_bytes Updates external dependencies (#577) 2019-10-30 12:22:18 +11:00
lighthouse_bootstrap Updates external dependencies (#577) 2019-10-30 12:22:18 +11:00
lighthouse_metrics Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
logging Add proto_array fork choice (#804) 2020-01-29 15:05:00 +11:00
merkle_proof Fix merkle_proof for eth2_hashing refactor (#593) 2019-11-05 18:06:41 +11:00
remote_beacon_node Add proto_array fork choice (#804) 2020-01-29 15:05:00 +11:00
serde_hex Updates external dependencies (#577) 2019-10-30 12:22:18 +11:00
slot_clock Validator client refactor (#618) 2019-11-25 15:48:24 +11:00
ssz Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
ssz_derive Fix custom derive macros (#621) 2019-11-24 12:00:49 +11:00
ssz_types Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00
swap_or_not_shuffle Update to spec v0.9.1 (#597) 2019-11-21 11:47:30 +11:00
test_random_derive Robustify derive macro attribute parsing (#544) 2019-09-28 14:29:14 +10:00
tree_hash Implement tree hash caching (#584) 2019-11-05 15:46:52 +11:00
tree_hash_derive Fix clippy warnings (#813) 2020-01-21 18:38:56 +11:00