prysm-pulse/validator
Shay Zluf acb47f2920
Implement Standard Slashing Protection JSON With Importing Logic (#7675)
* Use new attestation protection

* tests fixes

* fix tests

* fix comment

* fix TestSetTargetData

* fix tests

* empty history handling

* fix another test

* mock domain request

* fix empty handling

* use far future epoch

* use far future epoch

* migrate data

* copy byte array to resolve sigbus error

* init validator protection on pre validation

* Import interchange json

* Import interchange json

* reduce visibility

* use return value

* raul feedback

* rename fixes

* import test

* checkout att v2 changes

* define import method for interchange format in its own package

* rename and made operations atomic

* eip comment

* begin amending test file

* finish happy path for import tests

* attempt the interchange import tests

* fixed tests

* happy and sad paths tested

* good error messages

* fix up comment with proper eip link

* tests for helpers

* helpers

* all tests pass

* proper test comment

* terence feedback

* validate metadata func

* versioning check

* begin handling duplicatesz

* handle duplicate public keys with potentially different data, first pass

* better handling of duplicate data

* ensure duplicates are taken care of

* comprehensive tests for deduplication of signed blocks

* tests for deduplication

* Update validator/slashing-protection/local/standard-protection-format/helpers_test.go

Co-authored-by: Shay Zluf <thezluf@gmail.com>

* Update validator/slashing-protection/local/standard-protection-format/helpers_test.go

Co-authored-by: Shay Zluf <thezluf@gmail.com>

* tests for maxuint64 and package level comment

* tests passing

* edge cases pass

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2020-11-17 22:37:43 +00:00
..
accounts Handle duplicate keystores in import path without error (#7842) 2020-11-17 13:50:23 -06:00
client Remove WaitForSynced (#7835) 2020-11-16 20:48:16 -06:00
db Implement Standard Slashing Protection JSON With Importing Logic (#7675) 2020-11-17 22:37:43 +00:00
flags [Feature] enable/disable validator accounts (#7746) 2020-11-13 10:06:24 -06:00
keymanager Handle duplicate keystores in import path without error (#7842) 2020-11-17 13:50:23 -06:00
node Remove Keymanageropts Pattern from Wallets and Remove Enable/Disable Feature for V1 CLI (#7831) 2020-11-17 06:00:20 +00:00
rpc Remove Keymanageropts Pattern from Wallets and Remove Enable/Disable Feature for V1 CLI (#7831) 2020-11-17 06:00:20 +00:00
slashing-protection Implement Standard Slashing Protection JSON With Importing Logic (#7675) 2020-11-17 22:37:43 +00:00
testing Various code inspection resolutions (#7438) 2020-10-12 08:11:05 +00:00
web Fix Web UI Integration With Prysm Beta (#7591) 2020-10-21 17:32:00 -05:00
BUILD.bazel Update rules_go (#7202) 2020-11-10 03:01:56 +00:00
main.go Revert "Use validator protection datadir" (#7627) 2020-10-23 17:19:38 +00:00
README.md Updated why-combining-sharding-and-casper link in validator/README.md (#3810) 2019-10-20 19:43:30 -07:00
usage_test.go Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08:00
usage.go Revert "Use validator protection datadir" (#7627) 2020-10-23 17:19:38 +00:00

Prysmatic Labs Validator Client Implementation

This is the main project folder for a validator client implementation of Ethereum Serenity in Golang by Prysmatic Labs. A validator client attaches to a running beacon node in order to perform proposer/attester responsibilities and manage the lifecycle of a particular shard upon being assigned to one.

Before you begin, check out our main README and join our active chat room on Discord or Gitter below:

Discord Gitter

Also, read the latest sharding + casper design spec, this design spec serves as a source of truth for the beacon chain implementation we follow at prysmatic labs. Check out the FAQs. Refer this page on why we are combining sharding and casper together.