Skip to content

Release v1.1.10 (kilnv2) - #2839

Merged
djrtwo merged 20 commits into
masterfrom
dev
Mar 1, 2022
Merged

Release v1.1.10 (kilnv2)#2839
djrtwo merged 20 commits into
masterfrom
dev

Conversation

@djrtwo

@djrtwo djrtwo commented Feb 25, 2022

Copy link
Copy Markdown
Contributor

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants