ruv
7df316f13e
docs: make README screenshot clickable, links to live demo
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-05 10:45:53 -05:00
rUv
bf4d64ad4b
docs: add live Observatory demo link to README ( #145 )
2026-03-05 10:39:58 -05:00
ruv
8b57a6f64c
docs: update README with ADR-045–048, Observatory, adaptive classifier, AMOLED display
...
- Update ADR count from 44 to 48
- Add adaptive classifier (ADR-048) to Intelligence features
- Add Observatory visualization (ADR-047) and AMOLED display (ADR-045) to Deployment features
- Update screenshot to v2-screen.png
- Add ADR-045 (AMOLED), ADR-046 (Android TV), ADR-047 (Observatory), DDD deployment model
- Add AMOLED display firmware (display_hal, display_task, display_ui, LVGL config)
- Add Observatory UI (13 Three.js modules, CSS, HTML entry point)
- Add trained adaptive model JSON
- Update .gitignore for managed_components, recordings, .swarm
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-05 10:20:48 -05:00
ruv
57141ff707
Update README hero image to ruview-small-gemini
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-04 10:37:42 -05:00
ruv
6fea56c4a9
Add RuView hero image to top of README
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-04 10:19:41 -05:00
rUv
da7105d599
Update README.md
2026-03-03 21:17:37 -05:00
rUv
749007d708
Update README.md
2026-03-03 21:17:08 -05:00
ruv
2ad510782e
docs: add 4 DDD domain models covering all major subsystems
...
Create complete Domain-Driven Design specifications for:
- Signal Processing (3 contexts: CSI Preprocessing, Feature Extraction, Motion Analysis)
- Training Pipeline (4 contexts: Dataset Management, Model Architecture, Training Orchestration, Embedding & Transfer)
- Hardware Platform (5 contexts: Sensor Node, Edge Processing, WASM Runtime, Aggregation, Provisioning)
- Sensing Server (5 contexts: CSI Ingestion, Model Management, CSI Recording, Training Pipeline, Visualization)
Update DDD index (3 → 7 models) and README docs table.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 17:39:57 -05:00
ruv
8658cc3de0
docs: improve RuvSense domain model and add DDD index
...
- Add intro explaining DDD purpose and bounded context overview table
- Add Edge Intelligence bounded context (#7 ) for on-device sensing
- Add ubiquitous language terms: Edge Tier, WASM Module
- Fix frame rate 20 Hz -> 28 Hz (measured on hardware)
- Link each context to its source files and ADRs
- Add NVS configuration table and invariants for edge processing
- Create docs/ddd/README.md introducing all 3 domain models
- Update main README docs table to link to DDD index
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 17:02:39 -05:00
ruv
2e9b34ec9a
docs: remove WiFi-Mat User Guide from docs table
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:58:39 -05:00
ruv
3eb8444f73
docs: link Architecture Decisions to ADR README index
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:58:12 -05:00
ruv
cd7b914580
docs: add Fully Local feature to Key Features table
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:53:25 -05:00
ruv
6d799c2917
docs: move server-optional note below screenshot
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:42:54 -05:00
ruv
d00b733c99
docs: link edge modules to Edge Intelligence section
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:40:03 -05:00
ruv
90b5beb1d4
docs: add "No Internet" to README tagline
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:38:07 -05:00
ruv
b5af3bc528
docs: mention edge modules in README intro
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:36:11 -05:00
ruv
7e43edf26a
docs: add ADR index with intro on ADRs for AI-assisted development
...
Explains why ADRs matter for AI-generated code (prevents drift,
provides constraints and rationale), how they work with DDD domain
models, and indexes all 44 ADRs by category.
Also fixes ADR count 43 -> 44 in main README.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:35:17 -05:00
ruv
a7fe8b6799
docs: rewrite ESP32 hardware pipeline section with accurate metrics
...
- Fix binary size 777KB -> 947KB, frame rate 20Hz -> 28.5Hz
- Fix flash command: write_flash (not write-flash), 8MB (not 4MB)
- Add multi-node mesh provisioning with TDM examples
- Add Tier 3 WASM modules row
- Add fine-tuning provisioning flags (--vital-int, --fall-thresh, etc.)
- Plain-language descriptions throughout
- Note server is optional, ESP32 works standalone
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:28:07 -05:00
ruv
c2e6546159
docs: move ESP32 independent operation note to hardware section
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:25:21 -05:00
ruv
f953a309fe
docs: mention ESP32 independent operation in README intro
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 16:24:06 -05:00
rUv
86f08303e6
docs: update changelog, user guide, and README for ADR-043 ( #128 )
...
- CHANGELOG: add ADR-043 entries (14 new API endpoints, WebSocket fix,
mobile WS fix, 25 real mobile tests)
- README: update ADR count from 41 to 43
- CLAUDE.md: update ADR count from 32 to 43
- User guide: add 14 new REST endpoints to API reference table, note
that /ws/sensing is available on the HTTP port, update ADR count
2026-03-03 15:21:52 -05:00
ruv
977da0f28e
docs: link edge module categories to docs/edge-modules/ guides
...
Replace 48 ADR-041 anchor links with direct links to the 12
category-specific documentation files in docs/edge-modules/.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 11:59:21 -05:00
ruv
e94c7056f2
feat: add ADR-042 CHCI protocol, 24 new edge modules, README restructure
...
- ADR-042: Coherent Human Channel Imaging (non-CSI sensing protocol)
with DDD domain model (6 bounded contexts)
- 24 new WASM edge modules: medical (5), retail (5), security (5),
building (5), industrial (5), exotic (8)
- README: plain-language rewrites, moved detail sections below TOC,
added edge module links to use case tables, firmware release docs
- User guide: firmware release table, edge intelligence documentation
- .gitignore: added rules for wasm, esp32 temp files, NVS binaries
- WASM edge crate: cargo config, integration tests, module registry
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-03 11:35:57 -05:00
ruv
086b0e690f
docs: update README with v0.2.0-esp32 release link and provision.py path
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-02 19:25:43 -05:00
ruv
51140f599f
fix: update image references and remove obsolete screenshots
2026-03-02 11:11:58 -05:00
ruv
6a408b30e8
Refactor code structure for improved readability and maintainability
2026-03-02 11:07:41 -05:00
ruv
135d7d3d8c
docs: add live pose detection screenshot to README
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-02 11:00:02 -05:00
ruv
4e925dba50
docs: update README with QUIC mesh security, CRV ADR-033 link, v0.3.0 changelog
...
- Add QUIC Mesh Security row to feature table (ADR-032)
- Fix Signal-Line Protocol link to ADR-033
- Update v3.1.0 changelog with ADR-032/032a, temporal gesture, attractor drift
- Update line counts (28K+ lines, 400+ tests, 15 crates published)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-02 09:36:54 -05:00
ruv
0c01157e36
feat: ADR-032a midstreamer QUIC transport + secure TDM + temporal gesture + attractor drift
...
Integrate midstreamer ecosystem for QUIC-secured mesh transport and
advanced signal analysis:
QUIC Transport (hardware crate):
- quic_transport.rs: SecurityMode (ManualCrypto/QuicTransport), FramedMessage
wire format, connection management, fallback support (856 lines, 30 tests)
- secure_tdm.rs: ReplayWindow, AuthenticatedBeacon (28-byte HMAC format),
SecureTdmCoordinator with dual-mode security (994 lines, 20 tests)
- transport_bench.rs: Criterion benchmarks (plain vs authenticated vs QUIC)
Signal Analysis (signal crate):
- temporal_gesture.rs: DTW/LCS/EditDistance gesture matching via
midstreamer-temporal-compare, quantized feature comparison (517 lines, 13 tests)
- attractor_drift.rs: Takens' theorem phase-space embedding, Lyapunov exponent
classification (Stable/Periodic/Chaotic) via midstreamer-attractor (573 lines, 13 tests)
ADR-032 updated with Section 6: QUIC Transport Layer (ADR-032a)
README updated with CRV signal-line section, badge 1100+, ADR count 33
Dependencies: midstreamer-quic 0.1.0, midstreamer-scheduler 0.1.0,
midstreamer-temporal-compare 0.1.0, midstreamer-attractor 0.1.0
Total: 3,136 new lines, 76 tests, 6 benchmarks
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 22:22:19 -05:00
ruv
37b54d649b
feat: implement ADR-029/030/031 — RuvSense multistatic sensing + field model + RuView fusion
...
12,126 lines of new Rust code across 22 modules with 285 tests:
ADR-029 RuvSense Core (signal crate, 10 modules):
- multiband.rs: Multi-band CSI frame fusion from channel hopping
- phase_align.rs: Cross-channel LO phase rotation correction
- multistatic.rs: Attention-weighted cross-node viewpoint fusion
- coherence.rs: Z-score per-subcarrier coherence scoring
- coherence_gate.rs: Accept/PredictOnly/Reject/Recalibrate gating
- pose_tracker.rs: 17-keypoint Kalman tracker with re-ID
- mod.rs: Pipeline orchestrator
ADR-030 Persistent Field Model (signal crate, 7 modules):
- field_model.rs: SVD-based room eigenstructure, Welford stats
- tomography.rs: Coarse RF tomography from link attenuations (ISTA)
- longitudinal.rs: Personal baseline drift detection over days
- intention.rs: Pre-movement prediction (200-500ms lead signals)
- cross_room.rs: Cross-room identity continuity
- gesture.rs: Gesture classification via DTW template matching
- adversarial.rs: Physically impossible signal detection
ADR-031 RuView (ruvector crate, 5 modules):
- attention.rs: Scaled dot-product with geometric bias
- geometry.rs: Geometric Diversity Index, Cramer-Rao bounds
- coherence.rs: Phase phasor coherence gating
- fusion.rs: MultistaticArray aggregate, fusion orchestrator
- mod.rs: Module exports
Training & Hardware:
- ruview_metrics.rs: 3-metric acceptance test (PCK/OKS, MOTA, vitals)
- esp32/tdm.rs: TDM sensing protocol, sync beacons, drift compensation
- Firmware: channel hopping, NDP injection, NVS config extensions
Security fixes:
- field_model.rs: saturating_sub prevents timestamp underflow
- longitudinal.rs: FIFO eviction note for bounded buffer
README updated with RuvSense section, new feature badges, changelog v3.1.0.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 21:39:02 -05:00
ruv
9c759f26db
docs: add ADR-028 audit overview to README + collapsed section
...
- New collapsed section before Installation linking to witness log,
ADR-028, and bundle generator
- Shows test counts, proof hash, and 3-command verification steps
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 15:54:14 -05:00
ruv
96b01008f7
docs: fix broken README links and add MERIDIAN details section
...
- Fix 5 broken anchor links → direct ADR doc paths (ADR-024, ADR-027, RuVector)
- Add full <details> section for Cross-Environment Generalization (ADR-027)
matching the existing ADR-024 section pattern
- Add Project MERIDIAN to v3.0.0 changelog
- Update training pipeline 8-phase → 10-phase in changelog
- Update test count 542+ → 700+ in changelog
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 12:54:41 -05:00
ruv
2d6dc66f7c
docs: update README, CHANGELOG, and associated ADRs for MERIDIAN
...
- CHANGELOG: add MERIDIAN (ADR-027) to Unreleased section
- README: add "Works Everywhere" to Intelligence features, update How It Works
- ADR-002: status → Superseded by ADR-016/017
- ADR-004: status → Partially realized by ADR-024, extended by ADR-027
- ADR-005: status → Partially realized by ADR-023, extended by ADR-027
- ADR-006: status → Partially realized by ADR-023, extended by ADR-027
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 12:06:09 -05:00
ruv
fdd2b2a486
feat: ADR-027 Project MERIDIAN — Cross-Environment Domain Generalization
...
Deep SOTA research into WiFi sensing domain gap problem (2024-2026).
Proposes 7-phase implementation: hardware normalization, domain-adversarial
training with gradient reversal, geometry-conditioned FiLM inference,
virtual environment augmentation, few-shot rapid adaptation, and
cross-domain evaluation protocol.
Cites 10 papers: PerceptAlign, AdaPose, Person-in-WiFi 3D (CVPR 2024),
DGSense, CAPC, X-Fi (ICLR 2025), AM-FM, LatentCSI, Ganin GRL, FiLM.
Addresses the single biggest deployment blocker: models trained in one
room lose 40-70% accuracy in another room. MERIDIAN adds ~12K params
(67K total, still fits ESP32) for cross-layout + cross-hardware
generalization with zero-shot and few-shot adaptation paths.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:49:16 -05:00
ruv
d8fd5f4eba
docs: add How It Works section, fix ToC, update changelog to v3.0.0, add crates.io badge
...
- Add "How It Works" explainer between Key Features and Use Cases
- Add Self-Learning WiFi AI and AI Backbone to Table of Contents
- Update Key Features entry in ToC to match new sub-sections
- Fix changelog: v2.3.0/v2.2.0/v2.1.0 → v3.0.0/v2.0.0 (matches CHANGELOG.md)
- Add crates.io badge for wifi-densepose-ruvector
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:37:25 -05:00
ruv
9e483e2c0f
docs: break Key Features into three titled tables with descriptions
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:34:44 -05:00
ruv
f89b81cdfa
docs: organize Key Features into Sensing, Intelligence, and Performance groups
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:33:26 -05:00
ruv
86e8ccd3d7
docs: add Self-Learning and AI Signal Processing to Key Features table
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:31:48 -05:00
ruv
4f7ad6d2e6
docs: fix model size inconsistency and add AI Backbone cross-reference in ADR-024 section
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:25:35 -05:00
ruv
aaec699223
docs: move AI Backbone into collapsed section under Models & Training
...
- Remove RuVector AI section from Rust Crates details block
- Add as own collapsed <details> in Models & Training with anchor link
- Add cross-reference from crates table to new section
- Link to issue #67 for deep dive with code examples
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:23:15 -05:00
ruv
72f031ae80
docs: rewrite RuVector section with AI-focused framing
...
Replace dry API reference table with AI pipeline diagram, plain-language
capability descriptions, and "what it replaces" comparisons. Reframes
graph algorithms and sparse solvers as learned, self-optimizing AI
components that feed the DensePose neural network.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:21:02 -05:00
ruv
00530aee3a
merge: resolve README conflict (26 ADRs includes ADR-025 + ADR-026)
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:02:18 -05:00
ruv
6a2ef11035
docs: cross-platform support in README, changelog, user guide
...
- README: update hardware table, crate description, scan layer heading
for macOS + Linux support, bump ADR count to 25
- CHANGELOG: add cross-platform adapters and byte counter fix
- User guide: add macOS CoreWLAN and Linux iw data source sections
- CLAUDE.md: add pre-merge checklist (8 items)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 11:00:46 -05:00
Claude
ed3261fbcb
feat(ruvector): implement ADR-017 as wifi-densepose-ruvector crate + fix MAT warnings
...
New crate `wifi-densepose-ruvector` implements all 7 ruvector v2.0.4
integration points from ADR-017 (signal processing + MAT disaster detection):
signal::subcarrier — mincut_subcarrier_partition (ruvector-mincut)
signal::spectrogram — gate_spectrogram (ruvector-attn-mincut)
signal::bvp — attention_weighted_bvp (ruvector-attention)
signal::fresnel — solve_fresnel_geometry (ruvector-solver)
mat::triangulation — solve_triangulation TDoA (ruvector-solver)
mat::breathing — CompressedBreathingBuffer 50-75% mem reduction (ruvector-temporal-tensor)
mat::heartbeat — CompressedHeartbeatSpectrogram tiered compression (ruvector-temporal-tensor)
16 tests, 0 compilation errors. Workspace grows from 14 → 15 crates.
MAT crate: fix all 54 warnings (0 remaining in wifi-densepose-mat):
- Remove unused imports (Arc, HashMap, RwLock, mpsc, Mutex, ConfidenceScore, etc.)
- Prefix unused variables with _ (timestamp_low, agc, perm)
- Add #![allow(unexpected_cfgs)] for onnx feature gates in ML files
- Move onnx-conditional imports under #[cfg(feature = "onnx")] guards
README: update crate count 14→15, ADR count 24→26, add ruvector crate
table with 7-row integration summary.
Total tests: 939 → 955 (16 new). All passing, 0 regressions.
https://claude.ai/code/session_0164UZu6rG6gA15HmVyLZAmU
2026-03-01 15:50:05 +00:00
ruv
a6382fb026
feat: Add macOS CoreWLAN WiFi sensing adapter and user guide
...
- Introduced ADR-025 documenting the implementation of a macOS CoreWLAN sensing adapter using a Swift helper binary and Rust integration.
- Added a new user guide detailing installation, usage, and hardware setup for WiFi DensePose, including Docker and source build instructions.
- Included sections on data sources, REST API reference, WebSocket streaming, and vital sign detection.
- Documented hardware requirements and troubleshooting steps for various setups.
2026-03-01 02:15:44 -05:00
ruv
a0b5506b8c
docs: rename embedding section to Self-Learning WiFi AI
...
Reframe the ADR-024 section header to emphasize AI self-learning and
adaptive optimization rather than technical CSI embedding terminology.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 01:47:21 -05:00
rUv
9bbe95648c
feat: ADR-024 Contrastive CSI Embedding Model — all 7 phases ( #52 )
...
Full implementation of Project AETHER — Contrastive CSI Embedding Model.
## Phases Delivered
1. ProjectionHead (64→128→128) + L2 normalization
2. CsiAugmenter (5 physically-motivated augmentations)
3. InfoNCE contrastive loss + SimCLR pretraining
4. FingerprintIndex (4 index types: env, activity, temporal, person)
5. RVF SEG_EMBED (0x0C) + CLI integration
6. Cross-modal alignment (PoseEncoder + InfoNCE)
7. Deep RuVector: MicroLoRA, EWC++, drift detection, hard-negative mining, SEG_LORA
## Stats
- 276 tests passing (191 lib + 51 bin + 16 rvf + 18 vitals)
- 3,342 additions across 8 files
- Zero unsafe/unwrap/panic/todo stubs
- ~55KB INT8 model for ESP32 edge deployment
Also fixes deprecated GitHub Actions (v3→v4) and adds feat/* branch CI triggers.
Closes #50
2026-03-01 01:44:38 -05:00
ruv
44b9c30dbc
fix: Docker port mismatch — server now binds 3000/3001 as documented
...
The sensing server defaults to HTTP :8080 and WS :8765, but Docker
exposes :3000/:3001. Added --http-port 3000 --ws-port 3001 to CMD
in both Dockerfile.rust and docker-compose.yml.
Verified both images build and run:
- Rust: 133 MB, all endpoints responding (health, sensing/latest,
vital-signs, pose/current, info, model/info, UI)
- Python: 569 MB, all packages importable (websockets, fastapi)
- RVF file: 13 KB, valid RVFS magic bytes
Also fixed README Quick Start endpoints to match actual routes:
- /api/v1/health → /health
- /api/v1/sensing → /api/v1/sensing/latest
- Added /api/v1/pose/current and /api/v1/info examples
- Added port mapping note for Docker vs local dev
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 00:56:41 -05:00
ruv
50f0fc955b
docs: Replace ASCII architecture with Mermaid diagrams
...
Replace the single ASCII box diagram with 3 styled Mermaid diagrams:
1. End-to-End Pipeline — full data flow from WiFi routers through
signal processing (6 stages with ruvector crate labels), neural
pipeline (graph transformer + SONA), vital signs, to output layer
(REST, WebSocket, Analytics, UI). Dark theme with color-coded
subsystem groups.
2. Signal Processing Detail — zoomed-in CSI cleanup pipeline showing
conjugate multiply, phase unwrap, Hampel filter, min-cut partition,
attention gate, STFT, Fresnel, and BVP stages.
3. Deployment Topology — ESP32 mesh (edge) → Rust sensing server
(3 ports) → clients (browser, mobile, dashboard, IoT).
Component table expanded from 7 to 11 entries with crate/module
column linking each component to its source.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 00:48:57 -05:00
ruv
0afd9c5434
docs: Expand Use Cases into visible intro + 4 collapsed verticals
...
Restructure Use Cases & Applications as a visible section with:
- Intro paragraph + scaling note (always visible)
- "Why WiFi wins" comparison table vs cameras/PIR (always visible)
- 4 collapsed tiers: Everyday (8 use cases), Specialized (9),
Robotics & Industrial (8, new), Extreme (8)
- Each row now includes a Key Metric column
- New robotics section: cobots, AMR navigation, android spatial
awareness, manufacturing, construction, agricultural, drones,
clean rooms
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-01 00:45:21 -05:00