From 56d288db37fadb0c4270842aa5052e361f95009f Mon Sep 17 00:00:00 2001 From: Ryan Malloy Date: Thu, 14 May 2026 02:49:49 -0600 Subject: [PATCH] hassfest: fix manifest key order, drop markdown from i18n, add CONFIG_SCHEMA - manifest.json: keys reordered to domain, name, then alphabetical - strings.json + translations/en.json: rephrase user-step description without backticks/angle-brackets (hassfest rejects HTML in i18n strings) - __init__.py: add CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) since async_setup exists but the integration is config-entry-only --- custom_components/omni_pca/__init__.py | 3 +++ custom_components/omni_pca/manifest.json | 10 +++++----- custom_components/omni_pca/strings.json | 2 +- custom_components/omni_pca/translations/en.json | 2 +- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/custom_components/omni_pca/__init__.py b/custom_components/omni_pca/__init__.py index 39a908d..91c0be7 100644 --- a/custom_components/omni_pca/__init__.py +++ b/custom_components/omni_pca/__init__.py @@ -13,6 +13,7 @@ from typing import TYPE_CHECKING from homeassistant.const import CONF_HOST, CONF_PORT, Platform from homeassistant.exceptions import ConfigEntryNotReady +from homeassistant.helpers import config_validation as cv from .const import ( CONF_CONTROLLER_KEY, @@ -41,6 +42,8 @@ PLATFORMS: list[Platform] = [ Platform.SWITCH, ] +CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) + async def async_setup(hass: HomeAssistant, config: dict) -> bool: """No YAML support; everything is config-flow driven.""" diff --git a/custom_components/omni_pca/manifest.json b/custom_components/omni_pca/manifest.json index 1a61250..5cb776c 100644 --- a/custom_components/omni_pca/manifest.json +++ b/custom_components/omni_pca/manifest.json @@ -1,13 +1,13 @@ { "domain": "omni_pca", "name": "HAI/Leviton Omni Panel", - "version": "2026.5.11", - "iot_class": "local_push", + "codeowners": ["@rsp2k"], "config_flow": true, "dependencies": [], - "codeowners": ["@rsp2k"], - "requirements": ["omni-pca==2026.5.11"], "documentation": "https://github.com/rsp2k/omni-pca", + "integration_type": "hub", + "iot_class": "local_push", "issue_tracker": "https://github.com/rsp2k/omni-pca/issues", - "integration_type": "hub" + "requirements": ["omni-pca==2026.5.11"], + "version": "2026.5.11" } diff --git a/custom_components/omni_pca/strings.json b/custom_components/omni_pca/strings.json index 78c1401..57bed9f 100644 --- a/custom_components/omni_pca/strings.json +++ b/custom_components/omni_pca/strings.json @@ -3,7 +3,7 @@ "step": { "user": { "title": "Connect to your Omni panel", - "description": "Enter the IP/hostname of your HAI/Leviton Omni Pro II controller and the 32-character hex Controller Key. Use `omni-pca decode-pca .pca --field controller_key` to extract the key from a PC Access export. Optionally provide a path to a saved `.pca` file to load panel programs from disk instead of streaming them from the controller.", + "description": "Enter the IP/hostname of your HAI/Leviton Omni Pro II controller and the 32-character hex Controller Key. Run omni-pca decode-pca with the --field controller_key option on a PC Access export file to extract the key. Optionally provide a path to a saved .pca file to load panel programs from disk instead of streaming them from the controller.", "data": { "host": "Host", "port": "Port", diff --git a/custom_components/omni_pca/translations/en.json b/custom_components/omni_pca/translations/en.json index 78c1401..57bed9f 100644 --- a/custom_components/omni_pca/translations/en.json +++ b/custom_components/omni_pca/translations/en.json @@ -3,7 +3,7 @@ "step": { "user": { "title": "Connect to your Omni panel", - "description": "Enter the IP/hostname of your HAI/Leviton Omni Pro II controller and the 32-character hex Controller Key. Use `omni-pca decode-pca .pca --field controller_key` to extract the key from a PC Access export. Optionally provide a path to a saved `.pca` file to load panel programs from disk instead of streaming them from the controller.", + "description": "Enter the IP/hostname of your HAI/Leviton Omni Pro II controller and the 32-character hex Controller Key. Run omni-pca decode-pca with the --field controller_key option on a PC Access export file to extract the key. Optionally provide a path to a saved .pca file to load panel programs from disk instead of streaming them from the controller.", "data": { "host": "Host", "port": "Port",