* Migrate ChainStarted and StateInitialized to state notifier
* Provide state notifier to powchain service
* Merge remote-tracking branch 'upstream/master'
* Merge remote-tracking branch 'upstream/master'
* Remove commented line
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge remote-tracking branch 'upstream/master'
* Merge branch 'master' of github.com:mcdee/prysm
* Accept err from HeadState() as non-fatal
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge remote-tracking branch 'upstream/master'
* Merge branch 'master' of github.com:mcdee/prysm
* Explicit unsubscribes from state channels where required
* Migrate ChainStarted and StateInitialized to state notifier
* Provide state notifier to powchain service
* Merge remote-tracking branch 'upstream/master'
* Merge remote-tracking branch 'upstream/master'
* Remove commented line
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge remote-tracking branch 'upstream/master'
* Merge branch 'master' of github.com:mcdee/prysm
* Accept err from HeadState() as non-fatal
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge branch 'master' into master
* Release --prune-finalized-states to all
* Merge branch 'master' into deprecate-ff-prune-finalized-states
* Merge branch 'master' of github.com:prysmaticlabs/prysm into deprecate-ff-prune-finalized-states
* Merge refs/heads/master into deprecate-ff-prune-finalized-states
* Merge refs/heads/master into deprecate-ff-prune-finalized-states
* Merge refs/heads/master into deprecate-ff-prune-finalized-states
* Merge refs/heads/master into deprecate-ff-prune-finalized-states
* Merge branch 'master' of github.com:prysmaticlabs/prysm into deprecate-ff-prune-finalized-states
* Release optimize-proces-epoch to all
* Merge branch 'master' into deprecate-ff-optimize-process-epoch
* Merge branch 'master' of github.com:prysmaticlabs/prysm into deprecate-ff-optimize-process-epoch
* Merge refs/heads/master into deprecate-ff-optimize-process-epoch
* Merge refs/heads/master into deprecate-ff-optimize-process-epoch
* Merge refs/heads/master into deprecate-ff-optimize-process-epoch
* Merge refs/heads/master into deprecate-ff-optimize-process-epoch
* adding default response
* regression test for archival
* include full regression test
* Merge branch 'master' into resolve-panic-rpc
* Merge branch 'master' into resolve-panic-rpc
* Merge branch 'master' into resolve-panic-rpc
* Merge branch 'master' into resolve-panic-rpc
* listbal
* Merge branch 'master' into resolve-panic-rpc
* Merge branch 'master' into resolve-panic-rpc
* Merge branch 'master' into resolve-panic-rpc
* Merge refs/heads/master into resolve-panic-rpc
* update workspace
* include active filter
* fix up latest changes to match naming
* better comments, fix evaluators
* latest master
* filter items
* filter only active validators
* first version of the watchtower api
* service files
* Begin work on grpc server
* More changes to server
* REnames and mock setup
* working test
* merge
* double propose detection test
* nishant review
* todo change
* gaz
* fix service
* gaz
* remove unused import
* gaz
* resolve circular dependency
* resolve circular dependency 2nd try
* remove package
* fix package
* fix test
* added tests
* gaz
* remove status check
* gaz
* remove context
* remove context
* change var name
* moved to rpc dir
* gaz
* remove server code
* gaz
* slasher server
* visibility change
* pb
* service update
* gaz
* slasher grpc server
* making it work
* setup db and start
* gaz
* service flags fixes
* grpc service running
* go imports
* remove new initializer
* gaz
* remove feature flags
* change back SetupSlasherDB
* fix SetupSlasherDB calls
* define err
* fix bad merge
* fix test
* fix imports
* fix imports
* fix imports
* add cancel
* comment stop
* fix cancel issue
* remove unneeded code
* bring back bad merge that removed TODO
* remove use of epoch as am input
* fixed slasher to be runable again
* wait for channel close
* gaz
* small test
* flags fix
* fix flag order
* double vote detection
* remove source epoch from indexed attestation indices
* change server method to receive indexed attestation
* start implementation
* double vote detection
* proto
* pb
* fir comment
* add surround detection and retrieval to endpoint
* nishant review
* import fix
* fix miss order
* fix detection 0 case
added tests
* terence review
* first version of the watchtower api
* service files
* Begin work on grpc server
* More changes to server
* REnames and mock setup
* working test
* merge
* double propose detection test
* nishant review
* todo change
* gaz
* fix service
* gaz
* remove unused import
* gaz
* resolve circular dependency
* resolve circular dependency 2nd try
* remove package
* fix package
* fix test
* added tests
* gaz
* remove status check
* gaz
* remove context
* remove context
* change var name
* moved to rpc dir
* gaz
* remove server code
* gaz
* slasher server
* visibility change
* pb
* service update
* gaz
* slasher grpc server
* making it work
* setup db and start
* gaz
* service flags fixes
* grpc service running
* go imports
* remove new initializer
* gaz
* remove feature flags
* change back SetupSlasherDB
* fix SetupSlasherDB calls
* define err
* fix bad merge
* fix test
* fix imports
* fix imports
* fix imports
* add cancel
* comment stop
* fix cancel issue
* remove unneeded code
* bring back bad merge that removed TODO
* remove use of epoch as am input
* fixed slasher to be runable again
* wait for channel close
* gaz
* small test
* flags fix
* fix flag order
* double vote detection
* remove source epoch from indexed attestation indices
* change server method to receive indexed attestation
* start implementation
* double vote detection
* proto
* pb
* fir comment
* nishant review
* import fix
* Update slasher/db/indexed_attestations.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* terence feedback
* return empty if no attestations
* list balances proper response
* standardize epoch error
* future epoch error test
* no results test
* no results in list attestations
* test for list blocks no results
* cannot request future epoch for balances rpc
* test for no results in balances
* adding tests for get validator
* cannot request future in participation
* useless conditional
* resolve old epoch test
* completed failing tests
* fix request bug
* 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