Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pectra] Eigenpod CLI updates #174

Merged
merged 4 commits into from
Feb 19, 2025
Merged

[pectra] Eigenpod CLI updates #174

merged 4 commits into from
Feb 19, 2025

Conversation

jbrower95
Copy link
Contributor

@jbrower95 jbrower95 commented Feb 19, 2025

Changelog:

Major:

  • Everywhere we compute the set of all eigenpods, we need to take into account that WithdrawalCredentials can now be prefixed with 0x1 or 0x2 for eigenpods.
  • Bumped version of github.com/attestantio/go-eth2-client to latest

Routine/Cleanup:

  • Core utility functions moved into a utils package
  • Removed custom implementations of map, filter, etc. in favor of lo utility library

After merging this, we will;

  • Cut a release of the CLI
  • Update the supported version matrix to include this version POST-pectra
  • Update the pepe-healthchecker
  • Update the proofs service

if withdrawalCredentials[0] != 1 {
// after the pectra upgrade, eigenpods may be found at:
// - `0x1` or `0x2` prefixed withdrawal addresses
if withdrawalCredentials[0] != 1 && withdrawalCredentials[0] != 2 {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

support for 0x2 credentials

if !v.Validator.Slashed {
return false // we only care about slashed validators.
}
if v.Validator.WithdrawalCredentials[0] != 1 {
if v.Validator.WithdrawalCredentials[0] != 1 && v.Validator.WithdrawalCredentials[0] != 2 {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

support for 0x2 credentials

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a function for this would be nice for future changes but nbd

@@ -274,7 +291,7 @@ func FindAllValidatorsForEigenpod(eigenpodAddress string, beaconState *spec.Vers
maxValidators := uint64(len(allValidators))
for i = 0; i < maxValidators; i++ {
validator := allValidators[i]
if validator == nil || validator.WithdrawalCredentials[0] != 1 { // withdrawalCredentials _need_ their first byte set to 1 to withdraw to execution layer.
if validator == nil || (validator.WithdrawalCredentials[0] != 1 && validator.WithdrawalCredentials[0] != 2) { // withdrawalCredentials _need_ their first byte set to 1 or 2 to withdraw to an eigenpod on the execution layer.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto 0x2 credentials

@ypatil12
Copy link
Collaborator

Just validated that all the places we check for 0x01, we also check 0x02

@ypatil12
Copy link
Collaborator

Bumped version of github.com/attestantio/go-eth2-client to latest

CI passes here, old version was pinned on a commit (4ee14baa752e16d5868d83fa559f1f7c7ffc198f) that's been included in v1.24.0

@jbrower95 jbrower95 merged commit a467cb1 into master Feb 19, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants