Skip to content

Consensus/readme#777

Merged
gokutheengineer merged 18 commits intomainfrom
consensus/readme
Jun 8, 2023
Merged

Consensus/readme#777
gokutheengineer merged 18 commits intomainfrom
consensus/readme

Conversation

@gokutheengineer
Copy link
Contributor

@gokutheengineer gokutheengineer commented May 21, 2023

Description

Summary generated by Reviewpad on 08 Jun 23 08:33 UTC

This pull request adds a new module, Consensus Module, to the project, implementing the HotStuff consensus algorithm and adhering to the Pocket's Consensus Module Specification. The pull request also includes the organization of files, code documentation, and testing.

Issue

Fixes #335

Type of change

Please mark the relevant option(s):

  • New feature, functionality or library
  • Bug fix
  • Code health or cleanup
  • Major breaking change
  • Documentation
  • Other

List of changes

  • Add README.md to the consensus module

Testing

  • make develop_test; if any code changes were made
  • make test_e2e on k8s LocalNet; if any code changes were made
  • e2e-devnet-test passes tests on DevNet; if any code was changed
  • Docker Compose LocalNet; if any major functionality was changed or introduced
  • k8s LocalNet; if any infrastructure or configuration changes were made

Required Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added, or updated, godoc format comments on touched members (see: tip.golang.org/doc/comment)
  • I have tested my changes using the available tooling
  • I have updated the corresponding CHANGELOG

If Applicable Checklist

  • I have updated the corresponding README(s); local and/or global
  • I have added tests that prove my fix is effective or that my feature works
  • I have added, or updated, mermaid.js diagrams in the corresponding README(s)
  • I have added, or updated, documentation and mermaid.js diagrams in shared/docs/* if I updated shared/*README(s)

@reviewpad reviewpad bot added the medium Pull request is medium label May 21, 2023
@gokutheengineer gokutheengineer marked this pull request as ready for review May 21, 2023 12:17
@gokutheengineer gokutheengineer requested a review from Olshansk May 21, 2023 12:17
Copy link
Collaborator

@Olshansk Olshansk left a comment

Choose a reason for hiding this comment

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

@gokutheengineer Thank you so much for doing this!

I submitted a few NITS myself, and left a couple comments. Would really appreciate if you could take a look (shouldn't take too long) and then we can merge it in!


### State Sync

State synchronization is crucial to ensure all participating nodes maintain a consistent and up-to-date view of the network state. It is especially important in a dynamic and decentralized network where nodes can join, leave, or experience intermittent connectivity. For an in-depth understanding of the state sync process and its current status, please refer to our [State Sync Protocol Design Specification](https://github.com/pokt-network/pocket/blob/main/consensus/doc/PROTOCOL_STATE_SYNC.md).
Copy link
Collaborator

Choose a reason for hiding this comment

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

NIT: Any chance you could follow the "best practices" I learnt about recently and see if we can reformat this (by moving this around) so it's easier to read: https://twitter.com/olshansky/status/1660499323317284864

If this is too hard, then no worries!

Copy link
Collaborator

Choose a reason for hiding this comment

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

@gokutheengineer we synched offline, but let's just merge in what we have and iterate on a diagram in a future PR!

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I did a quick fix that I think makes it better and easier to understand.

@Olshansk Olshansk assigned Olshansk and unassigned gokutheengineer May 31, 2023
@codecov
Copy link

codecov bot commented Jun 2, 2023

Codecov Report

Patch and project coverage have no change.

Comparison is base (185e0fc) 31.38% compared to head (8701934) 31.38%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #777   +/-   ##
=======================================
  Coverage   31.38%   31.38%           
=======================================
  Files         107      107           
  Lines        9080     9080           
=======================================
  Hits         2850     2850           
  Misses       5889     5889           
  Partials      341      341           
Impacted Files Coverage Δ
consensus/module_consensus_state_sync.go 0.00% <ø> (ø)

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@gokutheengineer gokutheengineer merged commit f72e1f0 into main Jun 8, 2023
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
…ider

* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite pushed a commit that referenced this pull request Jun 8, 2023
## Description

<!-- reviewpad:summarize:start -->
### Summary generated by Reviewpad on 08 Jun 23 08:33 UTC
This pull request adds a new module, Consensus Module, to the project,
implementing the HotStuff consensus algorithm and adhering to the
Pocket's Consensus Module Specification. The pull request also includes
the organization of files, code documentation, and testing.
<!-- reviewpad:summarize:end -->

## Issue

Fixes #335 

## Type of change

Please mark the relevant option(s):

- [ ] New feature, functionality or library
- [ ] Bug fix
- [ ] Code health or cleanup
- [ ] Major breaking change
- [X] Documentation
- [ ] Other <!-- add details here if it a different type of change -->

## List of changes
- Add README.md to the consensus module

## Testing

- [ ] `make develop_test`; if any code changes were made
- [ ] `make test_e2e` on [k8s
LocalNet](https://github.com/pokt-network/pocket/blob/main/build/localnet/README.md);
if any code changes were made
- [ ] `e2e-devnet-test` passes tests on
[DevNet](https://pocketnetwork.notion.site/How-to-DevNet-ff1598f27efe44c09f34e2aa0051f0dd);
if any code was changed
- [ ] [Docker Compose
LocalNet](https://github.com/pokt-network/pocket/blob/main/docs/development/README.md);
if any major functionality was changed or introduced
- [ ] [k8s
LocalNet](https://github.com/pokt-network/pocket/blob/main/build/localnet/README.md);
if any infrastructure or configuration changes were made

## Required Checklist

- [X] I have performed a self-review of my own code
- [X] I have commented my code, particularly in hard-to-understand areas
- [X] I have added, or updated, [`godoc` format
comments](https://go.dev/blog/godoc) on touched members (see:
[tip.golang.org/doc/comment](https://tip.golang.org/doc/comment))
- [X] I have tested my changes using the available tooling
- [X] I have updated the corresponding CHANGELOG

### If Applicable Checklist

- [ ] I have updated the corresponding README(s); local and/or global
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have added, or updated,
[mermaid.js](https://mermaid-js.github.io) diagrams in the corresponding
README(s)
- [ ] I have added, or updated, documentation and
[mermaid.js](https://mermaid-js.github.io) diagrams in `shared/docs/*`
if I updated `shared/*`README(s)

---------

Co-authored-by: Gokhan Sagirlar <gokhansagirlar@Gokhans-MacBook-Pro.local>
Co-authored-by: Daniel Olshansky <olshansky.daniel@gmail.com>
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
…ider

* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
…ider

* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
* pokt/main:
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  Add github wiki tag to devlog8
  Add README for Devlog8 for iteration17 (#805)
bryanchriswhite added a commit that referenced this pull request Jun 8, 2023
* refactor/peerstore-provider: (22 commits)
  fix: bugs
  chore: update changelogs
  refactor: rename `T` & `K` type params to `M` &`C`
  chore: improve comment
  chore: add issue numbers to TECHDEBT comments
  chore: add TECHDEBT comments
  refactor: re-implement `GetUnstakedPeerstore`
  refactor: update peerstore provider method receivers
  refactor: `p2pPeerstoreProvider` to a single function'
  refactor: rename persistence.go back to provider.go
  refactor: consolidate p2pPeerstoreProvider into persistencePeerstorProvider
  chore: oneline function signature
  refactor: embed `p2pPStoreProviderFactory`
  refactor: persistence peerstor provider
  Consensus/readme (#777)
  chore: add `--build-tags` flag to `go_lint` make target (#807)
  [Core] Deploying all-the-protocol-actors (#710)
  fix: retrieve p2p mdoule from bus on each call
  chore: add godoc comments
  chore: remove unused `GetP2PConfig()` method
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

medium Pull request is medium waiting-for-review

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[DOCUMENT] Add README.md to the Consensus Module

2 participants