Fix per-device data collection, revert hourly to rate data#129
Conversation
…125) - Fix collector: eero per-device endpoint uses "values" key (not "devices") and returns flat daily totals (no hourly series). Fixed key lookup and added fallback to flat upload/download fields when series is absent. - Revert per-device bandwidth-history endpoint to DeviceConnection rate data since eero API doesn't provide per-device hourly breakdowns. - Revert frontend per-device charts to Mbps rate-based rendering. - Network-level hourly endpoint remains on HourlyBandwidth (unchanged). - Version bump to 2.9.3. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Code Review — PR #129: Fix per-device data collection, revert hourly to rate dataThis PR correctly identifies and fixes a real API mismatch (the eero per-device endpoint returns data under 🔴 Unbounded query result set —
|
Summary
data_usage/devicesendpoint returns data under"values"key (not"devices"), and entries have flatupload/downloaddaily totals — no hourlyseriesbreakdowns. Fixed key lookup and added fallback to flat fields.bandwidth-historyendpoint back toDeviceConnectionrate snapshots (Mbps). This preserves hourly granularity on device pages.HourlyBandwidthaccumulated data (working correctly).Verified locally: collector now stores 69 devices per collection run. Per-device daily totals confirmed working (Sentry: 17.2 GB down, 20.0 GB up today).
Test plan
Updated data_usage for N devicesAuthored by Merlin 🪄