* docs(adr): ADR-068 per-node state pipeline for multi-node sensing (#249) Documents the architectural change from single shared state to per-node HashMap<u8, NodeState> in the sensing server. Includes scaling analysis (256 nodes < 13 MB), QEMU validation plan, and aggregation strategy. Also links README hero image to the explainer video. Co-Authored-By: claude-flow <ruv@ruv.net> * feat(server): per-node state pipeline for multi-node sensing (ADR-068, #249) Replaces the single shared state pipeline with per-node HashMap<u8, NodeState>. Each ESP32 node now gets independent: - frame_history (temporal analysis) - smoothed_person_score / prev_person_count - smoothed_motion / baseline / debounce state - vital sign detector + smoothing buffers - RSSI history Multi-node aggregation: - Person count = sum of per-node counts for active nodes (seen <10s) - SensingUpdate.nodes includes all active nodes - estimated_persons reflects cross-node aggregate Single-node deployments behave identically (HashMap has one entry). Simulated data path unchanged for backward compatibility. Closes #249 Refs #237, #276, #282 Co-Authored-By: claude-flow <ruv@ruv.net> |
||
|---|---|---|
| .. | ||
| .claude-flow | ||
| crates | ||
| data | ||
| docs | ||
| examples | ||
| patches/ruvector-crv | ||
| Cargo.lock | ||
| Cargo.toml | ||