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
This effort covers the implementation of the Validator Set Realm in gno, that has a standard set management API. Validator sets should be managed by the 2/3+ majority of voting power.
An example of the API (not extensive):
GetSet() - returns the validator set
AddValidator(…) - adds a validator to the set
RemoveValidator(…) - removes a validator from the set
## Description
This PR introduces an initial validator set implementation in Gno (realm
based), as outlined in gnolang#1824.
It introduces a Proof of Contribution validator set management
mechanism, based on govdao proposals.
Related PRs:
- gnolang#1945
- gnolang#2344
I've left the door open to arbitrary protocol implementations.
~I've also added 2 example implementations:~
- ~PoS (Proof of Stake) - users can stake funds (`ugnot`) to become part
of the on-chain validator set~
- ~PoA (Proof of Authority) - new validators need to be voted in by the
majority of the existing validator set~
Update: I've moved the example PoS + PoA implementation to another
unrelated PR, since they are out of scope
Closesgnolang#1824
<details><summary>Contributors' checklist...</summary>
- [x] Added new tests, or not needed, or not feasible
- [x] Provided an example (e.g. screenshot) to aid review or the PR is
self-explanatory
- [x] Updated the official documentation or not needed
- [x] No breaking changes were made, or a `BREAKING CHANGE: xxx` message
was included in the description
- [x] Added references to related issues and PRs
- [ ] Provided any useful hints for running manual tests
- [ ] Added new benchmarks to [generated
graphs](https://gnoland.github.io/benchmarks), if any. More info
[here](https://github.com/gnolang/gno/blob/master/.benchmarks/README.md).
</details>
---------
Co-authored-by: Manfred Touron <[email protected]>
Description
This effort covers the implementation of the Validator Set Realm in gno, that has a standard set management API. Validator sets should be managed by the 2/3+ majority of voting power.
An example of the API (not extensive):
GetSet()
- returns the validator setAddValidator(…)
- adds a validator to the setRemoveValidator(…)
- removes a validator from the setThis effort is blocked by: #1823
Successful outcome of this effort:
The text was updated successfully, but these errors were encountered: