Back to Ruview

ADR-030: RuvSense Persistent Field Model — Longitudinal Drift Detection and Exotic Sensing Tiers

docs/adr/ADR-030-ruvsense-persistent-field-model.md

0.7.017.5 KB
Original Source

ADR-030: RuvSense Persistent Field Model — Longitudinal Drift Detection and Exotic Sensing Tiers

FieldValue
StatusProposed
Date2026-03-02
Decidersruv
CodenameRuvSense Field — Persistent Electromagnetic World Model
Relates toADR-029 (RuvSense Multistatic), ADR-005 (SONA Self-Learning), ADR-024 (AETHER Embeddings), ADR-016 (RuVector Integration), ADR-026 (Survivor Track Lifecycle), ADR-027 (MERIDIAN Generalization)

1. Context

1.1 Beyond Pose Estimation

ADR-029 establishes RuvSense as a sensing-first multistatic mesh achieving 20 Hz DensePose with <30mm jitter. That treats WiFi as a momentary pose estimator. The next leap: treat the electromagnetic field as a persistent world model that remembers, predicts, and explains.

The most exotic capabilities come from this shift in abstraction level:

  • The room is the model, not the person
  • People are structured perturbations to a baseline
  • Changes are deltas from a known state, not raw measurements
  • Time is a first-class dimension — the system remembers days, not frames

1.2 The Seven Capability Tiers

TierCapabilityFoundation
1Field Normal Modes — Room electromagnetic eigenstructureBaseline calibration + SVD
2Coarse RF Tomography — 3D occupancy volume from link attenuationsSparse tomographic inversion
3Intention Lead Signals — Pre-movement prediction (200-500ms lead)Temporal embedding trajectory analysis
4Longitudinal Biomechanics Drift — Personal baseline deviation over daysWelford statistics + HNSW memory
5Cross-Room Continuity — Identity persistence across spaces without opticsEnvironment fingerprinting + transition graph
6Invisible Interaction Layer — Multi-user gesture control through walls/darknessPer-person CSI perturbation classification
7Adversarial Detection — Physically impossible signal identificationMulti-link consistency + field model constraints

1.3 Signals, Not Diagnoses

RF sensing detects biophysical proxies, not medical conditions:

Detectable SignalNot Detectable
Breathing rate variabilityCOPD diagnosis
Gait asymmetry shift (18% over 14 days)Parkinson's disease
Posture instability increaseNeurological condition
Micro-tremor onsetSpecific tremor etiology
Activity level declineDepression or pain diagnosis

The output is: "Your movement symmetry has shifted 18 percent over 14 days." That is actionable without being diagnostic. The evidence chain (stored embeddings, drift statistics, coherence scores) is fully traceable.

1.4 Acceptance Tests

Tier 0 (ADR-029): Two people, 20 Hz, 10 min stable tracks, zero ID swaps, <30mm torso jitter.

Tier 1-4 (this ADR): Seven-day run, no manual tuning. System flags one real environmental change and one real human drift event, produces traceable explanation using stored embeddings plus graph constraints.

Tier 5-7 (appliance): Thirty-day local run, no camera. Detects meaningful drift with <5% false alarm rate.


2. Decision

2.1 Implement Field Normal Modes as the Foundation

Add a field_model module to wifi-densepose-signal/src/ruvsense/ that learns the room's electromagnetic baseline during unoccupied periods and decomposes all subsequent observations into environmental drift + body perturbation.

wifi-densepose-signal/src/ruvsense/
├── mod.rs                // (existing, extend)
├── field_model.rs        // NEW: Field normal mode computation + perturbation extraction
├── tomography.rs         // NEW: Coarse RF tomography from link attenuations
├── longitudinal.rs       // NEW: Personal baseline + drift detection
├── intention.rs          // NEW: Pre-movement lead signal detector
├── cross_room.rs         // NEW: Cross-room identity continuity
├── gesture.rs            // NEW: Gesture classification from CSI perturbations
├── adversarial.rs        // NEW: Physically impossible signal detection
└── (existing files...)

2.2 Core Architecture: The Persistent Field Model

                    Time
                     │
                     ▼
    ┌────────────────────────────────┐
    │     Field Normal Modes (Tier 1) │
    │     Room baseline + SVD modes   │
    │     ruvector-solver             │
    └────────────┬───────────────────┘
                 │ Body perturbation (environmental drift removed)
                 │
         ┌───────┴───────┐
         │               │
         ▼               ▼
    ┌──────────┐   ┌──────────────┐
    │ Pose     │   │ RF Tomography│
    │ (ADR-029)│   │ (Tier 2)     │
    │ 20 Hz    │   │ Occupancy vol│
    └────┬─────┘   └──────────────┘
         │
         ▼
    ┌──────────────────────────────┐
    │  AETHER Embedding (ADR-024)  │
    │  128-dim contrastive vector  │
    └────────────┬─────────────────┘
                 │
         ┌───────┼───────┐
         │       │       │
         ▼       ▼       ▼
    ┌────────┐ ┌─────┐ ┌──────────┐
    │Intention│ │Track│ │Cross-Room│
    │Lead    │ │Re-ID│ │Continuity│
    │(Tier 3)│ │     │ │(Tier 5)  │
    └────────┘ └──┬──┘ └──────────┘
                  │
                  ▼
    ┌──────────────────────────────┐
    │  RuVector Longitudinal Memory │
    │  HNSW + graph + Welford stats│
    │  (Tier 4)                     │
    └──────────────┬───────────────┘
                   │
           ┌───────┴───────┐
           │               │
           ▼               ▼
    ┌──────────────┐ ┌──────────────┐
    │ Drift Reports│ │ Adversarial  │
    │ (Level 1-3)  │ │ Detection    │
    │              │ │ (Tier 7)     │
    └──────────────┘ └──────────────┘

2.3 Field Normal Modes (Tier 1)

What it is: The room's electromagnetic eigenstructure — the stable propagation paths, reflection coefficients, and interference patterns when nobody is present.

How it works:

  1. During quiet periods (empty room, overnight), collect 10 minutes of CSI across all links
  2. Compute per-link baseline (mean CSI vector)
  3. Compute environmental variation modes via SVD (temperature, humidity, time-of-day effects)
  4. Store top-K modes (K=3-5 typically captures >95% of environmental variance)
  5. At runtime: subtract baseline, project out environmental modes, keep body perturbation
rust
pub struct FieldNormalMode {
    pub baseline: Vec<Vec<Complex<f32>>>,      // [n_links × n_subcarriers]
    pub environmental_modes: Vec<Vec<f32>>,    // [n_modes × n_subcarriers]
    pub mode_energies: Vec<f32>,               // eigenvalues
    pub calibrated_at: u64,
    pub geometry_hash: u64,
}

RuVector integration:

  • ruvector-solver → Low-rank SVD for mode extraction
  • ruvector-temporal-tensor → Compressed baseline history storage
  • ruvector-attn-mincut → Identify which subcarriers belong to which mode

2.4 Longitudinal Drift Detection (Tier 4)

The defensible pipeline:

RF → AETHER contrastive embedding
   → RuVector longitudinal memory (HNSW + graph)
     → Coherence-gated drift detection (Welford statistics)
       → Risk flag with traceable evidence

Three monitoring levels:

LevelSignal TypeExample Output
1: PhysiologicalRaw biophysical metrics"Breathing rate: 18.3 BPM today, 7-day avg: 16.1"
2: DriftPersonal baseline deviation"Gait symmetry shifted 18% over 14 days"
3: Risk correlationPattern-matched concern"Pattern consistent with increased fall risk"

Storage model:

rust
pub struct PersonalBaseline {
    pub person_id: PersonId,
    pub gait_symmetry: WelfordStats,
    pub stability_index: WelfordStats,
    pub breathing_regularity: WelfordStats,
    pub micro_tremor: WelfordStats,
    pub activity_level: WelfordStats,
    pub embedding_centroid: Vec<f32>,  // [128]
    pub observation_days: u32,
    pub updated_at: u64,
}

RuVector integration:

  • ruvector-temporal-tensor → Compressed daily summaries (50-75% memory savings)
  • HNSW → Embedding similarity search across longitudinal record
  • ruvector-attention → Per-metric drift significance weighting
  • ruvector-mincut → Temporal segmentation (detect changepoints in metric series)

2.5 Regulatory Classification

ClassificationWhat You ClaimRegulatory Path
Consumer wellness (recommended first)Activity metrics, breathing rate, stability scoreSelf-certification, FCC Part 15
Clinical decision support (future)Fall risk alert, respiratory pattern concernFDA Class II 510(k) or De Novo
Regulated medical device (requires clinical partner)Diagnostic claims for specific conditionsFDA Class II/III + clinical trials

Decision: Start as consumer wellness. Build 12+ months of real-world longitudinal data. The dataset itself becomes the asset for future regulatory submissions.


3. Appliance Product Categories

3.1 Invisible Guardian

Wall-mounted wellness monitor for elderly care and independent living. No camera, no microphone, no reconstructable data. Stores embeddings and structural deltas only.

SpecValue
Nodes4 ESP32-S3 pucks per room
ProcessingCentral hub (RPi 5 or x86)
PowerPoE or USB-C
OutputRisk flags, drift alerts, occupancy timeline
BOM$73-91 (ESP32 mesh) + $35-80 (hub)
Validation30-day autonomous run, <5% false alarm rate

3.2 Spatial Digital Twin Node

Live electromagnetic room model for smart buildings and workplace analytics.

SpecValue
OutputOccupancy heatmap, flow vectors, dwell time, anomaly events
IntegrationMQTT/REST API for BMS and CAFM
Retention30-day rolling, GDPR-compliant
VerticalSmart buildings, retail, workspace optimization

3.3 RF Interaction Surface

Multi-user gesture interface. No cameras. Works in darkness, smoke, through clothing.

SpecValue
GesturesWave, point, beckon, push, circle + custom
UsersUp to 4 simultaneous
Latency<100ms gesture recognition
VerticalSmart home, hospitality, accessibility

3.4 Pre-Incident Drift Monitor

Longitudinal biomechanics tracker for rehabilitation and occupational health.

SpecValue
Baseline7-day calibration per person
AlertMetric drift >2sigma for >3 days
EvidenceStored embedding trajectory + statistical report
VerticalElderly care, rehab, occupational health

3.5 Vertical Recommendation for First Hardware SKU

Invisible Guardian — the elderly care wellness monitor. Rationale:

  1. Largest addressable market with immediate revenue (aging population, care facility demand)
  2. Lowest regulatory bar (consumer wellness, no diagnostic claims)
  3. Privacy advantage over cameras is a selling point, not a limitation
  4. 30-day autonomous operation validates all tiers (field model, drift detection, coherence gating)
  5. $108-171 BOM allows $299-499 retail with healthy margins

4. RuVector Integration Map (Extended)

All five crates are exercised across the exotic tiers:

TierCrateAPIRole
1 (Field)ruvector-solverNeumannSolver + SVDEnvironmental mode decomposition
1 (Field)ruvector-temporal-tensorTemporalTensorCompressorBaseline history storage
1 (Field)ruvector-attn-mincutattn_mincutMode-subcarrier assignment
2 (Tomo)ruvector-solverNeumannSolver (L1)Sparse tomographic inversion
3 (Intent)ruvector-attentionScaledDotProductAttentionTemporal trajectory weighting
3 (Intent)ruvector-temporal-tensorCompressedCsiBuffer2-second embedding history
4 (Drift)ruvector-temporal-tensorTemporalTensorCompressorDaily summary compression
4 (Drift)ruvector-attentionScaledDotProductAttentionMetric drift significance
4 (Drift)ruvector-mincutDynamicMinCutTemporal changepoint detection
5 (Cross-Room)ruvector-attentionHNSWRoom and person fingerprint matching
5 (Cross-Room)ruvector-mincutMinCutBuilderTransition graph partitioning
6 (Gesture)ruvector-attentionScaledDotProductAttentionGesture template matching
7 (Adversarial)ruvector-solverNeumannSolverPhysical plausibility verification
7 (Adversarial)ruvector-attn-mincutattn_mincutMulti-link consistency check

5. Implementation Priority

PriorityTierModuleWeeksDependency
P01field_model.rs2ADR-029 multistatic mesh operational
P04longitudinal.rs2Tier 1 baseline + AETHER embeddings
P12tomography.rs1Tier 1 perturbation extraction
P13intention.rs2Tier 1 + temporal embedding history
P25cross_room.rs2Tier 4 person profiles + multi-room deployment
P26gesture.rs1Tier 1 perturbation + per-person separation
P37adversarial.rs1Tier 1 field model + multi-link consistency

Total exotic tier: ~11 weeks after ADR-029 acceptance test passes.


6. Consequences

6.1 Positive

  • Room becomes self-sensing: Field normal modes provide a persistent baseline that explains change as structured deltas
  • 7-day autonomous operation: Coherence gating + SONA adaptation + longitudinal memory eliminate manual tuning
  • Privacy by design: No images, no audio, no reconstructable data — only embeddings and statistical summaries
  • Traceable evidence: Every drift alert links to stored embeddings, timestamps, and graph constraints
  • Multiple product categories: Same software stack, different packaging — Guardian, Twin, Interaction, Drift Monitor
  • Regulatory clarity: Consumer wellness first, clinical decision support later with accumulated dataset
  • Security primitive: Coherence gating detects adversarial injection, not just quality issues

6.2 Negative

  • 7-day calibration required for personal baselines (system is less useful during initial period)
  • Empty-room calibration needed for field normal modes (may not always be available)
  • Storage growth: Longitudinal memory grows ~1 KB/person/day (manageable but non-zero)
  • Statistical power: Drift detection requires 14+ days of data for meaningful z-scores
  • Multi-room: Cross-room continuity requires hardware in all rooms (cost scales linearly)

6.3 Risks

RiskProbabilityImpactMitigation
Field modes drift faster than expectedMediumFalse perturbation detectionsReduce mode update interval from 24h to 4h
Personal baselines too variableMediumHigh false alarm rate for driftWiden sigma threshold from 2σ to 3σ; require 5+ days
Cross-room matching fails for similar body typesLowIdentity confusionRequire temporal proximity (<60s) plus spatial adjacency
Gesture recognition insufficient SNRMedium<80% accuracyRestrict to near-field (<2m) initially
Adversarial injection via coordinated WiFi injectionVery LowSpoofed occupancyMulti-link consistency check makes single-link spoofing detectable

ADRRelationship
ADR-029Prerequisite: Multistatic mesh is the sensing substrate for all exotic tiers
ADR-005 (SONA)Extended: SONA recalibration triggered by coherence gate → now also by drift events
ADR-016 (RuVector)Extended: All 5 crates exercised across 7 exotic tiers
ADR-024 (AETHER)Critical dependency: Embeddings are the representation for all longitudinal memory
ADR-026 (Tracking)Extended: Track lifecycle now spans days (not minutes) for drift detection
ADR-027 (MERIDIAN)Used: Room geometry encoding for field normal mode conditioning

8. References

  1. IEEE 802.11bf-2024. "WLAN Sensing." IEEE Standards Association.
  2. FDA. "General Wellness: Policy for Low Risk Devices." Guidance Document, 2019.
  3. EU MDR 2017/745. "Medical Device Regulation." Official Journal of the European Union.
  4. Welford, B.P. (1962). "Note on a Method for Calculating Corrected Sums of Squares." Technometrics.
  5. Chen, L. et al. (2026). "PerceptAlign: Geometry-Aware WiFi Sensing." arXiv:2601.12252.
  6. AM-FM (2026). "A Foundation Model for Ambient Intelligence Through WiFi." arXiv:2602.11200.
  7. Geng, J. et al. (2023). "DensePose From WiFi." arXiv:2301.00250.