“Registration workflow : Action SDK ✚ Supernode Service #40
“Registration workflow : Action SDK ✚ Supernode Service #40mateeullahmalik merged 38 commits intomasterfrom
Conversation
* code refactor
* use rq lib, refactor code
Update/cascade test
There was a problem hiding this comment.
Pull Request Overview
This PR implements the registration workflow improvements by adding a new Action SDK and integrating Supernode Service support. Key changes include:
- A new RaptorQ codec in pkg/codec for encoding files with temporary file handling.
- Enhancements to P2P and Kademlia modules with adjustments to networking constants and bootstrap logic.
- Updates to CI workflows and various auto-generated protobuf files.
Reviewed Changes
Copilot reviewed 136 out of 139 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/codec/raptorq.go | Implements the new RaptorQ codec and temporary file handling in the encode process. |
| pkg/codec/codec.go | Introduces basic codec definitions and protobuf schema structures. |
| p2p/kademlia/hashtable.go | Adjusts the Alpha constant from 6 to 3, potentially affecting network call parallelism. |
| p2p/kademlia/dht.go | Adds a new NodesLen method and logging improvements; includes a change in logging field names. |
| p2p/kademlia/bootstrap.go | Updates bootstrap node parsing and adds a debug print for node addition using fmt.Println. |
| main.go | Sets up a new main function with improved context and graceful shutdown support. |
| .github/workflows/tests.yml | Uncomments and standardizes CI workflow configuration for tests. |
| (various generated proto files) | Regenerates and updates protobuf definitions across the project. |
Files not reviewed (3)
- .vscode/launch.json: Language not supported
- Makefile: Language not supported
- go.mod: Language not supported
fixes , clean up
fix unit-tests and integration-tests + minor bugs
* Fixes * Add txID
SDK Unit Tests
* Use integration ENV var
There was a problem hiding this comment.
Pull Request Overview
This PR enhances the registration workflow by extending the Action SDK and integrating new modules (Auth and ActionMsg) into the Supernode Service. Key changes include updates to the Lumera client interface and configuration (e.g. timeout type and key name), new module initializations in the client, modifications to the DHT and bootstrap logic in the P2P layer, and updates to gRPC service definitions and build scripts.
Reviewed Changes
Copilot reviewed 132 out of 132 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/lumera/interface.go | Added new Auth() and ActionMsg() methods to the client interface. |
| pkg/lumera/config.go | Updated Timeout from int to time.Duration; added KeyName configuration field. |
| pkg/lumera/client.go | Integrated new module initializations and corresponding getters. |
| pkg/log/context.go | Removed stale imports and modified external IP retrieval logic. |
| pkg/keyring/keyring.go | Added a new helper function SignBytes for byte array signing. |
| pkg/codec/raptorq.go | Introduced RaptorQ encoding logic with temporary file handling. |
| p2p/p2p.go | Updated logging and error flows in the P2P run function. |
| p2p/kademlia/*.go | Adjusted batching, logging, and DHT bootstrap logic for improved determinism. |
| gen/supernode/action/cascade/*.go | Updated gRPC generated code to reflect the new registration workflow API. |
| Makefile & .github/* | Added tasks and workflows for cascade generation and supernode system testing. |
| .vscode/launch.json | Updated launch configurations for debugging and system tests. |
No description provided.