feat: Training mode, ADR docs, vitals and wifiscan crates
- Add --train CLI flag with dataset loading, graph transformer training, cosine-scheduled SGD, PCK/OKS validation, and checkpoint saving - Refactor main.rs to import training modules from lib.rs instead of duplicating mod declarations - Add ADR-021 (vital sign detection), ADR-022 (Windows WiFi enhanced fidelity), ADR-023 (trained DensePose pipeline) documentation - Add wifi-densepose-vitals crate: breathing, heartrate, anomaly detection, preprocessor, and temporal store - Add wifi-densepose-wifiscan crate: 8-stage signal intelligence pipeline with netsh/wlanapi adapters, multi-BSSID registry, attention weighting, spatial correlation, and breathing extraction Co-Authored-By: claude-flow <ruv@ruv.net>
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
//! Port definitions for the BSSID Acquisition bounded context.
|
||||
//!
|
||||
//! Hexagonal-architecture ports that abstract the WiFi scanning backend,
|
||||
//! enabling Tier 1 (netsh), Tier 2 (wlanapi FFI), and test-double adapters
|
||||
//! to be swapped transparently.
|
||||
|
||||
mod scan_port;
|
||||
|
||||
pub use scan_port::WlanScanPort;
|
||||
@@ -0,0 +1,17 @@
|
||||
//! The primary port (driving side) for WiFi BSSID scanning.
|
||||
|
||||
use crate::domain::bssid::BssidObservation;
|
||||
use crate::error::WifiScanError;
|
||||
|
||||
/// Port that abstracts the platform WiFi scanning backend.
|
||||
///
|
||||
/// Implementations include:
|
||||
/// - [`crate::adapter::NetshBssidScanner`] -- Tier 1, subprocess-based.
|
||||
/// - Future: `WlanApiBssidScanner` -- Tier 2, native FFI (feature-gated).
|
||||
pub trait WlanScanPort: Send + Sync {
|
||||
/// Perform a scan and return all currently visible BSSIDs.
|
||||
fn scan(&self) -> Result<Vec<BssidObservation>, WifiScanError>;
|
||||
|
||||
/// Return the BSSID to which the adapter is currently connected, if any.
|
||||
fn connected(&self) -> Result<Option<BssidObservation>, WifiScanError>;
|
||||
}
|
||||
Reference in New Issue
Block a user