Skip to content

Feat/control packet Implement control packet handling for mesh node discovery#19

Merged
rightup merged 8 commits intodevfrom
feat/controlPacket
Nov 27, 2025
Merged

Feat/control packet Implement control packet handling for mesh node discovery#19
rightup merged 8 commits intodevfrom
feat/controlPacket

Conversation

@rightup
Copy link
Owner

@rightup rightup commented Nov 27, 2025

Implement control packet handling for mesh node discovery

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements control packet handling for mesh node discovery, adding a new packet type (0x0B CONTROL) and handler infrastructure to enable nodes to discover each other on the mesh network via zero-hop broadcast packets.

Key Changes:

  • Added PAYLOAD_TYPE_CONTROL (0x0B) constant and corresponding packet type mapping
  • Implemented ControlHandler for processing discovery request and response packets
  • Added create_discovery_request() and create_discovery_response() methods to PacketBuilder
  • Provided two example scripts demonstrating discovery functionality

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 12 comments.

Show a summary per file
File Description
src/pymc_core/protocol/constants.py Added CONTROL (0x0B) and MULTIPART (0x0A) payload type constants
src/pymc_core/protocol/utils.py Added string mappings for CONTROL and MULTIPART packet types
src/pymc_core/protocol/packet_builder.py Implemented discovery request/response packet creation methods with proper encoding
src/pymc_core/node/handlers/control.py New handler for processing control packets with callback-based discovery response collection
src/pymc_core/node/handlers/__init__.py Exported ControlHandler for use by other modules
src/pymc_core/node/dispatcher.py Registered ControlHandler as default handler for CONTROL packet type
examples/discover_nodes.py Example demonstrating how to send discovery requests and collect responses
examples/respond_to_discovery.py Example demonstrating how to listen for and respond to discovery requests

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

rightup and others added 5 commits November 27, 2025 21:01
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@rightup rightup merged commit 7cfebd4 into dev Nov 27, 2025
@rightup rightup deleted the feat/controlPacket branch November 27, 2025 21:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants