Proto commits in pokt-network/pocket-core

These 22 commits are when the Protocol Buffers files have changed:

Commit:e78e940
Author:tokikuch
Committer:GitHub

Sort RewardDelegators when marshaling a validator (#1591) ## Description This is a fix for a regression introduced by #1581. When a node stores a validator with the new `RewardDelegators` field, its marshaled product is not deterministic because the order of map iteration is not deterministic. As a result, the merkle tree of application.db can differ between nodes, leading to consensus failure. The proposed fix is to sort the keys of `RewardDelegators` by using the stable marshaler. <!-- reviewpad:summarize:start --> ### Summary generated by Reviewpad on 15 Jan 24 18:21 UTC This pull request includes changes to the `nodes.proto` file and a file diff. The changes in the `nodes.proto` file include: - Added an option `stable_marshaler` with a value of `true`. This option is used to make the order of `RewardDelegators` deterministic. - Updated the `Address` field to include additional options `(gogoproto.casttype)`, `(gogoproto.moretags)`, and `(gogoproto.jsontag)`. - Updated the `PublicKey` field to include additional options `(gogoproto.moretags)` and `(gogoproto.jsontag)`. - Updated the `jailed` field to include an additional option `(gogoproto.jsontag)`. The file diff includes the following changes: - Imported the "encoding/hex", "math/rand", "reflect", "strconv", and "time" packages. - Added a test case for marshalling RewardDelegators. - Added the "Test_Marshal_RewardDelegators" function. - Created variables and constants within the test function. - Generated random numbers to be used as reward delegator addresses. - Created and initialized a map, "delegatorMap", with random numbers as keys and their corresponding modulo 10 values as values. - Created a "Validator" struct with various fields and assigned values to them. - Marshaled the validator struct and ensured that the resulting hash is the same for every iteration of the test. Please let me know if there is anything specific you would like me to focus on. <!-- reviewpad:summarize:end -->

The documentation is generated from this commit.

Commit:58217f2
Author:tokikuch
Committer:GitHub

[v0.11 feature] Built-in Reward Share (#1581) ## Description This patch implements the Built-in Reward Share feature which lets the network itself to distribute the relay/block rewards into multiple addresses. The change consists of the following parts. - Add `RewardDelegators` in `Validator` - Add `RewardDelegators` in `MsgStake` - Add a new command `pocket nodes stakeNew` - Distributes the fee of claim/proof transaction to a node's operator address - Add a new config `prevent_negative_reward_claim` not to claim a potential loss evidence. This change is consensus-breaking. The new behavior is put behind a new feature key `RewardDelegator`. The new field is kept unavailable until activation. The new structure of `Validator` or `MsgStake` is backward/forward compatible, meaning the new binary can still unmarshal data marshaled by an older binary, and vice versa. In other words, the network before `RewardDelegator` activation accepts an `MsgStake` transaction, ignoring the `RewardDelegators` field. And the new `Validator` structure can handle all historical states from genesis. Therefore this patch does not introduce a structure like `10.0Validaor` as the NCUST patch did before. <!-- reviewpad:summarize:start --> ### Summary generated by Reviewpad on 26 Dec 23 01:21 UTC This pull request includes changes to multiple files. Here is a summary of the diff: 1. The file `common_test.go` was modified to replace the import of `math/rand` with `crypto/rand`. Additionally, the comment `// : deadcode unused` was removed. 2. The file `x/nodes/keeper/abci_test.go` was modified to add and remove import statements, as well as comment out unnecessary code related to state conversion. 3. The file `x/nodes/types/validator.go` was modified to add an import, add a new field to the `Validator` struct, add a new function to create a validator from a message, modify several methods to include a new field in the output, and add a new struct and comment. 4. The file `x/nodes/types/validator_test.go` was modified to add import statements and a new test function. 5. The file `msg_test.go` was modified to add and remove import statements, add new test functions, and update existing test functions. 6. The file `keeper_test.go` was modified to add import statements, modify existing test functions, and add new test functions. 7. The file `go.mod` was modified to add and update package requirements. 8. The file `handler.go` was modified to add import statements and modify function implementations. 9. The file `nodes.proto` was modified to remove an import statement and add a new field to a message. 10. The file `msg.go` was modified to add import statements, add a new struct and function, and modify existing methods. 11. The file `genesis_test.go` was modified to add import statements and modify existing test functions. 12. The file `rpc_test.go` was modified to add and remove import statements, modify function implementations, and add test cases. 13. The file `expectedKeepers.go` was modified to remove comments and add a new method. 14. The file `config.go` was modified to add a new field to a struct. 15. The file `msg.proto` was modified to add a new field to a message. 16. The file `LegacyValidator.go` was modified to add a new method and update existing methods. 17. The file `errors.go` was modified to add new error codes and functions to handle them. 18. The file `reward_test.go` was modified to add import statements, add and update test functions. 19. The file `util_test.go` was modified to rearrange import statements and add new test functions. Please review these changes and provide any necessary feedback. Let me know if you need more information or if there's anything else I can assist you with. <!-- reviewpad:summarize:end --> --------- Co-authored-by: tokikuch <toshi@c0d3r.org>

Commit:a9199a7
Author:Otto V
Committer:Otto V

regenerate proto after change

Commit:3f55e9c
Author:Andrew Nguyen
Committer:Otto V

Squash slim rearrange test ordering TestPrefixEndBytes fix removed benchmarking print made persisted database generic inorder to allow mem.DB when testing slim code complete completely removed memdb from codebase rolled back memdb cache with commenting codec fix for 30024 bug working memdb using btree really slow memdb with custom implementation stable with growing memory due to golevelmemdb added previous validators cache for session generation added signing info cache added codec cache updated proto for slim + optimized indexer working prototype with cache layer working prototype with no caching dedup implementation one, rollback point foundation laying for persistence replacement upstreamed waves cache-multi file consolidation removed proof / query functionality from iavl cleaned up store packages, removed height cache removed transient removed deprecated pruning, list, queue removed prefix store from store package removed trace removed gas

Commit:9be1e61
Author:Otto V

fmt and rearrange

Commit:32157db
Author:andrewnguyen22
Committer:Otto V

Release 0.8.X Milestone: -go fmt -update changelog -fixing minor typo, pr comments, updating rpc-spec.yaml, creating service metrics on error from hot reload -move chain query/update to private. -Config for hot reload -change hot reload interval from 5 seconds to 1 minute -Manual reload via rpc and hot reload should not be used together.(if hot reload is enabled turn off rpc manual reload route) -rpc update chains call -rpc hosted blockchain call -Configurable IavlCacheSize -added all block-txs flag -update tendermint gogo/protobuf to v1.3.2 -update node.md -updating circleci go image -updating golang version in README.md -updating docs -version update -updating defaults config rpc timeout & validator cache size -go mod tidy -increase IAVLCache default size -refresh feature map on every upgrade tx. -fixing unjail cmd -test refactor / reorder -clean and fix cli -fix signature for validator msgs on nil output -fixing route for debug enpoint vbc -nps optimization -go mod tidy -CodecUpgradeHeight query fix -updating ci to use go 1.17 -using pokt-network tm-db -go 1.17 and timetrack wip -cleanup and refactoring upgrade -ci resource class change -Upgrade mechanism for 8.0 #1204 #1368 #1096 #1256 #1345 #1320 #1316 #1103 #1372 #1362 #1369 issue-#1194

Commit:c89ba88
Author:Otto V
Committer:Otto V

Upgrade mechanism for 8.0

Commit:b24545f
Author:Otto V
Committer:Otto V

test refactor / reorder re-adding omitempty

Commit:09bf78e
Author:Otto V
Committer:Otto V

cleanup , fix signer bug

Commit:2d8fb13
Author:Otto V
Committer:Otto V

fixes

Commit:8c92f84
Author:andrewnguyen22
Committer:Otto V

#1204

Commit:248721c
Author:Otto V
Committer:Irving A.J. Rivas Z

pl - second upgrade enhancement

Commit:d4454ad
Author:andrewnguyen22
Committer:Andrew Nguyen

codecs use heights, fixed tests, rpc uses height 0

Commit:cae50e5
Author:andrewnguyen22
Committer:Andrew Nguyen

Removed version proto structure

Commit:5e7ee2b
Author:andrewnguyen22
Committer:Andrew Nguyen

implemented proto wrappers, fixed proto tests, fixed broken wire types, implemented protomarshaler for needed structs

Commit:724fce3
Author:andrewnguyen22
Committer:Andrew Nguyen

rid legacy stdtx

Commit:8d08012
Author:andrewnguyen22
Committer:Andrew Nguyen

security patches && legacy messages removed

Commit:d611dab
Author:Otto V
Committer:Andrew Nguyen

Clean Commit With All changes for #1077

Commit:a4881de
Author:andrewnguyen22
Committer:Andrew Nguyen

errors -> sdk.Errors, removed legacy files

This commit does not contain any .proto files.

Commit:a08d243
Author:andrewnguyen22
Committer:Andrew Nguyen

service validation completed

Commit:8939418
Author:andrewnguyen22
Committer:Andrew Nguyen

wip servicing milestone

Commit:8bf794e
Author:Luis de Leon
Committer:Luis de Leon

Added AAT and AATMessage schemas according to specification 0.0.1