Skip to content

Add Network discovery metadata - #28

Open
rchatham wants to merge 1 commit into
feature/network-migration-transport-adaptersfrom
feature/network-migration-discovery-metadata
Open

Add Network discovery metadata#28
rchatham wants to merge 1 commit into
feature/network-migration-transport-adaptersfrom
feature/network-migration-discovery-metadata

Conversation

@rchatham

Copy link
Copy Markdown
Owner

Summary

Adds Bonjour discovery identity metadata for the Network transport stack so discovered Network browser results can map to framework-neutral PeerIdentity values and endpoints.

Changes

  • Add PeerNetworkDiscoveryInfo for TXT record encode/decode.
  • Validate discovery metadata:
    • required identifier/display name/protocol version
    • supported protocol version only
    • non-empty values
    • bounded TXT-record-safe advertised lengths
  • Advertise local peer discovery metadata from NetworkPeerListener.
  • Parse NWBrowser.Result Bonjour metadata in NetworkPeerBrowserTransport.
  • Store PeerIdentity -> NWEndpoint mappings for later invitePeer connection attempts.
  • Ignore self-discovery in the browser adapter.
  • Keep malformed/missing metadata ignored.

Non-goals

  • No public backend selector yet.
  • No default backend change.
  • No trust/auth claim for TXT metadata; it is discovery routing data only.
  • No local simulator loopback integration yet.

Verification

  • swift test — 88 tests passed
  • xcodebuild test -project PeerConnectivity.xcodeproj -scheme PeerConnectivity -destination 'platform=iOS Simulator,name=iPhone 16,OS=18.3.1' -configuration Debug — 88 tests passed

Stack context

Stacked on PR #27 (feature/network-migration-transport-adapters). This is the discovery metadata slice in the Network migration stack.

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.

1 participant