mirror of
https://github.com/ruvnet/RuView
synced 2026-07-31 18:51:42 +00:00
2e018f4f19
Native frame contract, universal RF encoder, RF-aware Gaussian spatial memory, physics-guided synthetic RF worlds, edge sensing control plane, BLE-CS + factorized pose. All 10 ADRs (273-282) fully implemented and tested (99 tests); ADR-278 (radar inverse rendering) honestly gated with zero code as a future research program. Deep-reviewed and hardware-tested against a live ESP32-C6 CSI node before merge: fixed a reachable panic, a silent NaN-corruption path, a cross-entity Gaussian conflation bug, and a wrong-center-frequency bug in the WiFi adapter (confirmed live: was misreporting channel 4 as 2437 MHz, now correctly reports 2427 MHz matching the hardware parser exactly). Added a standing hardware-in-the-loop test (examples/esp32_live_hardware_test.rs). Also fixed unrelated pre-existing issues surfaced during validation (wifi-densepose-core clippy warnings, a ruview-auth Windows build break, a sensing-server test flake). Full review: https://gist.github.com/ruvnet/89795f3c4b8ea166cff5ac35ae4c7651
50 lines
2.0 KiB
TOML
50 lines
2.0 KiB
TOML
[package]
|
|
name = "ruview-unified"
|
|
description = "Unified RF spatial world model (ADR-273): canonical RF tensor + hardware adapters, universal RF foundation encoder, RF-aware Gaussian spatial memory, physics-guided synthetic RF worlds, and the edge sensing control plane"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
documentation.workspace = true
|
|
keywords = ["wifi", "csi", "rf-sensing", "gaussian-splatting", "world-model"]
|
|
categories = ["science", "simulation"]
|
|
|
|
# `ruview-unified` is deliberately a *thin-dependency* crate: pure-Rust math,
|
|
# deterministic ChaCha20 randomness (nvsim pattern — same seed ⇒ byte-identical
|
|
# output on every machine), and a single internal dependency on
|
|
# `wifi-densepose-core` so the WiFi adapter consumes the real `CsiFrame`
|
|
# boundary type instead of a parallel invention. No GPU, no ONNX, no tokio.
|
|
[dependencies]
|
|
wifi-densepose-core = { workspace = true }
|
|
ndarray = { workspace = true }
|
|
num-complex = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
|
|
# Deterministic PRNG for domain randomization + weight init (see nvsim §Pass 4
|
|
# for the rationale: default features off drops the getrandom OS-entropy path,
|
|
# keeping the crate WASM-ready and reproducible).
|
|
rand = { version = "0.8", default-features = false }
|
|
rand_chacha = { version = "0.3", default-features = false }
|
|
|
|
[dev-dependencies]
|
|
criterion = { workspace = true }
|
|
proptest = { workspace = true }
|
|
# Dev-only: bridges real ESP32 ADR-018 UDP captures (wifi-densepose-hardware's
|
|
# already-proven Esp32CsiParser) into wifi_densepose_core::CsiFrame for the
|
|
# `esp32_live_hardware_test` example. Does not affect the published dependency
|
|
# graph — the crate's real dependency stays thin-dependency (see above).
|
|
wifi-densepose-hardware = { workspace = true }
|
|
|
|
[[bench]]
|
|
name = "unified_bench"
|
|
harness = false
|
|
|
|
[lints.rust]
|
|
unsafe_code = "forbid"
|
|
missing_docs = "warn"
|
|
|
|
[lints.clippy]
|
|
all = "warn"
|