-
Notifications
You must be signed in to change notification settings - Fork 214
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
differentiate between not terminated hare and terminated with empty set in tortoise and sync #2203
Comments
To rephrase this slightly, a node needs to be able to vote explicitly neutral inside a block with respect to the contents of a layer (while waiting for hare to finish, before hare surpasses the max number of iterations). After hare terminates (if it terminates), the node should vote according to the hare for up to |
Until hare does not finish: we will vote neutral for the layer |
Right now, there is no way to vote neutral. A neutral vote or lack of a vote (see this change) is counted in tortoise as an explicit vote for layer zero which is not what we intend. Also, I'm not sure whether we currently distinguish in hare between a hare CP that ends successful with an empty set, and a hare failure, when getting votes here. |
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
## Motivation See spacemeshos/SMIPS#46 Requires #2394, #2393, #2357 Closes #2203 Closes #2687 ## Changes - adds zdist param: whereas hdist is the "Hare lookback" distance (the number of layers for which we consider hare results/local input vector rather than global opinion), zdist is the "Hare result wait" distance (the number of layers we're willing to wait for Hare to finish before reverting to invalidating layers with no input vector) - Hare explicitly reports failed CPs to the mesh, with the results stored in memory ## Test Plan TBD ## TODO <!-- This section should be removed when all items are complete --> - [x] Explain motivation or link existing issue(s) - [x] Test changes and document test plan - [x] Finish rescoring block goodness after healing - [x] Rescoring block unit test - [x] Block voting weight unit test - [x] Make sure healing -> verifying tortoise handoff is working - [x] App test (for decay in active set size) - [x] Split-then-rejoin test (two way split, three way split w/o majority fork) - [x] Late blocks unit test(s) - [x] Correctly weight votes from blocks with late atxs/those with a bad beacon value (will follow up in separate issue: #2540) - [x] Multi tortoise unit tests ## DevOps Notes <!-- Please uncheck these items as applicable to make DevOps aware of changes that may affect releases --> - [x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources) - [x] This PR does not affect public APIs - [x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.) - [ ] This PR does not make changes to log messages (which monitoring infrastructure may rely on)
Description
with the verifying tortoise we are now syncing on hare results (aka vote input vector) and using them for verifying.
we need to be able to differentiate between not terminated hare and terminated with empty set in both,
if terminated with empty set we should know to vote against every block in that layer
if not terminated we abstain until terminated.
currently we always act as if the hare was not terminated and abstain on all blocks when we get empty set from sync or hare itself.
Affected code
This issue appears in commit hash:
Related files (optionally with line numbers):
The text was updated successfully, but these errors were encountered: