Potuz
588605ceeb
Remove TODOs that were already taken care of ( #10454 )
2022-03-30 13:24:02 +00:00
terence tsao
59b9519284
Forkchoice spec test: set boost with deterministic timing ( #10428 )
...
* Set boost with deterministic timing
* confs
* gaz
* Update runner.go
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2022-03-29 19:48:33 +00:00
Nishant Das
d4038fb752
add rlock ( #10444 )
2022-03-29 06:55:41 -07:00
Raul Jordan
56ab5872bb
Add Histogram Response Buckets to Engine API Methods ( #10414 )
...
* gaz
* defer payload func
* amend
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-28 22:17:31 +00:00
Raul Jordan
eb6d68a4b1
Deterministic Proposer Root Boosting in Forkchoice ( #10427 )
...
* begin refactor
* fix doubly linked tree tests
* pass
* fix up
* gaz
* buidl
* buidl more
* comment
* args check
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-28 21:34:41 +00:00
kasey
7920528ede
Checkpoint Sync 4/5 - enable checkpoint sync to be used by beacon node ( #10386 )
...
* enable checkpoint sync in beacon node
* lint fix
* rm unused error
* addressing PR feedback from Radek
* consistent slice -> fixed conversion
Co-authored-by: kasey <kasey@users.noreply.github.com>
2022-03-28 21:01:55 +00:00
Raul Jordan
1af3c07ec5
Stop Checking Transition Configuration Post-Merge ( #10413 )
...
* no longer check transition config after the merge
* nil check
* better payload check
* stop checking post merge based on received blocks
* add proper test
* gaz
* fix test
* lint
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-28 17:14:02 +00:00
terence tsao
7279349ae2
Cleanup helpers in beacon-chain/core/blocks/payload.go
( #10435 )
...
* less fragile check for execution payload
* gaz
* gaz
* include field
* clean up helpers for checking merge status
* Update beacon-chain/core/blocks/payload.go
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
* Update payload.go
* Rename
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
2022-03-28 15:25:49 +00:00
Potuz
2d60d04b57
Update LastValidatedCheckpoint on DB ( #10412 )
...
* Update LastValidatedCheckpoint on DB
* fix conflicts
2022-03-28 14:48:14 +00:00
Nishant Das
ef8bc97d3e
more efficient ( #10440 )
2022-03-28 20:27:14 +08:00
Nishant Das
071f6de559
Fix Beacon API Responses For Bellatrix ( #10436 )
...
* fix bugs
* fix build
* simplify it
2022-03-26 07:34:29 +00:00
Preston Van Loon
b697463da9
wrapper: Remove deprecated fork specific wrapper methods for signed beacon blocks ( #10369 )
...
* Remove deprecated wrappers, lots of refactoring
* Revert proto/prysm/v1alpha1/validator.proto
* fix tests
* fix test
* fix conversion in e2e
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-25 23:00:44 +00:00
kasey
bfbf693660
Checkpoint Sync 3/5 - beacon node api client lib and prysmctl cli tool ( #10385 )
...
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
2022-03-25 17:18:03 +00:00
Radosław Kapka
ed07f4bd77
Add execution_optimistic
field to API responses ( #10389 )
...
* protos
* grpc
* middleware
* event protos
* event backend
* event middleware
* fix tests
* use `IsOptimisticForRoot` with proper block instead of header
* better algorithm
* return proper error
* review
* optimistic return on bellatrix proposal
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-25 16:31:50 +00:00
terence tsao
1922416cac
Use correct pre state to call new payload ( #10416 )
...
* Update todo strings
* Go fmt
* add merge specific checks when receiving a block from gossip
* Fix beacon chain build
* Interop merge beacon state
* fix finding Transactions size
* Update go commit
* Merge union debugging (#9751 )
* changes test cases per ssz changes
* noisy commit, restoring pb field order codegen
* get rid of codegen garbage
* M2 works with Geth 🎉
* Fix bazel build //...
* restoring generated pb field ordering
* defensive nil check
* separate ExecutionPayload/Header from codegen
* tell bazel about this new file
* Merge: support terminal difficulty override (#9769 )
* Fix finding terminal block hash calculation
* Update mainnet_config.go
* Update beacon_block.pb.go
* Various fixes to pass all spec tests for Merge (#9777 )
* Proper upgrade altair to merge state
* Use uint64 for ttd
* Correctly upgrade to merge state + object mapping fixes
* Use proper receive block path for initial syncing
* Disable contract lookback
* Disable deposit contract lookback
* Go fmt
* Merge: switch from go bindings to raw rpc calls (#9803 )
* Disable genesis ETH1.0 chain header logging
* Update htrutils.go
* all gossip tests passing
* Remove gas validations
* Update penalty params for Merge
* Fix gossip and tx size limits for the merge part 1
* Remove extraneous p2p condition
* Add and use
* Add and use TBH_ACTIVATION_EPOCH
* Update WORKSPACE
* Update Kintsugi engine API (#9865 )
* Kintsugi ssz (#9867 )
* All spec tests pass
* Update spec test shas
* Update Kintsugi consensus implementations (#9872 )
* Remove secp256k1
* Remove unused merge genesis state gen tool
* Manually override nil transaction field. M2 works
* Fix bad hex conversion
* Change Gossip message size and Chunk SIze from 1 MB t0 10MB (#9860 )
* change gossip size and chunk size after merge
* change ssz to accomodate both changes
* gofmt config file
* add testcase for merge MsgId
* Update beacon-chain/p2p/message_id.go
Change MB to Mib in comment
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* change function name from altairMsgID to postAltairMsgID
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Sync with develop
* Merge branch 'develop' of github.com:prysmaticlabs/prysm into kintsugi
* Update state_trie.go
* Clean up conflicts
* Fix build
* Update config to devnet1
* Fix state merge
* Handle merge test case for update balance
* Fix build
* State pkg cleanup
* Fix a bug with loading mainnet state
* Fix transactions root
* Add v2 endpoint for merge blocks (#9802 )
* Add V2 blocks endpoint for merge blocks
* Update beacon-chain/rpc/apimiddleware/structs.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* go mod
* fix transactions
* Terence's comments
* add missing file
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Sync
* Go mod tidy
* change EP field names
* latest kintusgi execution api
* fix conflicts
* converting base fee to big endian format (#10018 )
* ReverseByteOrder function does not mess the input
* sync with develop
* use merge gossip sizes
* correct gossip sizes this time
* visibility
* clean ups
* Sync with develop, fix payload nil check bug
* Speed up syncing, hide cosmetic errors
* Sync with develop
* Clean up after sync
* Update generate_keys.go
* sync with develop
* Update mainnet_config.go
* Clean ups
* Sync optimistically candidate blocks (#10193 )
* Revert "Sync optimistically candidate blocks (#10193 )"
This reverts commit f99a0419ef1efc4bda0be77f22165b8fe4377c0d.
* Sync optimistically candidate blocks (#10193 )
* allow optimistic sync
* Fix merge transition block validation
* Update proposer.go
* Sync with develop
* delete deprecated client, update testnet flag
* Change optimistic logic (#10194 )
* Logs and err handling
* Fix build
* Clean ups
* Add back get payload
* c
* Done
* Rm uncommented
* Optimistic sync: prysm validator rpcs (#10200 )
* Logs to reproduce
* Use pointers
* Use pointers
* Use pointers
* Update json_marshal_unmarshal.go
* Fix marshal
* Update json_marshal_unmarshal.go
* Log
* string total diff
* str
* marshal un
* set string
* json
* gaz
* Comment out optimistic status
* remove kiln flag here (#10269 )
* Sync with devleop
* Sync with develop
* clean ups
* refactor engine calls
* Update process_block.go
* Fix deadlock, uncomment duty opt sync
* Update proposer_execution_payload.go
* Sync with develop
* Rm post state check
* Bypass eth1 data checks
* Update proposer_execution_payload.go
* Return early if ttd is not reached
* Sync with devleop
* Update process_block.go
* Update receive_block.go
* Update bzl
* Revert "Update receive_block.go"
This reverts commit 5b4a87c512325d9f26de4db7f941dcd7303cd0d8.
* Fix run time
* Update go.mod
* Fix AltairCompatible to account for future state version
* Update proposer_execution_payload.go
* Handle pre state Altair with valid payload
* Handle pre state Altair with valid payload
* Log bellatrix fields
* Update log.go
* Friendly fee recipient log
* Remove extra SetOptimisticToValid
* Fix base fee per gas
* Fix notifypayload headroot
* clean up with develop branch
* Sync with devleop
* Fix
* Fix
* fix
* Fix
* fix tests
* revert some changes
* fix tests
* Update optimistic_sync_test.go
* Simplify IsExecutionEnabledUsingHeader
Co-authored-by: Zahoor Mohamed <zahoor@prysmaticlabs.com>
Co-authored-by: Zahoor Mohamed <zahoor@zahoor.in>
Co-authored-by: kasey <489222+kasey@users.noreply.github.com>
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-25 16:03:15 +00:00
Potuz
a5dc40393d
Allow inner protoarray nodes to become VALID ( #10418 )
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-25 15:35:44 +00:00
Raul Jordan
b238235210
prevent run ( #10432 )
2022-03-25 11:08:38 -04:00
terence tsao
73a6a85069
Ensure finalized root can't be zeros ( #10422 )
2022-03-24 23:55:54 +00:00
terence tsao
ac4a30588f
Properly initialize replayer builder for rpc ( #10426 )
2022-03-24 23:12:47 +00:00
Raul Jordan
3579551f15
Use --http-web3provider for Execution Engine Connection ( #10307 )
...
* combine endpoints
* initialization in the start function instead
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2022-03-24 20:53:07 +00:00
Nishant Das
956e7a7563
Update Go-Ethereum ( #10417 )
...
* add changes
* fix CI
* wait here
* Fix gazelle with the correct directive for libp2p
Co-authored-by: prestonvanloon <preston@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-24 19:00:53 +00:00
kasey
acd7e62cfb
fix issue #10420 ( #10421 )
...
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
2022-03-24 18:32:39 +00:00
Radosław Kapka
165f0667f0
Implement getDebugChainHeadsV2
API endpoint ( #10419 )
...
* protos
* grpc
* middleware
* update comments
2022-03-24 13:08:40 +00:00
kasey
49826ebe28
Checkpoint Sync 2/5 - API support for retrieving weak subjectivity data ( #10384 )
...
also refactor replayer code for better reuse:
- separately expose stategen's canonical block func
- CanonicalHistory in ws api, NewCanonicalBuilder
- refactor CanonicalHistory into a ReplayerBuilder
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
2022-03-23 22:54:07 +00:00
terence tsao
3ad6abd9c0
Add tracings for engine api methods ( #10407 )
...
* Add engine call tracings
* Update BUILD.bazel
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-23 22:17:09 +00:00
terence tsao
c61f54176d
Ignore attestations voting for the wrong finalized checkpoint ( #10295 )
...
* Ignore attestations voting for the wrong finalized checkpoint
* aggregate
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-23 21:48:26 +00:00
Potuz
0165351db3
Setup Optimistic sync when starting the service ( #10397 )
...
* Load Last Validated Checkpoint at service startup and initialize
Forkchoice
* fix spectests
* Update service_test.go
* wip
* Fix blockchain tests
* remove unnecessary summary saves
* Terence's suggestion
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-03-23 21:11:36 +00:00
Potuz
8f49167117
return invalid roots from SetOptimisticToInvalid ( #10403 )
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-03-23 15:55:05 -03:00
Nishant Das
b4c27f64de
Add Method To Modify Participation Bits ( #10409 )
...
* fix up all tests
* Update beacon-chain/state/v2/BUILD.bazel
* add tests
2022-03-23 23:18:02 +08:00
Preston Van Loon
e4ac5e74b7
RPC: Deduplicate block production logic ( #10368 )
...
* RPC: Deduplicate block production logic
* Surface error to caller
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2022-03-23 12:51:20 +00:00
Nishant Das
0b9b635646
Block Processing And State Transition Improvments ( #10408 )
...
* cleanup
* clean up more
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2022-03-23 11:57:48 +00:00
Leo Lara
c8c1d04c07
Complete coverage for in beacon chain state for getters checkpoint ( #10373 )
...
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2022-03-23 09:58:45 +00:00
james-prysm
601987faf2
Fee Recipient : ux log fixes and prevent validator from calling beacon node if flags are not provided. ( #10406 )
...
* initial commit
* improving logs
2022-03-22 13:13:59 -05:00
james-prysm
a060d765b3
rename prepare beacon proposer to fee recipient ( #10404 )
2022-03-22 15:00:50 +00:00
Potuz
5550334956
set optimistic status on notify payload ( #10398 )
...
* set optimistic status on notify payload
* pre-execution blocks are never optimistic
* add unit test
* add test for lengths
* Update optimistic_sync_test.go
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-03-22 03:35:02 +00:00
Mike Neuder
002253bba3
Migrating Keymanager account list functionality into each type ( #10382 )
...
* Migrating Keymanager account list functionality into each keymanager type
* Addressing review comments
* Adding newline at end of BUILD.bazel
* bazel run //:gazelle -- fix
Co-authored-by: james-prysm <90280386+james-prysm@users.noreply.github.com>
2022-03-22 03:04:09 +00:00
Radosław Kapka
c055642f79
Return correct header root from API calls ( #10401 )
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-22 01:56:44 +00:00
terence tsao
c7d64c03ac
Insert payload hash to forkchoice store nodes ( #10400 )
...
* Insert payload hash to forkchoice store nodes
* Fix tests
* Update new_slot_test.go
* Update beacon-chain/blockchain/process_block.go
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
2022-03-22 01:20:42 +00:00
james-prysm
131fb43ba7
Fee recipient flag rename for beacon node ( #10402 )
...
* initial commit
* fixing comment
* fixing bazel
2022-03-21 21:25:33 +00:00
kasey
cf0bd633f0
Checkpoint Sync 1/5 - fork/version detection and unmarshaling support ( #10380 )
...
* fork/version detection and unmarshaling support
* Update config/params/config.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update proto/detect/configfork.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* PR feedback
* move ssz initialization into the detect package
* clarify comment
* VersionForEpoch is much simpler/clearer in reverse
* simpler VersionForEpoch; build AllConfigs in init
* use fieldparams for Version
* Update proto/detect/configfork_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* remove custom ForkName type, use runtime/version
* pr cleanup
* random fix from bad gh ui suggestion; privatize
* privatize fieldSpec methods; + unit tests
* Update proto/detect/configfork.go
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
* fix bad github ui suggestion
* ensure unique versions for simpler config match
* fmt & adding unit test for ByState()
* table-driven unit test for ByState
* TestUnmarshalState
* OrderedSchedule -> network/forks per PR feedback
* goimports
* lint fixes
* move proto/detect -> ssz/encoding/detect
* use typeUndefined in String
* backport config tests from e2e PR
* fix config parity test; make debugging it easier
* lint
* fix fork schedule initialization
* cleanup
* fix build
* fix big ole derp
* anything for you, deep source
* goimportsss
* InitializeForkSchedule in LoadChainConfigFile
* PR feedback
Co-authored-by: kasey <kasey@users.noreply.github.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
2022-03-21 19:43:41 +00:00
james-prysm
df8da80db8
Implement Fee Recipient: CLI flags and Calling Beacon API ( #10312 )
...
* send proposer data to config
* wip implementation with file and url based config import
* improving logic on get validator index
* fix function
* optimizing function for map and address bug
* fixing log
* update cache if it doesn't exist
* updating flags
* initial unit test scaffold
* fixing validator to call rpc call, removed temporary dependency
* adding the API calls for the runner
* fixing broken build
* fixing deepsource
* fixing interface
* fixing fatal
* fixing more deepsource issues
* adding test placeholders
* updating proposer config to add validation
* changing how if statement throws error
* removing unneeded validation, validating in a different way
* wip improving tests
* more unit test work
* fixing unit test
* fixing unit tests and edge cases
* adding unit tests and adjusting how the config is created
* fixing bazel builds
* fixing proto generation
* fixing imports
* fixing unit tests
* Update cmd/validator/flags/flags.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* updating flags based on comments, fixing unit tests
* fixing bazel
* removing unneeded function
* fixing unit tests
* refactors and unit test fixes based on comments
* fixing bazel build
* refactor the cache out fo the fee recipient function
* adding usecase for multiple fee recipient
* refactor burn name
* Update validator/client/validator.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/validator.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/validator.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* fixing bug with validator index based on code review
* edited flag descriptions to better communicate usage
* fixing manual reference to flag name
* fixing code review comments
* fixing linting
* Update validator/client/validator.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* addressing comments and renaming functions
* fixing linting
* Update cmd/validator/flags/flags.go
* Update cmd/validator/flags/flags.go
* Update cmd/validator/flags/flags.go
* improving comments
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2022-03-21 13:48:02 -05:00
Raul Jordan
dc527a3c80
Remove Visibility Check Script for Bazel ( #10391 )
...
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-21 17:03:52 +00:00
Potuz
94f80bd208
Call FCU on update head after process attestation ( #10394 )
...
* Call FCU on update head after process attestation
* add test
* fix test
* terence review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2022-03-21 01:50:08 +00:00
terence tsao
c6bfefa0bc
Add notifyNewPayload to onBlockBatch ( #10392 )
2022-03-18 09:36:46 -07:00
Radosław Kapka
3446eaa5f2
Add missing tests to state retrieval ( #10390 )
2022-03-17 18:40:07 +00:00
terence tsao
193866c731
Add fcu to batch blk processing ( #10371 )
2022-03-17 07:35:50 -07:00
terence tsao
b90ce1b60f
Bellatrix fork choice spec tests ( #10381 )
...
* Add bellatrix forkchoice spec tests
* Update service.go
* better conversion
2022-03-17 05:30:44 +00:00
terence tsao
8449d24ed0
Fix BaseFeePerGas
endianess ( #10376 )
...
* Fix base fee endianess and add more test entropys
* Update json_marshal_unmarshal_test.go
* Update setters_test.go
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2022-03-16 22:12:08 +00:00
Radosław Kapka
b92b01f379
API middleware support for bellatrix in produceBlockV2
( #10374 )
2022-03-16 21:44:15 +00:00
terence tsao
bcd180ee4d
Remove deprecated set_optimistic_to_valid
calls ( #10370 )
2022-03-16 21:14:13 +00:00