Invalid subtree processing decreases peer reputation #221
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces support for reporting invalid subtrees in the P2P service, along with refactoring and test coverage improvements. The main changes include adding a
ReportInvalidSubtreemethod to the P2P client and interface, implementing the corresponding gRPC handler and server logic, updating tests to cover these new code paths, and making minor refactors to method names for consistency. Additionally, there are updates to generated protobuf files to match a previous protoc compiler version.P2P Service Enhancements:
ReportInvalidSubtreemethod to the P2P client (Client.go) and interface (Interface.go), allowing clients to report subtrees that failed validation, which decreases the reputation score of the peer that provided them. [1] [2]ReportInvalidSubtreein test client and updated related tests to ensure proper coverage and behavior. [1] [2]ReportInvalidSubtreeand corresponding integration test to verify correct updates to peer metrics.reportInvalidSubtreemethod, improving clarity and error handling, and updated all usages and tests accordingly. [1] [2] [3]Protobuf and Generated Code Updates:
Test and Code Consistency Improvements:
ReportValidSubtreeHandlerandreportInvalidSubtree) for clarity and consistency. [1] [2] [3] [4]These changes improve the robustness of the P2P reputation system by allowing explicit reporting and handling of invalid subtrees, and ensure the codebase and tests remain consistent and up-to-date.