* removing ssz-only flag
* gaz
* reverting other uses of sszonly
* gaz
* adding kasey and radek's suggestions
* update changelog
* adding test
* radek advice with new headers and tests
* adding logs and fixing comments
* adding logs and fixing comments
* gaz
* Update validator/client/beacon-api/rest_handler_client.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update api/apiutil/header.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update api/apiutil/header.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* radek's comments
* adding another failing case based on radek's suggestion
* another unit test
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Migrate Prysm repo to Offchain Labs organization ahead of Pectra upgrade v6
* Replace prysmaticlabs with OffchainLabs on general markdowns
* Update mock
* Gazelle and add mock.go to excluded generated mock file
* e2e release test breaks due to changes in flag naming
* changing approach to fix
* adding some small alias test
* fixing test, changelog, and flag name
* Update config_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* wip passing e2e
* reverting temp comment
* remove unneeded comments
* fixing merge errors
* fixing more bugs from merge
* fixing test
* WIP moving code around and fixing tests
* unused linting
* gaz
* temp removing these tests as we need placeholder/wrapper APIs for them with the removal of the gateway
* attempting to remove dependencies to gRPC gateway , 1 mroe left in deps.bzl
* renaming flags and other gateway services to http
* goimport
* fixing deepsource
* git mv
* Update validator/package/validator.yaml
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update validator/package/validator.yaml
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update cmd/beacon-chain/flags/base.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update cmd/beacon-chain/flags/base.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update cmd/beacon-chain/flags/base.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* addressing feedback
* missed lint
* renaming import
* reversal based on feedback
* fixing web ui registration
* don't require mux handler
* gaz
* removing gRPC service from validator completely, merged with http service, renames are a work in progress
* updating go.sum
* linting
* trailing white space
* realized there was more cleanup i could do with code reuse
* adding wrapper for routes
* reverting version
* fixing dependencies from merging develop
* gaz
* fixing unit test
* fixing dependencies
* reverting unit test
* fixing conflict
* updating change log
* Update log.go
Co-authored-by: Preston Van Loon <pvanloon@offchainlabs.com>
* gaz
* Update api/server/httprest/server.go
Co-authored-by: Preston Van Loon <pvanloon@offchainlabs.com>
* addressing some feedback
* forgot to remove deprecated flag in usage
* gofmt
* fixing test
* fixing deepsource issue
* moving deprecated flag and adding timeout handler
* missed removal of a flag
* fixing test:
* Update CHANGELOG.md
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* addressing feedback
* updating comments based on feedback
* removing unused field for now, we can add it back in if we need to use the option
* removing unused struct
* changing api-timeout flag based on feedback
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Preston Van Loon <pvanloon@offchainlabs.com>
* First take at updating everything to v5
* Patch gRPC gateway to use prysm v5
Fix patch
* Update go ssz
---------
Co-authored-by: Preston Van Loon <pvanloon@offchainlabs.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
Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
* adding compare beacon block test
* fixing bazel
* fixing evaluator import
* fixing imports
* changing package name
* fixing bazel
* adding logic to check for checking epoch
* fixing linting
* adding check for attester duties
* handle both blockv1 and blockv2
* making middleware objects public instead
* adding test for block attestations
* fixing typo
* adding blockroot test
* adding test for attestations
* fixing type value
* fixing test
* adding in node endpoints
* fixing bazel
* updating web3signer
* printing beacon blocks on request
* fixing struct
* temp log
* forgot string cast
* adding comparison function
* fixing bazel and evaulators, WIP
* fixing bazel
* changing how to minify json
* trying multiclient
* fixing port problem
* reverting evaluator and making test only for mainnet scenario testing
* removing test data
* fixing linting unused functions
git push
* changed to reflect
* adding in ssz comparison
* fixing tests
* fixing conflict
* fixing tests
* making v2 the standard
* adding better error logging
* fixing type
* adding lighthouse settings and fixing some deepsource items
* testing adding delay to evaluator
* testing without peers check
* changing target peers to try to fix lighthouse peer connections
* temp removing other tests
* fix lint issue
* adding peers connect back in
* adding in state version
* fixing bazel
* fixing path error
* testing changes to state
* fix unmarshal
* simplifying beacon api e2e execution
* fixing missed assertian checks
* improve logging and debugging issue
* trying to fix unmarshal
* still breaking more test edits
* removing fork to test unmarshal
* fixing pathing
* resolving error
* fixing beacon_api
* merging in debug api to beacon_api test
* fixing lint and temp commenting out endpoint
* adding in custom comparison function
* fixing custom evaluator
* adding test for block header data
* fixing header evaluation
* add node apis
* fixing linting,adding tests
* fixing bazel and temp removing unused functions
* fixing deepsource and linting issues
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* addressing review
* resolving more review comments
* fixing linting
* removing ssz return value as it's large and possibly not needed
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fixing more review comments
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fixing linting and review iteems
* fixing cognit complexity issue
* fixing linting
* fix log printout
* test build kite only with crossclient
* switching out evaluator to depositedvalidatorsareactive
* removed wrong evaluator switching correct one
* removing skip based on review comments
* fixing pathing issue
* test without participation at epoch
* testing without special lighthouse logic in evaluator
* reducing expected participation when multiclient
* fixing imports
* reducing epochs to see if less flaky
* testing with other tests added back in
* reducing epochs ran further
* testing only cross client again
* testing multi run again
* test reverted scenario for tests
* testing with cross client
* removing commented out function
* testing without peers connect
* adding optimization based on suggestions
* removed the wrong peers connect
* accidently commited something I shouldn't have
* fixing lighthouse flag
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/evaluators/beaconapi_evaluators/beacon_api.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* 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>
* initial commit
* adjusting logic to match web3signer specifications
* making Epoch mandatory
* fixing unit test
* rolling back some changes on slots
* fixing unit tests
* testing enable validator registration
* adding validator registration to configs
* fixing prefix
* fixing shasum
* rolling back e2e validator registration until fully supported
* updating web3signer version
* changing types based on feedback
* testing out fee-recipient evaluator
* fixing bazel linter
* adjusting comparison
* typo on file rolling back
* adding fee recipient is present to minimal e2e
* fixing gofmt
* fixing gofmt
* fixing flag usage name
* adding in log to help debug
* fixing log build
* trying to figure out why suggested fee recipient isn't working in e2e, adding more logging temporarily
* rolling back logs
* making e2e test more dynamic
* fixing deepsource issue
* fixing bazel
* adding in condition for latest release
* duplicate condtion check.
* fixing gofmt
* rolling back changes
* adding fee recipient evaluator in new file
* fixing validator component logic
* testing rpc client addition
* testing fee recipient evaluator
* fixing bazel:
* testing casting
* test casting
* reverting
* testing casting
* testing casting
* testing log
* adding bazel fix
* switching mixed case and adding temp logging
* fixing gofmt
* rolling back changes
* removing fee recipient evaluator when web3signer is used
* test only minimal config
* reverting changes
* adding fee recipient evaluator to mainnet
* current version uses wrong flag name
* optimizing key usage
* making mining address a variable
* moving from global to local variable
* removing unneeded log
* removing redundant check
* make proposer settings mroe deterministic and also have the evaluator compare the wanting values
* fixing err return
* fixing bazel
* checking file too much moving it out
* fixing gosec
* trying to fix gosec error
* trying to fix address
* fixing linting
* trying to gerenate key and random address
* fixing linting
* fixing check for proposer config
* trying with multi config files
* fixing is dir check
* testing for older previous balance
* adding logging to help debug
* changing how i get the block numbers
* fixing missed error check
* adding gasused check
* adding log for current gas used
* taking suggestion to make fee recipient more deterministic
* fixing linting
* fixing check
* fixing the address check
* fixing format error
* logic to differentiate recipients
* fixing linting
* add new changes
* fix it all
* add nicer scenario
* some more cleanup
* restructure tests
* godoc
* skip one scenario
* space
* fix test
* clean up
* fix conflicts
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* initial commit
* fixing bazel
* removing extra space
* adding blindedbeaconblock
* adding unit tests
* fixing bazel build
* switching to switch statement
* fixing function parameters
* fixing ineffectual err error
* deleting unused files
* updating web3signer version to support bellatrix
* adding metrics
* testing longer run
* changing log level to help find errors
* changing logging back to all to better understand the issue
* testing better way to get public keys for web3signer on validator
* fixing bazel
* rolling back changes
* missed rolling back 1 thing
* adding flag back in
* adding comments back in
* testing lower participation
* adding logs to see web3signer keys for comparison
* fix bazel
* adding more logs temporariliy
* switching hex utility function
* web3signer doesn't support deposits, so changing this
* rolling back unintended unit test
* rolling back some changes for debugging
* Update validator/keymanager/remote-web3signer/v1/web3signer_types.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/components/web3remotesigner.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/endtoend_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* Update testing/endtoend/endtoend_test.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fixing merge conflict
* Update validator/keymanager/remote-web3signer/v1/requests.go
* Update testing/endtoend/endtoend_test.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/keymanager/remote-web3signer/v1/requests.go
Co-authored-by: terencechain <terence@prysmaticlabs.com>
* prysm doesn't currently support deposits for web3signer
* reverting back to old implementation
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: terencechain <terence@prysmaticlabs.com>
* e2e: Provide e2e config yaml to web3signer
* fix build for //testing/endtoend:go_default_test
* Update with web3signer with teku fixes
* buildifier
* Add slasher case for web3signer
* Update testing/endtoend/minimal_e2e_test.go
* Update web3signer to 21.10.6
* Revert "Update web3signer to 21.10.6"
This reverts commit bdf3c408f2.
* Remove slasher part of web3signer e2e tests
* Revert "Remove slasher part of web3signer e2e tests"
This reverts commit 24249802ae.
* fix slasher web3signer test
* fixing build
* updating yaml to match testnet_e2e_config.go
* trying a different order to the e2e test and adding a log
* trying different way to kill process
* handling unhandled error
* testing changes to config WIP
* fixing bazel WIP
* fixing build
* ignoring test for now to test
* fixing bazel
* Test only web3signer e2e
* rolling back some commits to test
* fixing bazel
* trying an updated web3signer version
* changing flag to match version
* trying current version of develop for web3signer
* testing not using the --network property
* addressing build error
* testing config change
* reverting to go bakc to using the network file
* testing adding epochs per sync committee period
* rolling back configs
* removing check to test
* adding log to get sync committee duties and changing bellatrix fork epoch to something large and altair to epoch 1
* fixing bazel
* updating epoch in config file
* fixing more descrepencies between the configurations
* removing un used yaml
* removing goland added duplicates
* reverting using network minimal
* fixing bug
* rolling back some changes
* rolling back some changes
* rolling back changes
* making sure web3signer test doesn't make it to bellatrix fork yet
* reverting changes I did not touch
* undo comment
* Update testing/endtoend/deps.bzl
* Apply suggestions from code review
* rm nl
* fix //testing/endtoend:go_mainnet_test
* Remove unnecessary dep
* fix //testing/endtoend:go_mainnet_test
* addressing review comments
* fixing build and internal conflict
* removing web3signer slasher test as it's unneeded due to the interface nature of key signing, the regular slashing test is enough
* fix: The validator we fetch from the binary can only run before altair, if you add that and the web3signer then these things can never run together as the web3signer sets it to before bellatrix
Co-authored-by: james-prysm <90280386+james-prysm@users.noreply.github.com>
Co-authored-by: James He <james@prysmaticlabs.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: Raul Jordan <raul@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>
* save work
* current progress
* fix it more
* save progress
* fixes so far
* add signature test
* fix up changes so far
* change to latest
* update lighthouse version
* fix build
* fix again
* do one
* clean up
* fix build
* fix it
* fix test
* change tag
* remove e2e
* Update config/params/testnet_e2e_config.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* update
* Update sha
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prestonvanloon <preston@prysmaticlabs.com>
* initial commit for cli integration of web3signer
* resolving conflicts and execution
* remove aggregation slot from proto
* rem aggregation slot
* define a sync message block root struct
* fix sync message name
* sync message block root struct
* amend where sync committee block root is used
* altered switch statement to return correct json request by type
* fixing fork data import, types, and unit tests
* reverting unwanted changes
* reverting more unwanted changes
* fixing deepsource issues
* fixing formatting
* more fixes for deepsource and code clean up
* only want to fetch once for fetch validating public keys
* adding more comments
* new unit tests for requests and fixing a mapper issue
* Update validator/client/validator.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/accounts/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* adjusting comment
* adjusting comment
* fixing import organization
* including more unit tests
* adding new cli edit
* adding in checks for wallet initialize
* adding web3signer flags to main.go
* some how resolved files did not save correctly
* adding in check to make sure web flag only works with types imported and derived
* Update validator/client/sync_committee.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/aggregate.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/accounts/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/main.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/flags/flags.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/flags/flags.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/wallet/wallet.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* reverting changes that accidently got checked in
* reverting
* reverting
* continuing to revert unintenteded changes
* reverting
* removing more unneeded changes
* addressing review comment
* initial refactor
* adding in more clarifying comments
* fixing mock
* resolving desource issues
* addressing gosec scan for helper go file
* addressing gosec
* trying to fix bazel build
* removal of interface to fix build
* fixing maligned struct
* addressing deepsource
* fixing deepsource
* addressing efficiency of type checking
* fixing bazel test failure
* fixing go linter errors
* gaz
* web changes
* add w3signer
* new kind
* proper use
* align
* adding prysm validator flags to help flags list
* addressing root comment
* ci lint
* fixing standardapi tests
* fixing accounts_test after removal of keymanager from rpc server
* fixing more unit tests
* Update cmd/validator/flags/flags.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update cmd/validator/flags/flags.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/service.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/service.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* addressing missed err checks
* fixing mock tests
* fixing gofmt
* unskipping minimal e2e test and removing related TODOs
* Update testing/endtoend/components/validator.go
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* Update testing/endtoend/components/validator.go
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* adding some error wrapers to clarify failure point
* fixing bazel build with new error checks
* taking preston's advice to make test fail faster to understand what's going on with the test
* checking if genesis validators root is not zero hash
* adding check for genesis validators root giving zero hash
* fixing missing dependency
* adding check for wallet
* log all
* fixing errors for http responses
* switching marshal to pretty print
* adding pretty sign request test
* fixing base url setting
* adding in check for web3signer and temporary wallet instead of having to open the wallet
* refactoring web3signer to not require wallet
* bazel build fix
* fixing gazelle build
* adding content type of request
* fixing more bazel
* removing unused code
* removing unused comments
* adding skip test back in
* addressing a validation and error message
* fix parse
* body
* fixing logic for datadir
* improving error handling
* show resp
* fix
* sign resp as str
* point of pointer remove
* sign resp
* unmarshal sig resp
* read body as str
* adding more verbose logging
* removing unused result
* fixing unit test
* reconfiguring files to properly nest code and mocks
* fix build issue
* using context when using client function calls
* fixing based on suggestion
* addressing comments
* gaz
* removing defined max timeout
* reverting json print pretty
* Update validator/accounts/wallet_edit.go
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
* removing unneeded code restrictions
* should not introduce new code that may impact existing key manager types
* adjusting comments
* adding in json validation
* running go mod tidy
* some logging
* more logs
* fixing typo
* remove logs
* testing without byte trim
* fixing order or properties
* gaz
* tidy
* reverting some logs
* removing the confusing comments
* Update validator/client/aggregate.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* Update validator/client/aggregate.go
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
* addressing pr comments
* editing bytes test
* Run gazelle update-repos
* run gazelle
* improving unit test coverage
* fixing text
* fixing a potential escaped error
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>