Merged
Conversation
Enable Pprof
* prepare decode * Test Fixes
Add profile script
Disable metrics
Contributor
There was a problem hiding this comment.
Pull Request Overview
This pull request implements an Action SDK update with substantial refactoring across the supernode codebase. The main purpose is to consolidate cascade operation utilities, upgrade mocking frameworks, and reduce verbose logging throughout the system.
Key changes include:
- Consolidation of cascade metadata and signature handling into a centralized
pkg/cascadekitpackage - Migration from
go.uber.org/mock/gomocktogithub.com/golang/mock/gomock - Extensive logging level changes from Info to Debug to reduce noise
Reviewed Changes
Copilot reviewed 120 out of 124 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/system/system.go | Adds log noise filter for IAVL storage upgrade messages |
| tests/system/signature_utils.go | Removes wrapper functions, functionality moved to cascadekit |
| tests/system/go.mod | Updates dependency versions and adds new indirect dependencies |
| tests/system/e2e_cascade_test.go | Major refactor to use new SDK helpers for cascade operations |
| tests/integration/p2p/p2p_integration_test.go | Adds comment about disabling metrics in integration tests |
| supernode/services/verifier/verifier.go | Changes config verification completion log to Debug level |
| supernode/services/common/supernode/types.go | Removes detailed per-request metrics from public API types |
| supernode/services/common/supernode/service.go | Removes detailed P2P metrics mapping from status response |
| supernode/services/common/storage/handler.go | Changes log levels to Debug and removes metrics context tagging |
| supernode/services/common/base/supernode_task.go | Changes task cancellation log to Debug level |
| supernode/services/common/base/supernode_service.go | Changes service completion log to Debug level |
| supernode/services/cascade/service_test.go | Updates mock import from uber to golang |
| supernode/services/cascade/register_test.go | Updates mock import from uber to golang |
| supernode/services/cascade/register.go | Major refactor to use cascadekit helpers and improve logging |
| supernode/services/cascade/mocks/cascade_interfaces_mock.go | Regenerated mock with golang/mock framework |
| supernode/services/cascade/metadata_test.go | Removes test file, functionality moved to cascadekit |
| supernode/services/cascade/metadata.go | Removes implementation, functionality moved to cascadekit |
| supernode/services/cascade/helper_test.go | Removes test file, functionality moved to cascadekit |
| supernode/services/cascade/helper.go | Major refactor using cascadekit and removing legacy functions |
| supernode/services/cascade/download.go | Significant refactor with improved authorization and cascadekit usage |
| supernode/services/cascade/adaptors/rq.go | Adds PrepareDecode method and fixes response field name |
| supernode/services/cascade/adaptors/p2p.go | Removes metrics collection and improves logging detail |
| supernode/services/cascade/adaptors/mocks/rq_mock.go | Regenerated mock with golang/mock and new PrepareDecode method |
| supernode/services/cascade/adaptors/mocks/p2p_mock.go | Regenerated mock with golang/mock framework |
| supernode/services/cascade/adaptors/mocks/lumera_mock.go | Regenerated mock with golang/mock framework |
| supernode/node/supernode/server/status_server.go | Removes detailed P2P metrics from protobuf response mapping |
| supernode/node/supernode/server/server.go | Changes server startup logs to Debug level |
| supernode/node/supernode/gateway/server.go | Changes HTTP gateway logs to Debug level |
| supernode/node/action/server/cascade/cascade_action_server_test.go | Updates mock import from uber to golang |
| supernode/node/action/server/cascade/cascade_action_server.go | Improves download flow with authorization and pre-read chunking |
| supernode/cmd/supernode.go | Changes various startup logs to Debug level |
| supernode/cmd/start.go | Adds profiling server for testnet and Datadog configuration |
| supernode/cmd/service.go | Changes service stop log to Debug level |
| sdk/task/task.go | Adds balance checks and peer connectivity validation for supernodes |
| sdk/task/manager.go | Removes redundant peer connectivity preflight checks |
| sdk/task/helpers.go | Removes peer connectivity validation, now handled in discovery |
| sdk/task/download.go | Removes supernode ranking by memory availability |
| sdk/net/impl.go | Updates return type for GetSupernodeStatus method |
| sdk/net/factory.go | Increases gRPC message size limits and window sizes |
| sdk/net/client.go | Updates interface for GetSupernodeStatus method |
| sdk/event/keys.go | Removes legacy cascade storage/retrieve metrics keys |
| sdk/adapters/supernodeservice/types.go | Simplifies types to use generated protobuf directly |
| sdk/adapters/supernodeservice/options.go | Removes P2P metrics context options file |
| sdk/adapters/supernodeservice/adapter.go | Removes metrics parsing and uses protobuf types directly |
| sdk/adapters/lumera/adapter.go | Adds GetBalance, GetActionParams, and GetActionFee methods |
| sdk/action/client.go | Adds high-level cascade metadata building and signature helpers |
| sdk/README.md | Updates documentation with new cascade end-to-end workflow |
| proto/supernode/status.proto | Removes detailed per-request metrics from protobuf definition |
| proto/supernode/service.proto | Separates service definitions into dedicated file |
| proto/proto.go | Removes unused constants file |
| profile_cascade.sh | Adds heap profiling script for cascade downloads |
| pkg/testutil/lumera.go | Adds mock bank module with positive balance responses |
| pkg/storage/queries/ | Multiple files changing log levels from Info to Debug |
| pkg/p2pmetrics/metrics.go | Removes entire metrics collection system |
| pkg/net/interceptor.go | Changes gRPC request logging to Debug level |
| pkg/net/grpc/server/ | Updates default server options and changes logs to Debug |
| pkg/net/grpc/client/ | Updates default client options with larger window sizes |
| pkg/lumera/modules/tx/impl.go | Removes transaction polling and improves validation |
| pkg/lumera/modules/bank/ | Adds new bank module for balance queries |
| pkg/lumera/modules/auth/impl.go | Changes signature verification logs to Debug |
| pkg/lumera/ | Updates client with bank module and chain ID verification |
| pkg/logtrace/ | Adds Datadog forwarding and context helpers for correlation/origin |
| pkg/dd/ | Changes status and image rareness logs to Debug level |
| pkg/common/task/ | Changes various task lifecycle logs to Debug level |
| pkg/codec/ | Improves RaptorQ decode with prepared workspace and better error handling |
| pkg/cascadekit/ | New package consolidating all cascade-related utilities and helpers |
| pkg/cascade/signature.go | Removes file, functionality moved to cascadekit |
| p2p/ | Multiple files changing worker and replication logs to Debug level |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
a-ok123
requested changes
Oct 4, 2025
fab9006 to
b72c98a
Compare
9c69078 to
4967020
Compare
a-ok123
approved these changes
Oct 6, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
No description provided.