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
45 lines
1.2 KiB
TOML
45 lines
1.2 KiB
TOML
[package]
|
|
name = "wifi-densepose-signal"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
description = "WiFi CSI signal processing for DensePose estimation"
|
|
license.workspace = true
|
|
authors = ["rUv <ruv@ruv.net>", "WiFi-DensePose Contributors"]
|
|
repository.workspace = true
|
|
documentation = "https://docs.rs/wifi-densepose-signal"
|
|
keywords = ["wifi", "csi", "signal-processing", "densepose", "rust"]
|
|
categories = ["science", "computer-vision"]
|
|
readme = "README.md"
|
|
|
|
[dependencies]
|
|
# Core utilities
|
|
thiserror.workspace = true
|
|
serde = { workspace = true }
|
|
serde_json.workspace = true
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
|
|
# Signal processing
|
|
ndarray = { workspace = true }
|
|
rustfft.workspace = true
|
|
num-complex.workspace = true
|
|
num-traits.workspace = true
|
|
|
|
# Graph algorithms
|
|
ruvector-mincut = { workspace = true }
|
|
ruvector-attn-mincut = { workspace = true }
|
|
|
|
# Attention and solver integrations (ADR-017)
|
|
ruvector-attention = { workspace = true }
|
|
ruvector-solver = { workspace = true }
|
|
|
|
# Internal
|
|
wifi-densepose-core = { version = "0.1.0", path = "../wifi-densepose-core" }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.5", features = ["html_reports"] }
|
|
proptest.workspace = true
|
|
|
|
[[bench]]
|
|
name = "signal_bench"
|
|
harness = false
|