Skip to content

v0.1.12

Choose a tag to compare

@poolski poolski released this 25 May 13:46
9038d33

Bug fixes

MAD floor regression — The relative floor abs(median) * 1e-6 introduced in v0.1.10 caused genuine outliers to be silently skipped on sensors with large change values (e.g. median ≈ 1000 units/h, MAD = 0.0007, floor = 0.001 → spike hidden). Reverted to an absolute floor of 1e-9, which filters only floating-point noise without suppressing real variation.

nonzero_peers len-1 blindspot — When a spike was the sole non-zero reading in its time-of-day peer group, nonzero_peers had length 1 (truthy but insufficient), causing the candidate to be skipped via the len < 2 guard. Now requires len >= 2 before preferring the non-zero subset.

Date range TO field ignored — The TO date field was captured in the UI but never sent to the backend. The scan always ran to utcnow(). The FROM date was converted to an approximate lookback_days integer that drifted by up to 24 h per re-run. Both fields now send precise Unix timestamps (start_ts / end_ts); the WebSocket schema is updated accordingly.

Dead constant — Removed unused _5MIN_MS = 300_000.

Tests — Added two new regression tests and fixed a misleading comment.