Skip to content

feat(docs): ADR 003 - Propagation of Proposed Values #884

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

Merged
merged 59 commits into from
Mar 27, 2025
Merged

Conversation

cason
Copy link
Contributor

@cason cason commented Mar 4, 2025

Closes: 365 #937


PR author checklist

For all contributors

For external contributors

@romac romac changed the title Cason/365 adr docs: ADR 003 - Propagation of Proposed Values Mar 4, 2025
@romac romac added the documentation Improvements or additions to documentation label Mar 4, 2025
Copy link
Member

@adizere adizere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Daniel, really appreciate starting this!

@romac romac changed the title docs: ADR 003 - Propagation of Proposed Values feat(docs): ADR 003 - Propagation of Proposed Values Mar 19, 2025
@adizere
Copy link
Member

adizere commented Mar 20, 2025

I made the scope of this ADR more narrow: It should simply tackle #937

Copy link

codecov bot commented Mar 21, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 81.22%. Comparing base (f4618cf) to head (82a0d08).
Report is 3 commits behind head on main.

✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #884      +/-   ##
==========================================
- Coverage   81.38%   81.22%   -0.16%     
==========================================
  Files         193      194       +1     
  Lines       16827    16989     +162     
==========================================
+ Hits        13694    13798     +104     
- Misses       3133     3191      +58     
Flag Coverage Δ
integration 81.08% <ø> (-0.15%) ⬇️
mbt 7.91% <ø> (-0.08%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
core ∅ <ø> (∅)
engine ∅ <ø> (∅)
app ∅ <ø> (∅)
starknet ∅ <ø> (∅)

bastienfaivre and others added 3 commits March 24, 2025 15:19
Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
bastienfaivre and others added 2 commits March 24, 2025 18:29
Co-authored-by: Romain Ruetschi <romain@informal.systems>
Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
ancazamfir and others added 5 commits March 26, 2025 13:49
Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>
Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>
Copy link
Member

@adizere adizere left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's ready. Massive effort, thank you all!

@adizere adizere assigned ancazamfir and unassigned adizere Mar 27, 2025
Copy link
Contributor

@nenadmilosevic95 nenadmilosevic95 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made a pass on old document and it looks good for me. The only thing I am not sure about is if we should use V notation somehow in Consensus By Value section.

For the new section I made some comments.

@ancazamfir
Copy link
Collaborator

The only thing I am not sure about is if we should use V notation somehow in Consensus By Value section.

yes, it's not perfect but I am ok with current version. @cason wdyt?

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
@ancazamfir ancazamfir added this pull request to the merge queue Mar 27, 2025
@ancazamfir ancazamfir removed this pull request from the merge queue due to a manual request Mar 27, 2025
github-merge-queue bot pushed a commit that referenced this pull request Mar 27, 2025
* docs: added file to ADR 003 on values propopagation

* docs: ADR 003 general Context

* docs: ADR 003, Tendermint context vs general one

* docs: ADR 003, Value Propagation context

* docs: ADR 103 Alternatives overview

* docs: ADR 003, Context simplified and rewritten

* docs: ADR 003, sketched Alternatives sections

* docs: ADR 003, overivew of dissemination approaches

* first take on describing current designs

* small improvments on the text

* feat: mermaid diagrams of value propagation modes

* Minor changes

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>

* Small text changes

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>

* fix: diagrams

* Update docs/architecture/adr-003-values-propagation.md

Co-authored-by: Romain Ruetschi <romain@informal.systems>
Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>

* Use V and v, fix diagrams, add some app requirements

* Fix typos

* Separate consensus core and engine, remove network

* Correct diagrams

* Address review comments

* Add details for the different diagram blocks

* Add warnings for ProposalOnly

* Apply suggestions from code review

Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* Small changes

* Remvove TODO

* Show streaming before LocallyProposedValue, add own Proposal msg

* Rearange receiver boxes

* Apply suggestions from code review

Co-authored-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* initial pass, ~50% done

* pass on value propagation considerations section

* Generate proposal for PartsOnly in the engine

* Explicit requirements for PartsOnly

* Add reference to tendermint consensus algo changes

* Spelling

* Small fixes

* Clarify ProposalOnly for large values

* Fix Engine description

* Apply suggestions from code review

Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* Ref fixes

* Update docs/architecture/adr-003-values-propagation.md

Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* Update docs/architecture/adr-003-values-propagation.md

Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Daniel <daniel.cason@informal.systems>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>

* valid_round mandatory for PartsOnly

* second pass

* minor rephrasing

* Cleanup

* Review comment

* Add restreaming section

* Review comments - correct restreaming behavior at non-proposer

* Review comments

* small updates 

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>

* add `V` in consensus by value section

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>

---------

Signed-off-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
Signed-off-by: Anca Zamfir <ancazamfir@users.noreply.github.com>
Co-authored-by: Nenad Milosevic <nenadmilosevic@Nenads-MacBook-Pro.local>
Co-authored-by: Romain Ruetschi <romain@informal.systems>
Co-authored-by: Bastien Faivre <faivre.bast@gmail.com>
Co-authored-by: nenadmilosevic95 <50905385+nenadmilosevic95@users.noreply.github.com>
Co-authored-by: Anca Zamfir <zamfiranca@gmail.com>
Co-authored-by: Anca Zamfir <ancazamfir@users.noreply.github.com>
Co-authored-by: Adi Seredinschi <a@seredinschi.net>
@ancazamfir ancazamfir added this pull request to the merge queue Mar 27, 2025
Merged via the queue into main with commit 2e750e5 Mar 27, 2025
19 checks passed
@ancazamfir ancazamfir deleted the cason/365-adr branch March 27, 2025 12:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Clarify the role of various proposal-related methods in the core library API
6 participants