ha(H2): исправления по ревью — несколько устройств, suggested values, YAML-import, типы ошибок
- critical: listen_port по умолчанию 0 (эфемерный) — несколько ConfigEntry не конфликтуют; тест двух записей на дефолтном порту - manifest: добавлен обязательный ключ codeowners - unload: set_log_handler(None) вынесен в executor (не блокирует loop); рефкаунт лог-пампа без гонки (старт после успешного setup) - config flow: возврат введённого в форму при ошибке (add_suggested_values_to_schema; секреты исключены), YAML-import подключён через async_setup + SOURCE_IMPORT, ProvisionError.kind вместо разбора русского текста, валидация device_port/key_id из JSON - trial: требует получения всех базовых свойств шаблона (не пустой ok), безопасное создание Session - py-ci.sh: отсутствие .venv-ha — ошибка (PY_CI_SKIP_HA=1 для пропуска); pytest.ini testpaths
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
"""Константы интеграции fglair."""
|
||||
from __future__ import annotations
|
||||
|
||||
from pyfglair import State
|
||||
from pyfglair.provision import REGIONS as _PROVISION_REGIONS
|
||||
|
||||
DOMAIN = "fglair"
|
||||
@@ -22,7 +21,10 @@ CONF_PASSWORD = "password"
|
||||
CONF_CONFIG_JSON = "config_json"
|
||||
|
||||
DEFAULT_DEVICE_PORT = 80
|
||||
DEFAULT_LISTEN_PORT = 10275
|
||||
# 0 => свободный эфемерный порт: несколько ConfigEntry (несколько
|
||||
# кондиционеров) не конфликтуют; модулю фактический порт сообщается в
|
||||
# local_reg (PROTOCOL §1).
|
||||
DEFAULT_LISTEN_PORT = 0
|
||||
DEFAULT_KEEPALIVE_MS = 15000
|
||||
TRIAL_TIMEOUT = 10.0
|
||||
|
||||
@@ -34,6 +36,5 @@ TRIAL_ERRORS = {
|
||||
"unreachable": "cannot_connect",
|
||||
"timeout": "timeout",
|
||||
"start_failed": "cannot_connect",
|
||||
"properties_missing": "cannot_connect",
|
||||
}
|
||||
|
||||
STATE_FAILED = {State.OFFLINE, State.KEY_ERROR}
|
||||
|
||||
Reference in New Issue
Block a user