Release Candidate v1.6.0-rc1
Pre-Release / Test Candidate Notice:
This build is available on thetestbranch (Docker tag:test) for community validation and feedback before being promoted tomain(:latest).
Test Suite Status: 1033 / 1033 tests passing (100% coverage).
What's New in v1.6.0
Version v1.6.0 is the most significant update to date, transforming the dashboard into a full-fledged, homelab-grade network management and observability suite.
1. Local Role-Based Access Control (RBAC) & User Management (Issue #39)
- Master 2FA Session Protection: Friends, family, and coworkers can now access the local dashboard using dedicated local credentials without needing access to your primary Amazon/eero 2FA phone token or OTP.
- Granular Permission Scopes (12 Scopes):
- View Scopes:
view_topology,view_devices,view_rules,view_guest_wifi,view_speedtest,view_dns_sync. - Action Scopes:
action_reboot_nodes,action_edit_devices,action_manage_rules,action_toggle_guest,action_run_speedtest,action_sync_dns.
- View Scopes:
- Pre-built Roles: Quick assignment of
Admin,Operator, andViewer(Read-Only) profiles, with custom toggle overrides. - Security & Persistence: Passwords hashed with PBKDF2/SHA-256 (100k iterations) and stored in SQLite
local_users. All API endpoints strictly enforce permission claims via FastAPI dependency injection.
2. AI Network Diagnostics, Roaming Advisor & IoT Anomaly Detection
- Natural Language Health Analysis: Contextual diagnostic narratives explaining health score penalties (e.g., Ethernet link negotiated at 100 Mbps instead of 1 Gbps, 2.4 GHz congestion, weak RSSI) with a prioritized corrective action checklist.
- Sticky Clients & Roaming Advisor (Issue #43): Heuristic engine detecting mobile clients connected to distant mesh beacons with weak signal when a closer eero offers $\ge 20\text{ dBm}$ gain. Features a dedicated "Roaming Consigliato" badge with actionable tips.
- IoT Night Traffic Anomaly Detection: Statistical anomaly detection monitoring smart home hardware (Shelly, Sonoff, cameras) between 01:00 and 06:00 to alert on unusual off-hours data spikes.
3. System Logging Suite & Live Console Viewer (Issue #59)
- Unified Async Logger (
LogService): Captures events across all subsystems:dns(Multi-Engine sync),poller(eero Cloud polling),mqtt(Home Assistant),auth(local logins), andsystem(retention, backups). - Live Interactive Console (Card 7 in Controls): Real-time log streaming with auto-poll toggle, severity filtering (
DEBUG,INFO,WARNING,ERROR), and instant full-text search. - Hot Configuration & Lightweight Retention: Change log level on the fly without restarting the container. Automatic retention cleanup (24h, 7d, 15d, 30d) via background worker.
- 1-Click Export: Download raw RFC-5424 text (
.log) or structured JSON (.json).
4. Homelab Integrations: MQTT & Native Prometheus (/metrics)
- Home Assistant MQTT Auto-Discovery: Native asynchronous MQTT client publishing auto-discovery payloads for mesh topology status, WAN bandwidth, ping latency, client counts, binary connectivity sensors, and device presence tracking.
- Prometheus OpenMetrics Endpoint: Native metrics exposition at
/metricsand/api/metrics/prometheus. - Official Grafana Dashboard: Pre-built 13-panel dashboard template located in
deploy/grafana/eero_dashboard.json.
5. Multi-Channel Notification Dispatcher & Smart Alerts
- Expanded Channels: Native integrations for Discord Webhooks (rich embeds with color badges) and Pushover (priority push alerts), alongside Telegram, Gotify, NTFY, and custom Webhooks.
- Specialized Smart Alerts:
- Bufferbloat SLA Degradation Alert (Grade D/F under load).
- Mesh Node Weak Link / Signal Degradation Warning.
- Security Alert: Repeated Failed Local Logins.
- Automated Backup & Disaster Recovery Status.
6. Parental Scheduling, Bufferbloat Grade & Data Retention
- Parental & Device Scheduling: Interactive recurring schedules (time slots, day of week) to automatically pause/unpause client groups, user profiles, or toggle node status LEDs.
- Bufferbloat & Latency Under Load SLA: Accurate latency measurements under active WAN load vs idle, calculating grades from A+ down to F.
-
3-Tier Data Retention Worker: Scalable time-series storage: Raw 48h $\rightarrow$ Hourly aggregates 30d $\rightarrow$ Daily stats 365d, with nightly SQLite WAL
VACUUMandPRAGMA optimize. -
Disaster Recovery Backup Wizard: 1-click encrypted JSON configuration export and restore (
/api/system/backup,/api/system/restore).
7. eeroOS Release Notes & Community Hub (Issue #55)
- Automated Scraper & Local Comparison: Fetches official Zendesk release notes and r/amazoneero community updates.
- Fleet Status Reconciliation: Compares local fleet firmware against official releases to detect whether nodes are Up-to-date, have an Update Available, or are running a Newer progressive rollout version.
8. Mobile Responsive UX & Deep Linking (PR #28 & PR #29)
- HTML5 History API Routing (PR #28 / Issue #45 - @DannyFeliz): True deep-linking (
/,/devices,/speedtest,/controls,/manual,/settings/*) with real-time query parameter synchronization and zero FOUC flicker. - Responsive Mobile App Shell (PR #29 / Issue #46 - @DannyFeliz): Auto-collapsing sidebar drawer with scrim (< 1024px) and responsive table reflow into card view on narrow viewports (320px–1024px).
9. RFC 4193 IPv6 ULA vs GUA Dual-Stack (Issue #43 & Issue #57)
- Deterministic Classification (@jpatchMC): Full distinction between Global Unicast (GUA), Unique Local (ULA
fc00::/7/fd00::/8), and Link-Local (fe80::/10). - Visual UI Badges: Distinct Purple ULA, Sky Blue GLOBAL, and Amber LINK-LOCAL badges in the device detail modal with 1-click clipboard copy.
- Safe DNS Propagation: Routable GUA + ULA are safely synchronized to AdGuard Home, Pi-hole, and Technitium, while non-routable Link-Local addresses are excluded.
10. Security Hardening & Zero-Placeholder Telemetry (PR #47–#53 / Issue #56)
- Security Advisories Patched (@carbones73): Strict CORS (
CORS_ORIGINS), CSRF protection middleware, Wi-Fi password sanitization, conditional Swagger docs (API_DOCS=true), and enforced 0600 file permissions onsession.json. - Authentic Hardware Telemetry: Elimination of synthetic placeholders (
0.0.0.0,192.168.4.1,-55 dBm,packets * 1420). All values reflect authentic eero hardware states or display"n/a".
Special Thanks to Contributors
A huge shoutout to our community members who helped drive and test these improvements:
-
@jpatchMC: IPv6 ULA/GUA design (#43, #57), logging suite request (#59), offline resilience feedback (#58), and Layer 2 switching telemetry (#40, #42).
-
@carbones73: Rigorous telemetry auditing, RF accuracy (PRs #47–#53), security advisories (GHSA), poller resilience (#55), and placeholder sanitization (#56).
-
@DannyFeliz: HTML5 History routing & deep-linking (PR #28 / #45) and mobile drawer responsive UX (PR #29 / #46).
-
@Hatton920: Health score breakdown, PHY rate monitoring, and node collision fixes (#15, #41).
Feedback & Bug Reports
Please report any feedback, edge-case observations, or questions directly in GitHub Issues or GitHub Discussions. Once validated on the test branch, v1.6.0 will be tagged for the final production release on main (:latest)!