Skip to content

feat: add native macOS CoreWLAN Wi-Fi source#191

Open
AIflow-Labs wants to merge 1 commit into
ruvnet:mainfrom
AIflow-Labs:codex/macos-native-wifi
Open

feat: add native macOS CoreWLAN Wi-Fi source#191
AIflow-Labs wants to merge 1 commit into
ruvnet:mainfrom
AIflow-Labs:codex/macos-native-wifi

Conversation

@AIflow-Labs
Copy link
Copy Markdown

Summary

This finishes the native macOS path discussed in #56 and ADR-025.

It adds a real CoreWLAN-backed Wi-Fi source for sensing-server --source wifi on macOS instead of falling back silently.

What changed

  • add the canonical Swift helper at tools/macos-wifi-scan/main.swift
  • add a reproducible helper build script and helper discovery via RUVIEW_MAC_WIFI_HELPER
  • implement a typed macOS scanner in wifi-densepose-wifiscan
  • wire macOS probing, auto-detection, and the native Wi-Fi task in sensing-server
  • document the macOS path honestly as RSSI/scan-based sensing for presence/coarse motion, not CSI parity

Notes

  • no compiled helper binaries are committed
  • native macOS observations are labeled wifi:<ssid> when available, otherwise wifi:macos
  • explicit --source wifi now returns a clear macOS-specific error when the helper/Wi-Fi path is unavailable instead of silently simulating

Verification

  • cargo test --workspace
  • cargo test --workspace --no-default-features
  • cargo test -p wifi-densepose-wifiscan -p wifi-densepose-sensing-server
  • ./scripts/build-mac-wifi.sh
  • rust-port/wifi-densepose-rs/target/tools/macos-wifi-scan/macos-wifi-scan --probe
  • rust-port/wifi-densepose-rs/target/tools/macos-wifi-scan/macos-wifi-scan --scan-once
  • manual macOS run of cargo run -p wifi-densepose-sensing-server -- --source wifi ...
  • API smoke check returned live wifi:macos data with non-zero BSSID observations on macOS

Addresses #56.

@ruvnet
Copy link
Copy Markdown
Owner

ruvnet commented May 17, 2026

Hi @AIflow-Labs — both this PR and #192 (your small follow-up) touch the same set of CHANGELOG/README/ADR-025 files plus the macOS sources. To land cleanly against current main:

  1. Rebase this PR against current main (the CHANGELOG and the wifi-densepose-wifiscan crate have both moved since this opened).
  2. After this lands, feat: add explicit macOS Wi-Fi bridge source #192 should automatically resolve since it's the small follow-up. If you prefer, squash both into one PR — the README + ADR changes are very similar between them and you might end up with the same diff either way.

Architecturally, native CoreWLAN scan + explicit bridge source is exactly the right shape — primary path is the in-process scanner, with the helper-driven bridge as the opt-in fallback. Once rebased I'll do a focused review.

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.

3 participants