{"record":{"id":"acc2a95c31dfd89f","repo":"home-assistant/core","slug":"unknown-error-acc2a9","errorCode":null,"errorMessage":"Unknown error","messagePattern":"Unknown error","errorType":"exception","errorClass":"ConfigEntryError","httpStatus":null,"severity":"error","filePath":"homeassistant/components/airos/__init__.py","lineNumber":114,"sourceCode":"        AirOSTLSCompatibilityError,\n        TimeoutError,\n    ) as err:\n        await close_session()\n        raise ConfigEntryNotReady from err\n    except (\n        AirOSConnectionAuthenticationError,\n        AirOSDataMissingError,\n    ) as err:\n        await close_session()\n        raise ConfigEntryAuthFailed from err\n    except AirOSKeyDataMissingError as err:\n        await close_session()\n        raise ConfigEntryError(\n            translation_domain=DOMAIN, translation_key=\"key_data_missing\"\n        ) from err\n    except Exception as err:\n        await close_session()\n        raise ConfigEntryError(\n            translation_domain=DOMAIN, translation_key=\"unknown\"\n        ) from err\n\n    airos_class: type[AirOS8 | AirOS6] = (\n        AirOS8 if device_data[\"fw_major\"] == 8 else AirOS6\n    )\n\n    airos_device = airos_class(**conn_data)\n\n    data_coordinator = AirOSDataUpdateCoordinator(\n        hass, entry, device_data, airos_device\n    )\n\n    try:\n        await data_coordinator.async_config_entry_first_refresh()\n\n        firmware_coordinator: AirOSFirmwareUpdateCoordinator | None = None\n        if device_data[\"fw_major\"] >= 8:","sourceCodeStart":96,"sourceCodeEnd":132,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/airos/__init__.py#L96-L132","documentation":"The catch-all setup error for the AirOS integration: any Exception during initial connection/device_data retrieval that is not connection-timeout, auth, data-missing, or key-data-missing becomes ConfigEntryError with translation key unknown. The entry lands in a failed state; the original exception is chained for diagnosis.","triggerScenarios":"Unexpected exception during _async_connect/device data parsing — e.g. SSL errors, unexpected response schemas from unsupported firmware, or bugs — anything not matched by the specific except clauses above it.","commonSituations":"Device with an unanticipated firmware build returning unexpected payloads, TLS interception on the network, or library bugs against specific hardware revisions.","solutions":["Open the HA log and read the chained `from err` original exception — that is the real cause","Verify the host, username, and password against the device web UI","Update the device firmware and the pyairos library (update HA core)","If the underlying error is a parsing bug, open an issue with the traceback and device model/firmware"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try:\n    await hass.config_entries.async_setup(entry.entry_id)\nexcept ConfigEntryError as err:\n    # unknown: inspect __cause__ in logs; entry is failed, needs user action not retry","preventionTips":["Always read the chained original exception — the catch-all hides the real cause","Verify host/credentials against the device web UI before setup","Keep HA core updated so pyairos parser fixes arrive"],"tags":["airos","home-assistant","setup","catch-all"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}