diff --git a/homeassistant/components/plugwise/quality_scale.yaml b/homeassistant/components/plugwise/quality_scale.yaml new file mode 100644 index 0000000000000..b61071a285dfe --- /dev/null +++ b/homeassistant/components/plugwise/quality_scale.yaml @@ -0,0 +1,113 @@ +rules: + ## Bronze + config-flow: done + test-before-configure: done + unique-config-entry: + status: todo + comment: Add tests preventing second entry for same device + config-flow-test-coverage: + status: todo + comment: Cover test_form and zeroconf + runtime-data: + status: todo + comment: Clean up test_init for testing internals + test-before-setup: done + appropriate-polling: + status: todo + comment: Clean up coordinator (L71) check for mypy happiness + entity-unique-id: done + has-entity-name: + status: todo + comment: Clean up climate (already in superclass) + entity-event-setup: done + dependency-transparency: done + action-setup: + status: todo + comment: Check if we have these, otherwise exempt + common-modules: + status: todo + comment: Verify entity for async_added_to_hass usage (discard?) + docs-high-level-description: + status: todo + comment: Rewrite top section + docs-installation-instructions: + status: todo + comment: Docs PR 36087 + docs-removal-instructions: + status: todo + comment: Docs PR 36055 (done, but mark todo for benchmark) + docs-actions: done + brands: done + ## Silver + config-entry-unloading: done + log-when-unavailable: done + entity-unavailable: done + action-exceptions: + status: todo + comment: Climate exception on ValueError should be ServiceValidationError + reauthentication-flow: + status: exempt + comment: The hubs have a hardcoded `Smile ID` printed on the sticker used as password, it can not be changed + parallel-updates: + status: todo + comment: Using coordinator, but required due to mutable platform + test-coverage: + status: todo + comment: Consider using snapshots + consistency in setup calls + add numerical tests + use fixtures + integration-owner: done + docs-installation-parameters: + status: todo + comment: Docs PR 36087 (partial) + todo rewrite generically + docs-configuration-parameters: + status: exempt + comment: Plugwise has no options flow + ## Gold + entity-translations: + status: todo + comment: Clean up name where not needed, remove translation key on deviceclasses + entity-device-class: done + devices: done + entity-category: done + entity-disabled-by-default: done + discovery: done + stale-devices: done + diagnostics: done + exception-translations: + status: todo + comment: Add coordinator, util and climate exceptions + icon-translations: done + reconfiguration-flow: + status: todo + comment: This integration does not have any reconfiguration steps (yet) investigate how/why + dynamic-devices: + status: todo + comment: Add missing logic to button for unloading and creation + discovery-update-info: done + repair-issues: + status: exempt + comment: This integration does not have repairs + docs-use-cases: + status: todo + comment: Check for completeness + docs-supported-devices: + status: todo + comment: The list is there but could be improved for readability + docs-supported-functions: + status: todo + comment: Check for completeness + docs-data-update: + status: todo + comment: Docs PR 36055 (done, but mark todo for benchmark) + docs-known-limitations: + status: todo + comment: Partial in 36087 but could be more elaborat + docs-troubleshooting: + status: todo + comment: Check for completeness + docs-examples: + status: todo + comment: Check for completeness + ## Platinum + async-dependency: done + inject-websession: done + strict-typing: done diff --git a/script/hassfest/quality_scale.py b/script/hassfest/quality_scale.py index 734c6d57fafbd..4af580dca8417 100644 --- a/script/hassfest/quality_scale.py +++ b/script/hassfest/quality_scale.py @@ -819,7 +819,6 @@ class Rule: "plaato", "plant", "plex", - "plugwise", "plum_lightpad", "pocketcasts", "point",