* Begin working on end to end tests using geth dev chain
* Start on beacon node set up
* More progress on bnode setup
* Complete flow until chainstart, begin work on evaluators
* More progress on evaluators
* Start changing bazel run to direct binary
* Move endtoend to inside beacon-chain
* use bazel provided geth, use bazel test
* tempdir
* use fork rules_go
* Change to use UUID dir and bazel binaries
* Truncate UUID a bit
* Get full run from chainstart to evaluating
* Rewrite to react to logs rather than arbitrarily wait
* Fix export
* Move evaluators to evaluators.go
* Add peer check test
* Add more comments
* Remove unneeded exports
* Check all nodes have the correct amount of peers
* Change name to onGenesisEpoch
* Remove extra wait times where not needed
* Cleanup
* Add log for beacon start
* Fix deposit amount
* Make room for eth1follow distnce
* Cleanup and fix minimal test
* Goimports
* Fix imports
* gazelle and minimal
* manual
* Fix for comments
* Make timing rely on reading logs, and cleanup
* Fix for comments
* Fix workspace
* Cleanup
* Fix visibility
* Cleanup and some comments
* Address comments
* Fix for v0.9
* Modify for v0.9
* Move to own package outside of beacon-chain
* Gazelle
* Polishing, logging
* Fix filenames
* Add more logs
* Add flag logging
* Cover for page not having libp2p info
* Improve multiAddr detection
* Add more logs
* Add missing flags
* Add log printing to defer
* Get multiAddr from logs
* Fix logging and detection
* Change evaluators to rely on EpochTimer
* Add evaluator for ValidatorParticipation
* Fix validator participation evaluator
* Cleanup, comments and fix participation calculation
* Cleanup
* Let the file searcher search for longer
* Change participation to check for full
* Log out file contents if text isnt found
* Split into different files
* Disable IPC and use RPC instead, change tmp dir to bazel dir
* Change visibility
* Gazelle
* Add e2e tag
* new line
* Revert "Revert "Change BLS Library to Herumi (#3752)" (#4006)"
This reverts commit 904898e405.
* turn it on
* make all docker images with cgo deps static
* change back
* fix build
* switch back
* address gateway
* fix library again
* change to herumi's bls
* change alias
* change to better
* add benchmark
* build
* change to bazel fork
* fix prefix
* make it work with library
* update to latest
* change again
* add import
* update to latest
* add sha commit
* new static lib with groups swapped
* using herumis new lib
* fix dep paths in c headers
* update again
* new changes
* fix commit
* fix serialization
* comment
* fix test
* fix to herumis latest version
* fix test
* fix benchmarks
* add new workspace
* change commit and remove init
* get test to pass
* remove parameter
* remove reverse byte order
* make gazelle happy
* set pure to off
* fix failing tests
* remove old ref
* use HashWithDomain functions
* update to latest version
* clean up
* gaz
* add back removed code
* switch off pure
* Update seed domains (#3872)
* Remove Transfers (#3870)
* Remove active index roots and compact committee roots (#3869)
* Update inclusion reward (#3886)
* Alter proposer selection logic (#3884)
* Fix early committee bias (#3888)
* Remove shards and committees (#3896)
* Epoch spec tests v0.9 (#3907)
* Block spec test v0.9 (#3905)
* rm'ed in protobuf
* build proto
* build proto
* build proto
* fix core package
* Gazelle
* Fixed all the tests
* Fixed static test
* Comment out spec test for now
* One more skip
* fix-roundRobinSync (#3862)
* Starting but need new seed function
* Revert initial sync
* Updated Proposer Slashing
* Fixed all tests
* Lint
* Update inclusion reward
* Fill randao mixes with eth1 data hash
* Test
* Fixing test part1
* All tests passing
* One last test
* Updated config
* Build proto
* Proper skip message
* Conflict and fmt
* Removed crosslinks and shards. Built
* Format and gazelle
* Fixed all the block package tests
* Fixed all the helper tests
* All epoch package tests pass
* All core package tests pass
* Fixed operation tests
* Started fixing rpc test
* RPC tests passed!
* Fixed all init sync tests
* All tests pass
* Fixed blockchain tests
* Lint
* Lint
* Preston's feedback
* Starting
* Remove container
* Fixed block spec tests
* All passing except for block_processing test
* Failing block processing test
* Starting
* Add AggregateAndProof
* All mainnet test passes
* Update deposit contract (#3906)
* Proto spec tests v0.9 (#3908)
* Starting
* Add AggregateAndProof
* Unskip block util tests (#3910)
* rm'ed in protobuf
* build proto
* build proto
* build proto
* fix core package
* Gazelle
* Fixed all the tests
* Fixed static test
* Comment out spec test for now
* One more skip
* fix-roundRobinSync (#3862)
* Starting but need new seed function
* Revert initial sync
* Updated Proposer Slashing
* Fixed all tests
* Lint
* Update inclusion reward
* Fill randao mixes with eth1 data hash
* Test
* Fixing test part1
* All tests passing
* One last test
* Updated config
* Build proto
* Proper skip message
* Conflict and fmt
* Removed crosslinks and shards. Built
* Format and gazelle
* Fixed all the block package tests
* Fixed all the helper tests
* All epoch package tests pass
* All core package tests pass
* Fixed operation tests
* Started fixing rpc test
* RPC tests passed!
* Fixed all init sync tests
* All tests pass
* Fixed blockchain tests
* Lint
* Lint
* Preston's feedback
* Starting
* Remove container
* Fixed block spec tests
* All passing except for block_processing test
* Failing block processing test
* Starting
* Add AggregateAndProof
* All mainnet test passes
* Unskip block util tests
* Slot processing spec test V0.9 (#3912)
* Starting
* Add AggregateAndProof
* Unskip slot processing mainnet test
* Unskip minimal spec test for finalization (#3920)
* Remove outdated interop tests (#3922)
* Rm outdated interop tests
* Rm test runner
* Gazelle
* Update validator to use proposer slot (#3919)
* Fix committee assignment (#3931)
* Replace shard with committee index (#3930)
* Conflict
* Clean up (#3933)
* Remove shard filter in db (#3936)
* Remove lightouse compatibility test (#3939)
* Update Committee Cache for v0.9 (#3948)
* Updated committee cache
* Removed shuffled indices cache
* Started testing run time
* Lint
* Fixed test
* Safeguard against nil head state
* address edge case
* add test
* Fixed TestRoundRobinSync by doubling the epochs
* Unskip TestProtoCompatability (#3958)
* Unskip TestProtoCompatability
* Update WORKSPACE
* Fix minimal config (#3959)
* fix minimal configs
* fix hardcoded value in test
* Simplify verify att time (#3961)
* update readme for deposit contract, regen bindings for vyper 0.1.0b12 (#3963)
* update readme for deposit contract, regen bindings
* medium
* Check nil base state (#3964)
* Copy Block When Receiving it From Sync (#3966)
* copy block
* clone for other service methods too
* Change logging of Bitfield (#3956)
* change logging of bits
* preston's review
* Unskip Beacon Server Test (#3962)
* run test till the end
* fix up proto message types
* fmt
* resolve broken tests
* better error handling
* fixing new logic to use archived proposer info
* fix up logic
* clip using the max effective balance
* broken build fix with num arg mismatch
* amend archive
* archival logic changed
* rename test
* archive both proposer and attester seeds
* page size 100
* further experiments
* further experimentation, archivedProposerIndex seems wrong
* test passes
* rem log
* fix broken test
* fix test
* gaz
* fix imports
* ethapis
* Added the panic capture so that information about it gets into the log file
* Printf -> Errorf
* Update validator/main.go "run time" -> "Runtime"
Co-Authored-By: Raul Jordan <raul@prysmaticlabs.com>
* Update beacon-chain/main.go "run time" -> "Runtime"
Co-Authored-By: Raul Jordan <raul@prysmaticlabs.com>
* Starting
* Update logging for service
* Update logging for assignment
* Update logging for attest
* Update logging for propose
* Update logging for balance update
* Final touchup
* Fixed test
* Fixed test
* Feedback
* Fix
* Fix all the tests
* skip bls verification with a feature flag at runtime
* gazelle
* more bls mocks
* block roots efficiency
* db block roots now does not show up on the flame graphs
* save validator latest votes batch
* batch save att
* misc improvements to pprof
* import
* include validator index cache
* error if no filter criteria
* resolved comments
* build fix
* lint
* remove delay global
* attestation and block test fixes
* preston suggestions
* fix db tests
* fix missing broken tests
* tests pass
* Tidy up logging in the validator
* Log full public key when validator first initialised
* Use 'validator' rather than 'pubKey' for traces; use full public key
* make demo default
* make minimal config a flag
* lint
* initialize config at the start
* gaz
* make main method cleaner
* remove interop.go
* fix test
* lint
* gaz
* Update validator/accounts/interop.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* fix docker build
* fix docker build
* first version of the watchtower api
* first version
* delete watchtower
* move to message loop
* roughtime
* one time
* fix test
* Fixed test
* Fixed proposer server
* Gaz
* gaz
* Stuck
* Tests passing
* Fixed all the tests
* coldstart flags for validator
* WIP beacon node flags
* wip beacon chain, flag fix in validator, arg fix in validator
* checkpoint
* Added interop service
* working on mock chainstart
* save the state lol
* fix tests
* Save genesis validators
* gaz
* fix validator help flags
* WaitForChainStart actually waits for genesis time
* cold start fixes
* cache
* change back
* allow for genesis state too
* remove logs
* increase mmap size
* dont process if head doesn't exist
* add 10ms tolerance
* enable libp2p debug at debug, fix pubsub
* works with checkpt
* initialize justified and finalized in db
* Removed preloadStatePath from blockchain service
* Clean up
* Write to disk for now post state
* revert b466dd536f8eadbdae2264a545a755370223d917
* Builds
* Only RPC test fails now
* use minimal config, no demo config
* clean up branch
* Lint
* resolve lint
* more lint fixes
* lint
* fix viz
* Fixing RPC test
* skip before epoch 2
* RPC time out
* Fixed ordering
* rename
* remove some dbg statements
* ensure index is correct
* fix some panics
* getting closer
* fix tests
* Fix private key
* Fixed RPC test
* Fixed beacon chain build for docker
* Add interop.go to validator go_image
* Fixed docker build
* handle errors
* skip test, skip disconnecting peers
* Fixed docker build
* tolerance for attestation processing
* revert copy
* clearer err message parse
* fix launching from dep contract
* Ignore latest messages in fork choice prior to latest justified
* Make sure Compact Committee Roots isn't changed by process_final_updates
* WIP add attestation bitfields length to match committee length
* Begin work on updating spec tests to 0.8.2
* WIP set up for new spec test structure
* Fix slashings
* Get mainnet tests mostly passing for attestations and attester slashings
* Fix process attestation test
* Undo change
* Complete spec tests for all operations
Still need sanity block tests
* Fix BLS sigs
* Reduce amount of reused code in core/blocks/spectests/
* Fix tests
* Update block sanity tests to 0.8.2
* Update epoch spec tests to 0.8.2
* Clean up all tests and fix shuffling/epoch tests
* WIP update bls tests to 0.8.2
* WIP update bls tests to 0.8.3
* Finish BLS spectest update to 0.8.3
* Fix shuffling spec tests
* Fix more tests
* Update proto ssz spec tests to 0.8.3
* Attempt to fix PrevEpochFFGDataMismatches test
* Goimports
* Fix documentation
* fix test
* Use custom general spec tests
* Reduce code footprint
* Remove unneeded minimal skip
* Fix for comments
* Fix for comments
* Fix test
* Small fixes
* Cleanup block spec tests a bit
* Undo change
* fix validator
* Fix validator tests
* Run gazelle
* Fix error output for epoch spec tests