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

Release v1.1.10 (kilnv2) #2839

Merged
merged 20 commits into from
Mar 1, 2022
Merged

Release v1.1.10 (kilnv2) #2839

merged 20 commits into from
Mar 1, 2022

Conversation

djrtwo
Copy link
Contributor

@djrtwo djrtwo commented Feb 25, 2022

todo:

etan-status and others added 18 commits January 17, 2022 17:38
There were a couple instances where a division was used on an epoch
to derive the corresponding sync committee period instead of calling the
`compute_sync_committee_period` function.
These instances were changed to also use the function.
When a light client updates its `finalized_header` using a forced update
because of the timeout, and the new header was not signed by enough sync
committee participants to pass `get_safety_threshold(store)`, it may
occur that `store.finalized_header.slot > store.optimistic_header.slot`.
This patch ensures that the `optimistic_header` is updated to the latest
`finalized_header` if that happens, so that it always indicates the
latest known and accepted head.
The spec reserves the libp2p error code range `[3, 127]` for future use
but actually defines error code `3` as `ResourceUnavailable`. This patch
updates the reserved range to `[4, 127]`.
Consistently use `compute_sync_committee_period`
Update reserved libp2p error documentation
Ensure light client `optimistic_header` to be at head
Minor refactoring for test_sync_protocol.py
When nodes are syncing but have not yet reached the canonical `head`,
they cannot determine whether nodes they are connected to serve a valid
history or are making bogus claims in their `Status` advertisement.

Thus, the best course of action that a client can take is to vote for
its "current" best synced head, regardless of whether it's connected to
peers that claim to have other heads or not.

However, in the p2p spec, we penalize such peers with a `REJECT` - this
should be an `IGNORE` instead because this vote is correct per the spec,
albeit "late" according to the validating clients' view of the chain.
Ignore attestations voting for the wrong finalized checkpoint
revert removal of aggregate deduplication condition from #2183
Refactoring: add `is_finality_update` helper
@djrtwo djrtwo changed the title [DO NOT MERGE] Release v1.1.10 (kilnv2) Release v1.1.10 (kilnv2) Mar 1, 2022
@djrtwo djrtwo merged commit 9f643d8 into master Mar 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bellatrix CL+EL Merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants