Commit Graph
5 Commits
Author SHA1 Message Date
petr.polezhaev 49d5533cd1 docs: troubleshooting «Invalid handler specified» (нет pyfglair / нет перезапуска)
- README компонента: проверка лога, установка pyfglair в окружение HA
  (docker exec python -m pip), полный перезапуск, проверка импорта
- RELEASE_HA: та же диагностика в разделе установки
2026-09-29 16:13:19 +03:00
petr.polezhaev a32e2f0bfc ha(ci): Gitea Actions — сборка и публикация pyfglair в PyPI-реестр пакетов Gitea
- .gitea/workflows/publish-pyfglair.yaml: ручной workflow_dispatch —
  toolchain, python -m build (wheel+sdist), smoke-тест wheel, twine upload
  в /api/packages/<owner>/pypi (PAT в секрете GITEA_PYPI_TOKEN; встроенный
  GITEA_TOKEN пакеты публиковать не умеет); вход bundled_mbedtls
- setup.py: FGL_BUNDLED_MBEDTLS=0 уважается при сборке wheel (системный
  mbedtls), по умолчанию — встроенный (проверено readelf для обоих)
- RELEASE_HA переписан: §1 внутренняя установка (Gitea Packages + команда
  pip install для HA), §2 PyPI (публично), §3 GitHub/HACS (Custom
  Repositories только на GitHub), §4-5 без изменений
- README компонента: внутренняя установка pyfglair из Gitea Packages
2026-09-29 15:44:56 +03:00
petr.polezhaev 1fc845d7f5 ha(H5): обёртка ошибок ESPHome-канала, README/RELEASE/ru-ниты
- ESPHome connect/command/импорт оборачиваются в AcceptanceError; при сбое
  connect канал закрывается (loop закрыт), CLI даёт rc 2 без traceback
- self-test: connect error, command error, отсутствие aioesphomeapi через
  main (rc 2) — всего 15 acceptance-тестов
- RELEASE_HA: repaired-wheel в dist/manylinux + удаление linux-тега перед
  upload; README компонента — корректная ссылка на docs/RELEASE_HA.md
- translations/ru: options data «LAN-ключ»; план §2/§6 синхронизирован
2026-09-29 15:04:20 +03:00
petr.polezhaev a03458f9bc ha(H5): исправления по ревью — GitHub/HACS, рабочий ESPHome-канал, restore, manylinux
- critical: README честно описывает HACS (только публичный GitHub-зеркало)
  + ручная установка копированием; RELEASE_HA — шаг зеркала и codeowners
- critical: ESPHome-канал приёмки реализован реально (aioesphomeapi:
  connect/list_entities/climate_command для режима и уставки; fan/swing —
  только HA); unit-тест на фейковом модуле
- major: quick/long восстанавливают исходное состояние в finally даже при
  сбое; quick ждёт восстановления; ошибки шага пишутся в результат (rc 1),
  а не фаталят (rc 2)
- major: RELEASE_HA — manylinux через auditwheel repair (PyPI отклоняет
  linux_x86_64), build/twine, aarch64, корректные проверки .so, тег/версия
- major: полный ключ для ESPHome теперь реально виден в options flow
  («Настройка» на карточке интеграции, поле LAN IP key, можно заменить) —
  README/diagnostics синхронизированы
- minor: non-JSON ответ → rc 2; CSV quick+long и инкрементальная запись;
  допуск _matches в long; --settle-timeout; hacs.json homeassistant=2025.1;
  brand/{icon,logo}.png заглушки; план §6/§7 уточнён
- тесты: acceptance self-test 11 (restore-after-failure, long fail, non-JSON,
  esphome channel), options flow (2), всего 28+11+49
2026-09-29 14:54:50 +03:00
petr.polezhaev 8013781e09 ha(H5): README+HACS, скрипт приёмки, релизный чек-лист
- custom_components/fglair/README.md: HACS-установка, cloud/ручной/импорт,
  превью шаблона, сущности, ключ для ESPHome (reconfigure/CLI), диагностика
  и troubleshoot; заглушки screenshots/step-1..8.png (сгенерированы)
- tests/acceptance/test_esphome_ha.py: quick/burst/long через REST API HA
  (long-lived token), адаптивная матрица по capabilities, возврат исходного
  состояния, CSV-отчёт long, опциональный ESPHome-канал (aioesphomeapi)
- self-test приёмки на моке HA REST (6 тестов, без железа)
- hacs.json; README: раздел Home Assistant; docs/RELEASE_HA.md: публикация
  pyfglair на PyPI (wheel/sdist, auditwheel), HACS-релиз, приёмка
- scripts/py-ci.sh: tests/acceptance; план H5 отмечен
2026-09-29 14:42:41 +03:00