home-assistant/core · warning · ConfigEntryNotReady

supervisor_not_ready

supervisor_not_ready

Error message

Supervisor was not ready during setup, will retry

What it means

Raised as ConfigEntryNotReady with translation key supervisor_not_ready when Analytics.load() fails with HassioNotReadyError, i.e. the integration is running on a HA OS/Supervised install and the Supervisor API answered but was not yet ready. ConfigEntryNotReady makes Home Assistant retry setup with backoff instead of failing permanently.

Source

Thrown at homeassistant/components/analytics/__init__.py:94

    )

    websocket_api.async_register_command(hass, websocket_analytics)
    websocket_api.async_register_command(hass, websocket_analytics_preferences)

    hass.http.register_view(AnalyticsDevicesView)

    return True


async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
    """Set up Analytics from a config entry."""
    snapshots_url = hass.data[_DATA_SNAPSHOTS_URL]
    analytics = Analytics(hass, snapshots_url)

    try:
        await analytics.load()
    except HassioNotReadyError as err:
        raise ConfigEntryNotReady(
            translation_domain=DOMAIN,
            translation_key="supervisor_not_ready",
        ) from err

    started = False

    async def _async_handle_labs_update(
        event_data: labs.EventLabsUpdatedData,
    ) -> None:
        """Handle labs feature toggle."""
        await analytics.save_preferences({ATTR_SNAPSHOTS: event_data["enabled"]})
        if started:
            await analytics.async_schedule()

    async def start_schedule(hass: HomeAssistant) -> None:
        """Start the send schedule once Home Assistant has started."""
        nonlocal started
        started = True

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Wait: HA automatically retries setup with exponential backoff; the entry usually recovers by itself.
  2. If it persists, check Supervisor health (Settings > System > Supervisor, or 'ha supervisor info').
  3. Restart the Supervisor ('ha supervisor restart') or the host.
  4. On non-Supervised installs this path is unreachable; a persistent occurrence means the Supervisor addon metadata is inconsistent — update HA OS.
Defensive patterns

Strategy: retry

Try / catch

except ConfigEntryNotReady: do nothing — HA retries setup automatically; never convert this to ConfigEntryError.

Prevention

When it happens

Trigger: async_setup_entry for the analytics integration calls await analytics.load(), which queries the Supervisor (Hassio) API; the Supervisor returns its not-ready state, typically right after boot when hass.io services are still starting.

Common situations: Slow Supervisor startup after a HA OS update, Supervisor restarting or unhealthy, or the host being under heavy load during boot. Almost always transient and self-heals on retry.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/1d98084fade33ea3. Report an issue: GitHub.