terencechain
122c3f44cc
Insert over-the-wire slashing to forkchoice ( #10615 )
...
* remove equivocating votes from forkchoice
* shutup deepsource
* Add insertSlashingsToForkChoiceStore
* Fix equality checks, add tests
* Update process_block.go
* Fix equality check for doublylinked
* More checks
* Rm err return
* Consider slashings over the wire
* Update new_slot_test.go
* Fix spec tests
* Add ReceiveAttesterSlashing
* Update mock.go
* Revert spec test changes
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
2022-05-07 15:56:34 +00:00
terencechain
03ae8672b6
Refactor and use has_block getter ( #10592 )
...
* Refactor and use has block getter
* Update blocks_fetcher_utils.go
* Fix tests
* Fix tests
* Fix test
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-05-04 00:17:40 +00:00
Raul Jordan
20ab988a4a
Rename Block
Package in Consensus-Types to Interfaces ( #10605 )
...
* interfaces package
* builds
* gaz
2022-05-02 14:32:37 -04:00
Raul Jordan
16bbf5602f
Move Consensus Type Wrappers Into Consensus Types Package ( #10598 )
...
* builds
* move block to consensus-types
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-05-02 15:43:40 +00:00
Raul Jordan
84916672c6
Remove Eth2-Types Dependency in Prysm ( #10578 )
...
* replace eth2 types
* replace protos
* regen proto
* replace
* gaz
* deps
* amend
* regen proto
* mod
* gaz
* gaz
* ensure build
* ssz
* add dep
* no more eth2 types
* no more eth2
* remg
* all builds
* buidl
* tidy
* clean
* fmt
* val serv
* gaz
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
2022-04-29 10:32:11 -04:00
Radosław Kapka
2060f876b1
Code cleanup in blockchain
module ( #10566 )
...
* Code cleanup in `blockchain` module
* revert comment fix
* remove test
* forkchoice test fix
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-04-28 11:34:25 +00:00
terence tsao
7cdc741b2f
Sync: don't set block to bad due to timeout ( #10470 )
...
* Add filter error and tests
* Update BUILD.bazel
* Kasey's feedback
2022-03-31 23:29:27 +00:00
terence tsao
fe98d69c0a
Clean up blockchain pkg ( #10452 )
...
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-30 17:45:24 +00:00
Potuz
57a323f083
Forkchoice featureflag ( #10299 )
...
* Compiling main beacon-chain binary
* Add feature flag
* passing protoarray tests
* passing nodetree tests
* passing blockchain package tests
* passing rpc tests
* go fmt
* re-export forkchoice store from blockchain package
* remove duplicated import
* remove unused var
* add nodetree rpc method
* remove slot from IsOptimisticForRoot
* release lock in IsOptimistic
* change package name
* Revert "change package name"
This reverts commit 679112f9ef795922c631e7823dbdfb3746838f3c.
* rename package
* Update doc
* Fix span names
* Terence + Raul review
* remove go:build flags
* add errors dep
* spec tests
* fix call to IsOptimisticForRoot
* fix test
* Fix conflict
* change name of function
* remove ctx from store.head
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-03-09 03:05:51 +00:00
Mohamed Zahoor
b516cfd998
cherry picked PR of #10233 ( #10301 )
...
* fix merge conflicts
* fix more merge conflicts
* fix fmt
* remove unnecessary cfg
* setting bad block if the bellatrix validation fails
* added an edge condition
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-07 13:19:07 +00:00
terence tsao
7719356b69
Add opt sync bool to IsOptimistic
( #10270 )
...
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-02-22 16:46:42 +00:00
Radosław Kapka
c5c039fd6b
Unify GenesisValidator(s)Root
throughout the codebase ( #10230 )
...
* Unify `GenesisValidator(s)Root` throughout the codebase
* comments and literals
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-02-14 13:34:38 +00:00
Mohamed Zahoor
f89265f2f7
Adding a new method in HeaderFetcher ( #10212 )
...
* Is optimisyic for root
* add the function in mock chainservice also
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-02-09 20:21:15 +00:00
Radosław Kapka
8455656597
Use beacon state interfaces instead of concrete structs ( #10195 )
...
* return interface from testing/util
* remove usages of v1
* return interface from InitializeFromProto
* return interface from InitializeFromProto
* fix test
* fix interface visibility
* more fixes
* use InitializeFromProtoUnsafe in testing/util
* return early error from mock
* v2
* fix tests
* remove unnecessary assertion
* use struct in nil state test
* Revert "Auxiliary commit to revert individual files from 6bb528c2c5df2446ad18450009f63f44318d41a9"
This reverts commit 7d70238a301209f6dbfc8ff1d81b16e33b0bd67d.
* use struct in sync committee test
* v3
* use InitializeFromProtoUnsafe in mock
* use version information
* Revert "Auxiliary commit to revert individual files from 6bb528c2c5df2446ad18450009f63f44318d41a9"
This reverts commit 5d5e6f2884d21caec7530c16ad2a0d0d27c44aa1.
* revert changes to ClearPreGenesisData
* fix build error
* remove error from PreGenesisState
* bzl
2022-02-08 09:30:06 +00:00
terence tsao
3a5cfab5f2
Add IsOptimistic
chain info getter ( #10184 )
...
* Add chain info getter
* Interface
* Test
* Update mock.go
* Go fmt
* Update beacon-chain/blockchain/testing/mock.go
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
2022-02-03 21:30:07 +00:00
Preston Van Loon
7df01feb58
Remove libfuzzer / afl based builds in favor of go 1.18 fuzz testing ( #10065 )
...
* Remove libfuzzer / afl based builds in favor of go 1.18 fuzz testing
* rm beacon-fuzz archive
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-01-20 04:51:02 +00:00
Nishant Das
49c73e65a1
make it better ( #10101 )
2022-01-20 10:37:27 +08:00
terence tsao
c69bce5d84
Use fieldparams for BLS public key ( #10042 )
...
* Use fieldparams for pubkey length
* Fix validator tests
* fix more tests
* fix mock validator
* Fix typo
* bunch of typos
* Update bytes.go
* Update BUILD.bazel
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-01-06 17:33:08 +00:00
Radosław Kapka
5569a68452
Code cleanup ( #9992 )
...
* Value assigned to a variable is never read before being overwritten
* The result of append is not used anywhere
* Suspicious assignment of range-loop vars detected
* Unused method receiver detected
* Revert "Auxiliary commit to revert individual files from 54edcb445484a2e5d79612e19af8e949b8861253"
This reverts commit bbd1e1beabf7b0c5cfc4f514dcc820062ad6c063.
* Method modifies receiver
* Fix test
* Duplicate imports detected
* Incorrectly formatted error string
* Types of function parameters can be combined
* One more "Unused method receiver detected"
* Unused parameter detected in function
2021-12-07 17:52:39 +00:00
Raul Jordan
9edba29f64
Slasher Simulator Code for Testing Optimized Slasher Behavior ( #9695 )
...
* slashing simulator
* add in necessary items for slasher sim
* sim item
* fix up
* fixed build
* rev
* slasher sim in testing
* testonly
* gaz
* gaz
* fix viz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: prestonvanloon <preston@prysmaticlabs.com>
2021-09-29 02:27:21 +00:00
Raul Jordan
6d79f61fda
Process Slashings for Newly Optimized Slasher ( #9687 )
...
* add process slashings
* verify sig
* add method
* add test
* add in process slashings functionality
* target state for aggregate
* comment
* Radek comments
2021-09-28 10:27:40 -05:00
terence tsao
376d248c22
Add in progress handler to committee cache ( #9664 )
...
* Add in progress handler for committee cache
* Remove debug print
* Update validators.go
* Fix all the tests
* More tests
* Update committee_disabled.go
* Update committee_disabled.go
* Update testing util
* Update main.go
Co-authored-by: Nishant Das <nishdas93@gmail.com>
2021-09-26 23:27:57 +08:00
Raul Jordan
29513c804c
Create Encoding Bytesutil ( #9658 )
...
* bytesutil
* gaz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-23 15:23:37 +00:00
Nishant Das
d694a775d7
Check For Blocks In Our Initial Sync Cache ( #9558 )
...
* add change
* test
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-09-23 05:18:19 +00:00
Raul Jordan
f3d6dbcc1e
Move Shared/Params Into Config/Params ( #9642 )
...
* config params into pkg
* gaz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-21 19:59:25 +00:00
deepsource-autofix[bot]
531f05d30d
Unused parameter should be replaced by underscore ( #9632 )
...
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-09-20 20:51:59 +00:00
terence tsao
161a13ac09
Correctly filter sync committee message at period boundary ( #9626 )
...
* Add head sync committee indices with slot consideration
* Apply rpc
* Apply sync
* Update tests
* Update mock.go
* Update sync_committee_test.go
* Update validator_test.go
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-20 18:06:43 +00:00
Raul Jordan
11a1f681e0
Move Shared Packages Into Async/ ( #9620 )
...
* async packages
* change pkg
* build
* working
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-18 17:26:11 +00:00
Raul Jordan
61c24c3870
Move Fuzz/ Into Testing/ ( #9617 )
...
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-16 17:32:51 +00:00
Nishant Das
d22552944d
Update Blockchain Package From Altair ( #9422 )
...
* add latest changes
* fix up
* raul's review
* pass cache tests
* Update beacon-chain/blockchain/head_sync_committee_info.go
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* kasey's review
* rename cache err
* add nil checks and error path checks
* gaz
* fix test
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
2021-08-26 05:01:09 +00:00
Raul Jordan
9145310647
Eliminate Proto V2 Namespace ( #9297 )
...
* get rid of v2 in prysm codebase
* replace block2
* builds
* terence comments
* gazelle
2021-07-28 21:23:44 +00:00
terence tsao
8db0c9a0e6
Move proto/interfaces -> proto/prysm/v2 ( #9270 )
...
* Move proto/interfaces -> proto/prysm
* Update paths
* Fix block2
* Update blocks_fetcher_utils.go
* Update BUILD.bazel
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-07-23 20:10:15 +00:00
Preston Van Loon
c0076cc7a2
State: move state interfaces into state package ( #9268 )
...
* Move interfaces from github.com/prysmaticlabs/prysm/beacon-chain/state/interface to github.com/prysmaticlabs/prysm/beacon-chain/state
* remove/rename state2
2021-07-23 16:11:21 +00:00
Raul Jordan
2d10bcf179
Move State Protos Into V2 Namespace ( #9257 )
...
* move state protos
* regen ssz
* edit v1 code
* fix imports
* building
* beacon chain builds
* validator and shared builds
* fuzz builds
* changes
* spectest builds
* tools build
* remove import cycle
* generate ssz
* pcli
* gaz
* kafka
* gaz
2021-07-23 08:07:40 -05:00
Raul Jordan
6dadb80cc4
Move v1alpha1 into Prysm API namespace ( #9245 )
2021-07-21 21:34:07 +00:00
terence tsao
1d3a9983cc
Move block interface next to generated pb ( #9146 )
...
* Move block interface next to pb
* Update fuzz build bazel
* Move interface to /proto/interface and wrapper next to generated pb
* Fix fuzz build bazel
* Add //proto/eth/v1alpha1/wrapper
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-07-06 15:34:05 +00:00
Raul Jordan
b23f63a064
Beacon State V2 Interface Definition With Semantic Version Paths ( #9125 )
...
* v2 state initialize and semantic paths
* ensure build
* gaz changes to ignored build files
* gaz
2021-06-30 15:06:19 +00:00
Raul Jordan
5aac06f04e
Move EthereumAPIs Into Prysm ( #8968 )
...
* begin move
* use same import path
* imports
* regen protos
* regen
* no rename
* generate ssz
* gaz
* fmt
* edit build file
* imports
* modify
* remove generated files
* remove protos
* edit imports in prysm
* beacon chain all builds
* edit script
* add generated pbs
* add replace rules
* license for ethereumapis protos
* change visibility
* fmt
* update build files to gaz ignore
* use proper form
* edit imports
* wrap block
* revert scripts
* revert go mod
2021-06-02 18:49:52 -05:00
Nishant Das
caf9bdbc6f
Use Block Interface Across Prysm ( #8918 )
...
* commit initial work
* checkpoint current work
* gaz
* checkpoint
* req/resp changes
* initial-sync
* finally works
* fix error
* fix bugs
* fix issue
* fix issues
* fix refs
* tests
* more text fixes
* more text fixes
* more text fixes
* fix tests
* fix tests
* tests
* finally fix builds
* finally
* comments
* fix fuzz
* share common library
* fix
* fix
* add in more defensive nil checks
* add in more defensive nil checks
* imports
* Apply suggestions from code review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Apply suggestions from code review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_interface.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_wrapper.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_interface.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* imports
* fix bad changes
* fix
* terence's review
* terence's review
* fmt
* Update beacon-chain/rpc/beacon/blocks.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fix tests
* fix
* fix all tests
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2021-05-26 16:19:54 +00:00
Radosław Kapka
a8716d2949
Implement ListForkChoiceHeads in the debug API ( #8675 )
...
* initial implementation
* use ChainHeads to get heads
* API unit tests
* remove unnecessary identifier
* fix formatting
* gzl
* Update chainheads to fork choice scope
* use HeadFetcher
* fix test
* gzl
* remove junk
* remove ChainHeads from forkchoice
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: Victor Farazdagi <simple.square@gmail.com>
2021-04-14 17:01:24 +00:00
terence tsao
528cd89616
Move chainheads to blockchain pkg ( #8700 )
...
* Move chainheads to block chain's head info
* Fix mock
2021-04-03 11:25:25 +00:00
terence tsao
ce725ceec3
Move state pkg to stateV0 pkg ( #8620 )
...
* Move state pkg to stateV0 pkg
* Build.bazel
* Remove unused RootsArrayHashTreeRoot
* Revert "Remove unused RootsArrayHashTreeRoot"
This reverts commit bf0bda30d1a8eb7a071f6e3ce9ee85041b45aca6.
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-03-17 19:49:49 +00:00
terence tsao
bdf2b2019b
Use beacon state interfaces across ( #8552 )
2021-03-08 14:37:33 -08:00
terence tsao
3edfa8cb88
Use Custom Type ValidatorIndex Across Prysm ( #8478 )
...
* Use ValidtorIndex across Prysm. Build ok
* First take at fixing tests
* Clean up e2e, fuzz... etc
* Fix new lines
* Update beacon-chain/cache/proposer_indices_test.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update beacon-chain/core/helpers/rewards_penalties.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update beacon-chain/core/helpers/shuffle.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/graffiti/parse_graffiti_test.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Raul's feedback
* Fix downcast int -> uint64
* Victor's feedback
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-02-23 00:14:50 +00:00
Victor Farazdagi
a069738c20
ETH2 Types: Slot ( #8408 )
...
* update shared/params
* update eth2-types deps
* update protobufs
* update shared/*
* fix testutil/state
* update beacon-chain/state
* update beacon-chain/db
* update tests
* fix test
* update beacon-chain/core
* update beacon-chain/blockchain
* update beacon-chain/cache
* beacon-chain/forkchoice
* update beacon-chain/operations
* update beacon-chain/p2p
* update beacon-chain/rpc
* update sync/initial-sync
* update deps
* update deps
* go fmt
* update beacon-chain/sync
* update endtoend/
* bazel build //beacon-chain - works w/o issues
* update slasher code
* udpate tools/
* update validator/
* update fastssz
* fix build
* fix test building
* update tests
* update ethereumapis deps
* fix tests
* update state/stategen
* fix build
* fix test
* add FarFutureSlot
* go imports
* Radek's suggestions
* Ivan's suggestions
* type conversions
* Nishant's suggestions
* add more tests to rpc_send_request
* fix test
* clean up
* fix conflicts
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
2021-02-16 07:45:34 +00:00
Victor Farazdagi
a8e501b3cf
ETH2 Types: Epoch ( #8373 )
...
* update deps
* update deps
* update protos/*
* update deps
* reset protos
* update protos
* update shared/params/config
* update protos
* update /shared
* update shared/slotutil and shared/testutil
* update beacon-chain/core/helpers
* updates beacon-chain/state
* update beacon-chain/forkchoice
* update beacon-chain/blockchain
* update beacon-chain/cache
* update beacon-chain/core
* update beacon-chain/db
* update beacon-chain/node
* update beacon-chain/p2p
* update beacon-chain/rpc
* update beacon-chain/sync
* go mod tidy
* make sure that beacon-chain build suceeds
* go fmt
* update e2e tests
* update slasher
* remove redundant alias
* update validator
* gazelle
* fix build errors in unit tests
* go fmt
* update deps
* update fuzz/BUILD.bazel
* fix unit tests
* more unit test fixes
* fix blockchain UTs
* more unit test fixes
2021-02-09 10:05:22 +00:00
Radosław Kapka
f89fd67952
Better receiver names in beacon chain module ( #8286 )
2021-01-19 13:21:32 +00:00
Radosław Kapka
015102c2d5
Implement GetSyncStatus in the node API ( #8241 )
...
* Implement GetSyncStatus in the node API
* gazelle
* add HeadSlot function to fuzz tests' fakeChecker
* use HeadFetcher to get head slot
* remove useless code
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-01-12 17:17:20 +00:00
terence tsao
2da1ec8052
Remove expensive validators only method ( #7717 )
...
* Remove validators only method
* Gazelle
2020-11-03 12:47:21 -06:00
Preston Van Loon
fcbb168c76
Code health: review map usage ( #7635 )
...
* remove unused cache states map
* correct typo
* Remove unused array
* Add lock around deposits cache chainstart pubkeys
* Copy attestation before grabbing lock. This may reduce lock contention time as other callers wanting the lock do not need to wait as long for the lock to become available.
* Copy attestation before grabbing lock. This may reduce lock contention time as other callers wanting the lock do not need to wait as long for the lock to become available.
* Set capacity to 1 since it is known that the slice will be 1 after insertion
* require validatorSlashingPreconditionCheck caller to hold lock
* Add lock for voluntary exits pool HasBeenIncluded
* Require rate limiter retrieveCollector to hold lock
* Add lock requirement assertions in sync
* Remove unused struct
* remove ClearCachedStates API
* field initSyncState is unused
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2020-10-26 21:17:07 +00:00