You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sergio-mena opened this issue
Sep 8, 2022
· 0 comments
Assignees
Labels
C:abciComponent: Application Blockchain InterfaceE:mediumEstimated to take up to a month or twofeatureFeature work that definitely changes system behaviorstalefor use by stalebot
This is the continuation of the work started in #9053: backport ABCI++ implementation, which lives in the v0.36.x branch.
Once this tracking issue is completed, the whole ABCI++ interface should be ready for QA process, and then release.
Proposed Path to Done. Summary
The main idea behind this plan is to proceed in the same way as #9053.
The main approach is:
We will "follow" our work on v0.36.x. By "following a PR", I mean looking at that PR (similar work done for v0.36.x) and copying over only what makes sense. "git cherry-pick" turned out to be our best friend for "following" PRs in ABCI++ Prepare/Process Proposal #9053
We will be considering only commits related to vote extensions and FinalizeBlock
Restore CI on feature/abci++vef branch [Estimation: 0.5 days]
e2e tests: port any improvements not included in the core work section (git diff HEAD..v0.36.x -- test/e2e) [Estimation: 2 days] (tracking: e2e: add contexts and e2e generator tests #9426)
(2) Core feature work
We have three threads that can proceed in parallel:
Vote extensions (*) [Estimation: XXX days]
FinalizeBlock (*) [Estimation: XXX days]
Spec and doc work [Estimation: XXX days]
(*) Only when vote extensions and FinalizeBlock are done, can we proceed with the fourth part:
Final adjustments [Estimation: XXX days, assuming no parallel work done]
C:abciComponent: Application Blockchain InterfaceE:mediumEstimated to take up to a month or twofeatureFeature work that definitely changes system behaviorstalefor use by stalebot
This is the continuation of the work started in #9053: backport ABCI++ implementation, which lives in the v0.36.x branch.
Once this tracking issue is completed, the whole ABCI++ interface should be ready for QA process, and then release.
Proposed Path to Done. Summary
The main idea behind this plan is to proceed in the same way as #9053.
The main approach is:
FinalizeBlock
PrepareProposal
/ProcessProposal
related commits (as they are already inmain
via ABCI++ Prepare/Process Proposal #9053)The work is structured very similarly to #9053. It consists of two main parts (further described below):
(1) and (2) can mostly proceed in parallel.
protobufs will be managed as in v0.37.x → They will evolve with the code
Proposed Path to Done. Details
(1) Preliminary Work
We could have two threads here, but as all these tasks serialized are shorter than the critical path in "Core Feature Work", there's no point
feature/abci++vef
[Estimation: 0 days]feature/abci++vef
branch [Estimation: 0.5 days]git diff HEAD..v0.36.x -- test/e2e
) [Estimation: 2 days] (tracking: e2e: add contexts and e2e generator tests #9426)(2) Core feature work
We have three threads that can proceed in parallel:
FinalizeBlock
(*) [Estimation: XXX days](*) Only when vote extensions and
FinalizeBlock
are done, can we proceed with the fourth part:Vote Extensions
PrepareProposal
-- vote extensionsFinalizeBlock
FinalizeBlock
PR and rebased to master #7798 (it's bulky, and might depend on other infra PRs, if yes cherry-pick them first)FinalizeBlock
with specFinal adjustments
Most of these tasks can be done in parallel, but they are quite short.
FinalizeBlock
) [Estimation: 1 day]FinalizeBlock
, and obsolete methods (BeginBlock
, etc). Double check that changes in Removed redundant params in FinalizeBlock #8598 and/or Remove obsolete abci methods, no longer called by ABCI++ Tendermint #8633 are unnecessaryapp_hash
fromCommit
toFinalizeBlock
: follow abci: Moveapp_hash
parameter fromCommit
toFinalizeBlock
#8664types.proto
infeature/abci++vef
andv0.36.x
and make sure no changes are related to vote extensions andFinalizeBlock
main
Spec and doc work
Low risk, can proceed completely in parallel with the rest
FinalizeBlock
from the spec.feature/abci++vef
and go through the conflicts (goal: make sure we didn't forget anything)Commit
to the ABCI++ spec, and other late modifications #8796 and make sure the changes are present in the specdata
field inCommit
Misbehaviour
toByzantineValidators
(done already?)getting-started.md
[small, 0.5 days]indexing-transactions.md
[small, 0.5 days]abci-cli.md
(review only) [small, 0.5 days]what-is-tendermint.md
(ABCI section) [small, 0.5 days]go-built-in.md and go.md
(same changes) [medium, 2 days]PrepareProposal
/ProcessProposal
The text was updated successfully, but these errors were encountered: