* Proposer builds block in parallel. Cosensus vs Execution
* Update beacon-chain/rpc/prysm/v1alpha1/validator/proposer.go
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* Use feature flag
---------
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* Enable nilerr linter & fix findings
* Deal with other findings
* Fix another finding that I missed somehow
* Fix another another issue
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* Update tests to expect error
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: terencechain <terence@prysmaticlabs.com>
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* Correctly use Gwei to compare builder bid value
* Minimal 1gwei for TestProduceBlindedBlock
---------
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Add prepare-all-payloads flag
* add unit tests
* do not use the nsc
---------
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
* adding fix for buildervalue nil
* fixing linting
* changing based on review comment
* editing based on suggestions
* fixing unit test
* fixing linting
* fall back to local
* fix linting
* updating based on slack feedback
* Add builder bid fraction to compare with local block value and use builder bid if (bid * fraction) > local block value
* Prioritize local block construction over relay/builder block construction using a boost value for local block construction
* Refactor builder and local block value calculation to use percentage comparison
* Add a test for local with boost
* Use uint64
* Fix log
* With attribute, use justified hash as safe block hash
* Use UnrealizedJustifiedPayloadBlockHash
* Cleanups
* Add test to forkchoice
* Block proposal
* Fix mock
* Fix test
* Fix rest of the tests
* Potuz feedback
* Fix test
* Use unrealized justified hash for regular fcu
* initial impl
* review feedback
* fix tests
* review feedback
* some improvements
* tests and small improvements
* gzl
* one more review
* fix test
* fix other test
* get the roots instead of hashing them
* fix comment
* fix justified case
* fix all tests
* misc
* gzl
* fix broken tests
* use isOptimisticForRoot once we have the blockroot
* Fix is_not_finalized_when_head_is_optimistic but reviewing the logic first
* Fix is_not_finalized_when_head_is_optimistic
* better root tests
* move optimistic check before parsing root
* check for last validated checkpoint
* add right check for finalized
* fix finalized tests
* removed impossible condition
* fix TestGetSyncCommitteeDuties
* Use Ancestor from chaininfo
* fix test
---------
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: rauljordan <raul@prysmaticlabs.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* fixing typo on casing
* WIP get missed slot
* missed in commit
* reverting changes onfeedback
* reverting bazel
* using the current or head slots for events
* fixing linting
* use emitSlot
* fixing time and preRando change
* updating based on feedback
* fixing linting
* clarifying variable
* removing useless if statement
* fixing function to use the current slot+1
* updating based on feedback
* fixing unit tests
* missed dependency injection
* fixing linting
* forkchoice changes
* gazelle
* remove best justified from forkchoice dump
* keep protobufs and update comment
* remove phase0 tests
* bumb spectests version
* missing sha
* Fix sha256 for spec
* rpc tests
* Mark field 3 as reserved so it will never be used it again
---------
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* write locks
* fix forkchoice tests
* blockchain locks
* lock on IsOptimistic
* use forkchoice instead of chaininfo within savehead
* Use forkchoice HasNode to check if a block is consistent with finality
* interface fix
* Use forkchoice HasNode to check if a block is consistent with finality
* interface fix
* fix tests
* remove VerifyFinalizedBlkDescendant
* don't write lock wrappers
* fix validateBeaconBlock
* Terence's review and more missing locks
* add lock for InForkChoice
* lock head on fillMissingBlockPayload
* fix lock on IsOptimisticForRoot
* fix lock in fillMissingBlockPayloadId
* extra comments
* lock proposerBoost on spectests
* nishant's review
---------
Co-authored-by: Nishant Das <nishdas93@gmail.com>
* Update head before block proposal
* Fix first bellatrix block when using mev-boost
---------
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>