* prysmctl using the same genesis func as e2e
* add whitespace to genesis.json for readability
* fix typo in fork name
* don't require validator count if deposits given
* add gosec exception
* the other nosec :(
* appease deepsource
* fix comments on renamed public value/func
---------
Co-authored-by: kasey <kasey@users.noreply.github.com>
* Sign BLS_TO_EXECUTION_CHANGES with GENESIS_FORK_VERSION
* update spectests
* extra blank line
* fix consensus_specs_sha
* get rid of LightClients tests
* fix unit tests
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
* e2e using dynamic configs; runtime bellatrix setup
* starts from phase0 but fee recipient eval fails
* lower TTD to cross before bellatrix epoch in e2e
* fix debug printf
* fix it
* dynamic ttd and more robust fee_recipient eval
* let multiplication set ttd=0 if bellatrix epoch=0
* refactoring fee recipient test after cognit errors
* lint
* appease deepsource
* deep sourcin
* gazelle
* missed a usage of this when refactoring
* refactoring premine genesis to work for all forks
previous set of functions was a copypasta mess
* gaz post-merge
* gaz
* resolve merge artifact and pr feedback
* back out some unneeded changes
* appease deepsource
* move premine-state next to similar utils
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
* WIP trying to start from bellatrix state
* env var to control log path with unique paths
due to flaky test re-run behavior, logs from a failed test run are
overwritten by subsequent retries. This makes it difficult to retrieve
logs after the first failed run. It also takes some squinting through
output to find the location of the log file in the first place. This
flag enables logs to be placed in an arbitrary path. Note that bazel
sandboxing generally will force this path to be in the /tmp tree.
* WIP - grabbing changes from rm-pre-genesis branch
* combine bellatrix state w/ rm-pre-genesis branch
* WIP
* use encoding/detect for genesis state bytes
* WIP more fixes towards start from bellatrix
* remove debug wrapping
* WIP
* multiple bugfixes
* fix fork ordering bug and bellatrix genesis blocks
* send deposits, spam tx to advance, fix miner alloc
* WIP
* WIP mess
* WIP
* Print process ID information for purposes of attaching a debugger
* bugs: genesis body_root and deposit index mismatch
* fix voting period start, skip altair check
* add changes
* make it better
* rm startup FCU, rm logs
* cleanup import grouping&ordering
* restore FCU log, get rid of tmp var
* rm newline
* restore newline
* restore wrapped error
* rm newline
* removing boot node version override
this doesn't seem to matter?
* add issue number to todo comment
* rm commented code
* rm vmdebug geth flag
* unexport values only used with genesis test pkg
and add comments where missing from exported values.
* adding comments to special cases for testnets
* migrate comments from PR to actual code :)
* rm unused test param
* mark e2e spawns exempt from gosec warning
* Fix DeepSource errors in `proposer_bellatrix.go` (#11739)
* Fix DeepSource errors in
* Omit receiver name
* Address PR comments
* Remove unused variable
* Fix more DeepSource errors
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Remove `Test_IsExecutionEnabledCapella` (#11752)
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Add REST implementation for Validator's `ProposeBeaconBlock` (#11731)
* WIP
* WIP
* WIP
* Add tests
* WIP
* Add more tests
* Address DeepSource errors
* Remove unused param
* Add more tests
* Address PR comments
* Address PR comments
* Fix formatting
* Remove unused parameter
* Fix TestLittleEndianBytesToBigInt
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fix validator client (#11755)
* fix validator client
(cherry picked from commit deb138959a2ffcb89cd2e3eb8304477526f4a168)
* Use signed changes in middleware block
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
* API `finalized` metadata field - update protos (#11749)
* API `finalized` metadata field - update protos
* change nums
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
* log breaks unit tests that don't do full arg setup
easiest to just remove it for now
* restore prior behavior of phase0 block for altair
* update unit tests to account for special case
* loosen condition for fork version to match config
we don't know which fork version genesis will start from, so we
shouldn't force it to be a phase0 genesis.
* skip until we can mod configs at runtime
* NewGenesisBlockForState computes state root itself
* rm noisy log
* this log would be noisy in mainnet
* fix format specifier, []byte -> string
* core.Genesis UnmarshalJson has a value receiver :)
* no longer needs to be exported
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
Co-authored-by: prestonvanloon <preston@prysmaticlabs.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
Co-authored-by: Patrice Vignola <vignola.patrice@gmail.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: terencechain <terence@prysmaticlabs.com>
Co-authored-by: Potuz <potuz@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
* rewrite/refactor deposit testing code
keep track of sent deposits so that they can be compared in detail with
the validator set retreived from the API.
* fix bugs in evaluator and retry
* lint + deepsource appeasement
* typo s/Sprintf/Printf/
* gosec, more like nosec
* fix gosec number - 204->304
* type switch to get signed block from container
* improve comments
* centralizing constants and adding comments
* lock around Depositor to avoid future races
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
* Remove native state flag and use native state in spectests
* remove feature from tests
* use e2e config in slasher simulator
* use params.BeaconConfig in testutil
* use correct function
* use minimal config in go_test
* fix TestListValidators
* parameterize sync committee bits and aggregation bits
* Fix TestServer_ListIndexedAttestations_GenesisEpoch
(cherry picked from commit 254ab623dde08ae8886b152facdbbd8889ed79db)
* fix more tests
* fix even more
* moreeee
* aaaand more
* one more fix
* one more
* simplify TestGetAltairDuties_UnknownPubkey
* comment out problematic test
* one more fix
* one more
* aaaand one more
* another
* use fieldparams in HydrateBlindedBeaconBlockBodyBellatrix
* create new package for mainnet tests
* TestServer_GetBellatrixBeaconBlock
* change slashed validator index
* clear cache in reward_test.go
* deprecate flag
* create bazel mainnet target
* move attester mainnet test to mainnet target
* "fix" proposer tests
* use minimal config in TestServer_circuitBreakBuilder
* fix TestProposer_ProposeBlock_OK
* more fixes in validator package
* more fixes
* more fixes
* test code
* move TestProposer_GetBeaconBlock_BellatrixEpoch to minimal
* finally
* remove proposer_bellatrix_mainnet_test.go
* fix TestServer_GetBellatrixBeaconBlock_HappyCase
* fix TestServer_GetBellatrixBeaconBlock_BuilderCase
* Preston needs to fix this!
* Revert "Preston needs to fix this!"
This reverts commit b03d97a16e3080e254c7b19d7f193d3c600ca869.
* remove proto state tests
* fix migration tests
* static analysis fix
* review
* remove proto state
* swap state in tests
* fix BUILD file in /proto/testing
* remove metrics test with nil state
* first node test
* adding in configuration flags for code coverage
* adding line to remove file on unit test
* adding new test for compressed field trie but is currently broken
* changing limit on trie
* adding new trie length coverage
* adding in test for empty copy of trie
* adding more trie tests
* adding new field trie
* adding more field trie tests
* adding clarity to chunking equation
* fixing linting
* clarifying function for limit
* updating native state settings to improve ease of future unit tests
* improving unit test
* fixing unit tests
* adding more tests and fixing linting
* adding more coverage and removing unused file
* increasing node coverage
* adding new test for checking config for booleans
* fixing db test
* fixing linting
* adding signing root test
* fixing linting
* removing accidently created beacondata
* switching not non native state
* reverting back to proto use for spec test
* reverting back to proto for some tests
* turning off native state on some tests
* switching more to proto state
* rolling back disablenativestate
* switching to native state in the state-native package for tests
* fixing linting
* fixing deepsource complaint
* fixing some tests to native state and removing some unused flag checks
* convert to native state
* fixing linting
* issues are being triggered by deleting the db this way so reverting change in hopes of changing this
* rolling back testing util
* rolling back some tests from native state
* rolling back db deletion
* test switching native state off after test runs
* fixing hasher test
* fixing altair and bellatrix hashers for native state
* Update beacon-chain/node/node_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update validator/rpc/auth_token_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fixing imports
* adding altair proof test
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* panic in SizeSSZ
* moving slowly
* adapt old code to new interfaces
* return interfaces from factory functions
* replace the rest of WrappedSignedBeaconBlock
* WrappedBeaconBlock
* WrappedBeaconBlockBody
* miscellaneous
* Test_BeaconBlockIsNil
* replace usages of BeaconBlockIsNil
* replace usages of mutator
* fix all build errors
* fix some more issues
* mutator changes
* relax assertions when initializing
* revert changes in object_mapping.go
* allow calling Proto on nil
* Revert "allow calling Proto on nil"
This reverts commit ecc84e455381b03d24aec2fa0fa17bddbec71705.
* modify Copy and Proto methods
* remove unused var
* fix block batch tests
* correct BUILD file
* Error when initializing nil objects
* one more error fix
* add missing comma
* rename alias to blocktest
* add logging
* error when SignedBeaconBlock is nil
* fix last test
* import fix
* broken
* working
* test fixes
* reduce complexity of processPendingBlocks
* simplified
* test coverage and updates to config twiddlers
* LoadChainConfigFile error if SetActive conflicts
* lint
* wip working around test issues
* more fixes, mass test updates
* lint
* linting
* thanks deepsource!
* fix undeclared vars
* fixing more undefined
* fix a bug, make a bug, repeat
* gaz
* use stock mainnet in case fork schedule matters
* remove unused KnownConfigs
* post-merge cleanup
* eliminating OverrideBeaconConfig outside tests
* more cleanup of OverrideBeaconConfig outside tests
* config for interop w/ genesis gen support
* improve var name
* API on package instead of exported value
* cleanup remainders of "registry" naming
* Nishant feedback
* add ropstein to configset
* lint
* lint #2
* ✂️
* revert accidental commented line
* check if active is nil (replace called on empty)
* Nishant feedback
* replace OverrideBeaconConfig call
* update interop instructions w/ new flag
* don't let interop replace config set via cli flags
Co-authored-by: kasey <kasey@users.noreply.github.com>
* v0
* getters/setters
* init and copy
* hasher
* all the nice stuff
* make bazel happy
* remove tests for smaller PR
* remove old states
* move files
* import fixes
* custom MarshalSSZ
* fixed deadlock
* copy version when copying state
* correct issues in state_trie
* fix Copy()
* better e2e comment
* add code to minimal state
* spectest test
* Revert "Auxiliary commit to revert individual files from 84154423464e8372f7e0a03367403656ac5cd78e"
This reverts commit 9602599d183081291dfa0ba4f1036430f63a7822.
* native state assert
* always error
* always log
* more native state usage
* cleanup
* remove empty line
* Revert "spectests"
This reverts commit 1c49bed5d1cf6224afaf21e18562bf72fae5d2b6.
# Conflicts:
# beacon-chain/powchain/service.go
# beacon-chain/state/v1/state_trie.go
# beacon-chain/state/v2/state_trie.go
# beacon-chain/state/v3/state_trie.go
# testing/spectest/shared/phase0/finality/BUILD.bazel
# testing/spectest/shared/phase0/finality/runner.go
* dedup field trie
* fix test issues
* cleanup
* use correct field num in FinalizedRootProof
* use existing version constant
* halfway there
* "working" version
* some fixes
* fix field nums in tests
* rename v0types to nativetypes
* Revert "Auxiliary commit to revert individual files from dc549b1cf8e724bd08cee1ecc760ff3771d5592d"
This reverts commit 7254d3070d8693b283fc686a2e01a822ecbac1b3.
* uncomment code
* remove map size
* Revert "Revert "spectests""
This reverts commit 39c271ae6b57d6a3737e2c202cd8407857475e56.
* use reverse map
* Revert "Revert "Revert "spectests"""
This reverts commit 19ba8cf95cdca689357c8234a262e08cccbafef4.
* finally found the bug
(cherry picked from commit a5414c4be1bdb61a50b391ea5301895e772cc5e9)
* simplify populateFieldIndexes
* fix copy
(cherry picked from commit 7da4fb8cf51557ef931bb781872ea52fc6731af5)
* remove native state from e2e
* remove index map
* unsupported functions
* Use ProtobufBeaconState() from native state
* tests
* typo
* reduce complexity of `SaveStatesEfficient`
* remove unused receiver name
* update doc.go
* fix test assertion
* fix test assertion 2
* Phase0 justification bits
* bring back state tests
* rename fieldIndexRev
* versioning of ToProto
* remove version check from unexported function
* hasher tests
* don't return error from JustificationBits
* extract fieldConvertersNative
* helper error function
* use fieldConvertersNative
* Introduce RealPosition method on FieldIndex
* use RealPosition in hasher
* remove unused fields
* remove TestAppendBeyondIndicesLimit
(cherry picked from commit 3017e700282969c30006b64c95c21ffe6b166f8b)
* simplify RealPosition
* rename field interface
* use helper in proofs.go
* Update beacon-chain/core/altair/upgrade.go
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* 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>
* Add static analysis for unsafe uint casting
* Fix violations of uintcast
* go mod tidy
* Add exclusion to nogo for darwin build
* Add test for math.Int
* Move some things to const so they are assured not to exceed int64
* Self review
* lint
* fix tests
* fix test
* Add init check for non 64 bit OS
* Move new deps from WORKSPACE to deps.bzl
* fix bazel build for go analysis runs
* Update BUILD.bazel
Remove TODO
* add math.AddInt method
* Add new test casts
* Add case where builtin functions and declared functions are covered
* Fix new findings
* cleanup
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
* new stategen.StateReplayer/ReplayerBuilder to give more fine-grained
control of replaying state+block history
* all rpc/api methods updated to use the new interface, return post-state
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>