* first version - broken
* working proto changes
* resolve review remarks
* fix goimport issues
* fix service issues
* first logic version-broken
* first running version - no new tests
* fix validator client test
* add wait group to goroutines
* remove unused var in function call
* fix review remarks and tests
* merge master changes and fix conflicts
* gazzele fix
* fix prestonvanloon requested changes
* merge and some of terenc3t remarks addressed
* _,pk bug fix in log
* fix account file name suffix and filter not active validator out
* merge with master and fix missing parameters
* run over all public keys in hasvalidators
* add test for error when no all the validators has index in the db and hasvalidators is called
* fix runner tests fail due to timing issues
* goimports
* smaller sleep time in proposer tests
* fix UpdateAssignments loging
* fix goimports
* added && false commented TestUpdateAssignments_DoesNothingWhenNotEpochStartAndAlreadyExistingAssignments
* hasvalidators without missing publickeys list
* fix some of prestone review remarks
* fixes for prestone comments
* review changes applied
* expect context call in TestWaitForActivation_ValidatorOriginallyExists
* changed hasvalidators to return true if one validator exists
* fix init problem to getkeys
* hasvalidators requiers all validators to be in db
* validator attest assignments update
* fix ap var name
* Change name to hasallvalidators
* fix tests
* update script, fix any vs all validator calls
* fix wait for activation
* filter validator
* reuse the reply block
* fix imports
* Remove dup
* better lookup of active validators
* better filter active vlaidators, still need to fix committee assignment tests
* lint
* use activated keys
* fix for postchainstart
* fix logging
* move state transitions
* hasanyvalidator and hasallvalidators
* fix tests with updatechainhead missing
* add tests
* fix TestCommitteeAssignment_OK
* fix test
* fix validator tests
* fix TestCommitteeAssignment_multipleKeys_OK and TestWaitForActivation_ValidatorOriginallyExists
* fix goimports
* removed unused param from assignment
* change string(pk) to hex.EncodeString(pk) fix change requests
* add inactive validator status to assignments
* fix logging mess due to multi validator setup
* set no assignment to debug level
* log assignments every epoch
* logging fixes
* fixed runtime by using the right assignments
* correct activation request
* fix the validator panic
* correct assignment
* fix test fail and waitforactivation
* performance log issue fix
* fix goimports
* add log message with truncated pk for attest
* add truncated pk to attest and propose logs
* Add comment to script, change 9 to 8
* Update assignment log
* Add comment, report number of assignments
* Use WithError, add validator as field, merge block proposal log
* Update validator_propose.go
* fix
* use entry.String()
* fix fmt
* headRoot is a better name
* yay merged with master
* fixed attester server returning incorrect attestation field values
* revert stupid mock changes
* fixed and updated all the tests
* uncomment
* head start should handle skip blocks
* Raul's feedback
* plug forkchoice to blockchain service's block processing
* fixed tests
* more fixes...
* clean ups
* fixed test
* Update beacon-chain/blockchain/block_processing.go
* merged with 2006 and started fixing tests
* remove prints
* fixed tests
* lint
* include ops service
* if there's a skip slot, slot--
* fixed typo
* started working on test
* no fork choice in propose
* bleh, need to fix state generator first
* state gen takes input slot
* feedback
* fixed tests
* preston's feedback
* fmt
* removed extra logging
* add more logs
* fixed validator attest
* builds
* fixed save block
* children fix
* removed verbose logs
* fix fork choice
* right logs
* Add Prometheus Counter for Reorg (#2051)
* fetch every slot (#2052)
* test Fixes
* lint
* only regenerate state if there was a reorg
* better logging
* fixed seed
* better logging
* process skip slots in assignment requests
* fix lint
* disable state root computation
* filter attestations in regular sync
* log important items
* better info logs
* added spans to stategen
* span in stategen
* set validator deadline
* randao stuff
* disable sig verify
* lint
* lint
* save only using historical states
* use new goroutine for handling sync messages
* change default buffer sizes
* better p2p
* rem some useless logs
* lint
* sync tests complete
* complete tests
* tests fixed
* lint
* fix flakey att service
* PR feedback
* undo k8s changes
* Update beacon-chain/blockchain/block_processing.go
* Update beacon-chain/sync/regular_sync.go
* Add feature flag to enable compute state root
* add comment
* gazelle lint fix
* Verify signatures of attestations
* Implement BLS Signing for attestations
* Remove custody bit 0 from the attestation for now
* Fixes tests for attestations
* Fix tests to ensure they use proper attester indice
* Run gazelle
* Goimports
* Test attestation sigs in block operations
* Change formatting and make sure signatures are actually verified
* Fix duplicate import
* Fix duplicate import from merge
* Organize attestation sig to be conssitent with codebase
* Update to comments
* Change signatures to use aggregation
* Run gazelle
* Change function to return err instead of bool
Also gofmt
* Fix for comments
* Move createAggregationSignature to a function in attestations.go
* fatal if impossible to receive chainstart
* fix tests
* fix
* custom delay
* completed custom delay
* errors
* better logs, nothing at genesis
* use demo in val
* add gazelle
* log
* starting to log stuff
* pass in ops
* avoid printing the large #s for debug, still working on tests..
* all around better logging
* fixed build error in epoch process
* fixed state transiton tests
* fixed block tests
* lint
* verify sigs in randao
* ready for inclusion falg
* only print waiting when slot is not valid
* fix build
* mod config
* fixed last justified slot issue
* fix inclusion
* fixed attestation issue
* using zero hash from params instead
* fix tests
* update balance
* removed swp
* more `- genesis_slot` for logs
* rem unused log
* fix broken tests
* account for skip slots in state root computation
* fixes done
* validator guide bug fixes - 671
* epoch boundary at the last slot of the epoch
* fix epoch issue
* more balance cal logs for debugging
* greater balance
* attestaton fixes
* fixes
* addressed testrun
* fixed ejection balance
* fix tests with far future epoch
* revert sync change
* revert initial sync change
* fix changes
* off by one att fix
* revert the att fix
* address comments
* format
* fix build
* rem file
* clean up test
* adding test setup
* add chainstart check to sync querier
* goimports
* goimports
* backend cleanup
* adding getters
* lint
* moving to db
* gazelle
* adding more services setup
* adding more changes
* adding different test setups
* other merge issues
* imports
* fixing keys
* get intial sync able to be set up
* new changes and gazelle
* use simulated p2p
* everything finally works
* unexport fields
* revert changes from merge
* remove mock server
* add documentation
* gazelle
* add another node
* review comments
* fix tests
* correct attester view of chain head and prioritize proposer
* fix attempt not working
* revise with correct logic
* attester fixess to root fetching, spec did not make sense
* comments to match code
* fix attester responsibility
* comments
* provide validator with real keystore public key
* fmt
* build errors buildkite
* readd imports removed by goimport
* gazelle
* address broken tests
* make reference to filename a param
* fmt
* imports
* gazelle
* os remove all
* Use better Temp storage for tests
* testmain approach to avoid repeating expensive operation for each test
* travis lint
* fix test
* nokeystore in status test
* passing
* fix goimports
* initial validator attesthead rewrite based on proposer rewrite
* proceed with fetching committees and tree hashing the canonical head at assigned attester slot
* complete filling the properties of attestation data and all associated root hashes
* add when to attest todo
* finish entire attester client logic
* tests with mocks checked in
* tests passing in client
* stubbed out server implementation
* fixed build due to old property
* regen mocks with new mockgen version
* fixed broken tests
* complete bazel build fix
* address some review comments
* deep proto test
* server implementation logic
* attestation info tests
* completed passing tests, tree hash still blocked by error with nil fields unfortunately
* fix todo failure
* gazelle rerun and master merge
* testing full behavior of attestation info server
* finished all required server tests and implementation
* break loop
* fix tests due to genesis slot updates
* initial validator attesthead rewrite based on proposer rewrite
* proceed with fetching committees and tree hashing the canonical head at assigned attester slot
* complete filling the properties of attestation data and all associated root hashes
* add when to attest todo
* finish entire attester client logic
* tests with mocks checked in
* tests passing in client
* stubbed out server implementation
* fixed build due to old property
* regen mocks with new mockgen version
* fixed broken tests
* complete bazel build fix
* address some review comments
* deep proto test
* tests passing after checking for empty committee and crosslink root
* address nishant comments