Skip to content

v5.11.71 — Savings that update when you look

Choose a tag to compare

@alexgreensh alexgreensh released this 30 Jul 14:06

Your savings number is now live. Open or refresh the dashboard and it recomputes on the spot — no more stale figure sitting there from hours ago.

What's better

  • Live savings on refresh. The dashboard fetches a fresh /api/savings on load and when you switch back to the tab, and patches the Savings + Overview tiles in place (fast, in-place, with a live · HH:MM:SS stamp). A browser refresh always shows current numbers.
  • Staleness can't silently come back. The keep-warm background refresh now heals itself onto an update-surviving path, so a plugin update no longer freezes your dashboard at an old reading. If yours was stuck, it un-sticks on the next session.

Under the hood

  • New read-only GET /api/savings endpoint: recomputes merged savings + cache-health on demand, localhost-guarded (DNS-rebinding defense), fail-open.
  • _heal_keepwarm_plist_path lifts an existing launchd agent off a version-pinned cache path (macOS) at ensure-health; never resurrects a declined agent.
  • 11 new tests. Full suite 709 passed. Linux CI green (3.11–3.14). Dashboard verified live end-to-end in a browser.

No config needed — it just works the next time you open the dashboard.