mirror of
https://github.com/home-assistant/supervisor.git
synced 2026-10-02 01:38:40 +01:00
haos-update-already-installed-api-error
Requesting an OS update to the version that is already installed, or to a version that is installed and only waiting for a reboot, is a client-state condition: the frontend or CLI offered an update that the OS manager has already applied. These requests were raised as a plain HassOSUpdateError, which api_process treats as an unexpected error and reports to Sentry. Over the last 90 days this accounted for roughly 20k events from about 15k installations, all of them "Version X is already installed" in one of its two variants. Follow the approach used for Core updates in #6915: introduce HassOSUpdateAlreadyInstalledError and HassOSUpdatePendingRebootError as HassOSUpdateError subclasses that are also APIError. Both carry an error_key so the frontend can translate them and the version as an extra field. The API response keeps the same HTTP 400 status and message text, but the exceptions no longer reach Sentry. Fixes SUPERVISOR-28TG Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Home Assistant Supervisor
First private cloud solution for home automation
Home Assistant (former Hass.io) is a container-based system for managing your Home Assistant Core installation and related applications. The system is controlled via Home Assistant which communicates with the Supervisor. The Supervisor provides an API to manage the installation. This includes changing network settings or installing and updating software.
Installation
Installation instructions can be found at https://home-assistant.io/getting-started.
Development
For small changes and bugfixes you can just follow this, but for significant changes open a RFC first. Development instructions can be found here.
Release
Releases are done in 3 stages (channels) with this structure:
- Pull requests are merged to the
mainbranch. - A new build is pushed to the
devstage. - Releases are published.
- A new build is pushed to the
betastage. - The
stable.jsonfile is updated. - The build that was pushed to
betawill now be pushed tostable.
Languages
Python
96.3%
JavaScript
3.6%
