-
Notifications
You must be signed in to change notification settings - Fork 103
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
*: electra versioned attestations #3473
Conversation
83bea7b
to
3a4bbcb
Compare
3a4bbcb
to
a23ddb6
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## electra #3473 +/- ##
==========================================
Coverage ? 56.45%
==========================================
Files ? 218
Lines ? 33088
Branches ? 0
==========================================
Hits ? 18680
Misses ? 12465
Partials ? 1943 ☔ View full report in Codecov by Sentry. |
The integration tests are failing because of yet unimplemented v2 endpoints, however, this PR grew beyond what is normal amount of work to be done in one PR, so I'd put those new v2 endpoints in a separate one... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Quickly skimmed, did not find any red flags. Implementation looks very accurate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Quickly skimmed, did not find any red flags. Implementation looks very accurate.
|
* Comment out gnosis fix * SubmitAttestation to versioned attestation * Rework attestations, add BlockAttestationsV2 endpoint, update signed blocks with electra version * go mod tidy * Add more random attestation util functions * Fix duty attester test signatures * Fix raw attestation json tag * Fix error messages
* Comment out gnosis fix * SubmitAttestation to versioned attestation * Rework attestations, add BlockAttestationsV2 endpoint, update signed blocks with electra version * go mod tidy * Add more random attestation util functions * Fix duty attester test signatures * Fix raw attestation json tag * Fix error messages
* Comment out gnosis fix * SubmitAttestation to versioned attestation * Rework attestations, add BlockAttestationsV2 endpoint, update signed blocks with electra version * go mod tidy * Add more random attestation util functions * Fix duty attester test signatures * Fix raw attestation json tag * Fix error messages
* Comment out gnosis fix * SubmitAttestation to versioned attestation * Rework attestations, add BlockAttestationsV2 endpoint, update signed blocks with electra version * go mod tidy * Add more random attestation util functions * Fix duty attester test signatures * Fix raw attestation json tag * Fix error messages
* Comment out gnosis fix * SubmitAttestation to versioned attestation * Rework attestations, add BlockAttestationsV2 endpoint, update signed blocks with electra version * go mod tidy * Add more random attestation util functions * Fix duty attester test signatures * Fix raw attestation json tag * Fix error messages
First PR with Electra updates from the
go-eth2-client
'selectra
branch. It includes:Attestation
object toVersionedAttestation
. Similarly to the proposals and blocks, attestations are versioned now, as there are some changes in their structure for Electra. Most functions take as arguments versioned instead of regular attestations now. The same logic for unfolding a versioned attestations is applied as it is for the blocks.BlockAttestationsV2
endpoint, as per the new Beacon API for Electra. Note that this endpoint is one of the few that is not supported bygo-eth2-client
, so we include it in our wrapper and implement it ourselves.electra
as a version in most switch/case statements for already existing versioned structures (blocks, signed blocks, etc.). The list is not exhaustive though and I haven't checked yet in full if electra is included everywhere. More on that in later PRs, I have focused only on making the current test cases pass.go-eth2-client
for Gnosis, it seemed unfeasible to me to update our fork every timego-eth2-client
push new commit to theirelectra
branch and we adapt the new changes. That said, I've commented out the gnosis tests and thego.mod
replacement.category: feature
ticket: none