Recover Offline Validators When Epoch Advanced
Maintainers usually reply within 1 day
@samliok is already working on this.
Since Jul 17, 2026.
Assessment
This issue has not been assessed yet.
Description
Validators need a way to be able to detect and recover from being offline. Currently this is possible if they become awake during the epoch they went offline in, but not recoverable if epoch/s were advanced while they were offline.
If a validator node(running an epoch instance) has been offline long enough for one or more epochs to pass, the current epoch may have a completely different validator set. As a result, messages from those validators would normally be rejected.
https://github.com/ava-labs/Simplex/blob/main/simplex/epoch.go#L156
To recover, finalization messages must be accepted even from non-validators. Upon receiving one, handleFinalizationMessage should request replication for that epochs sealing block from the sender. If multiple epochs were missed, each successive finalization advances recovery until the sealing block for the current epoch is obtained.
Once the current sealing block is received, normal epoch replication takes over and the node's validator set is updated accordingly.
Note: Because replication requests may be sent to peers currently considered non-validators, replication responses from those peers must also be accepted.
- Dominant language
- Go
- Stars
- 22
- Forks
- 4
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 19
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ava-labs/Simplex
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 40/100
Maintainers usually reply within 1 day
-
Verification accepts aux info appends after the history is sufficient, changing the approval digestOpen
Difficulty 3/5 1-2 days Newbie friendliness 74/100
Maintainers usually reply within 1 day
All issues in ava-labs/Simplex
Similar issues
-
[schema-coverage] elasticstack_kibana_security_detection_rulePossibly taken @github-actions claimed this today. Openacceptance-tests phase-coding schema-coverage testing triaged
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
elastic/terraform-provider-elasticstack#5186 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
jaegertracing/jaeger#9830 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
apache/rocketmq-dashboard#6318 ·
Maintainers usually reply within 5 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
GoogleCloudPlatform/opentelemetry-operations-collector#710 ·
Maintainers usually reply within 1 day