diff --git a/homeassistant/components/roborock/quality_scale.yaml b/homeassistant/components/roborock/quality_scale.yaml new file mode 100644 index 00000000000..845d77d0fbe --- /dev/null +++ b/homeassistant/components/roborock/quality_scale.yaml @@ -0,0 +1,102 @@ +rules: + # Bronze + action-setup: done + appropriate-polling: + status: todo + comment: | + The device currently polls every 30 seconds, which is a bit high when idle. + We should consider dynamic polling intervals (e.g. when cleaning) and + separate cloud vs local intervals. + brands: done + common-modules: done + config-flow: + status: todo + comment: Not all fields have a data_description. + config-flow-test-coverage: done + dependency-transparency: done + docs-actions: + status: todo + comment: | + The documentation for `roborock.get_maps` should be updated so it is next + to the other actions rather than only an example. All actions should be + updated to use the simple table format. + docs-high-level-description: done + docs-installation-instructions: todo + docs-removal-instructions: todo + entity-event-setup: done + entity-unique-id: done + has-entity-name: done + runtime-data: done + test-before-configure: + status: done + comment: The config flow verifies credentials and the cloud APIs. + test-before-setup: done + unique-config-entry: done + # Silver + action-exceptions: todo + config-entry-unloading: done + docs-configuration-parameters: todo + docs-installation-parameters: todo + entity-unavailable: done + integration-owner: done + log-when-unavailable: done + parallel-updates: todo + reauthentication-flow: todo + test-coverage: done + # Gold + devices: done + diagnostics: done + discovery: + status: todo + comment: Determine if these devices can support discovery + discovery-update-info: + status: exempt + comment: Devices do not support discovery. + docs-data-update: + status: todo + comment: | + The docs talk about device communication works (cloud vs local), but does + not yet describe data flow (e.g. polling). We should move into a separate + section. + docs-examples: todo + docs-known-limitations: + status: todo + comment: Documentation does not describe known limitations like rate limiting + docs-supported-devices: todo + docs-supported-functions: + status: todo + comment: Mostly complete, but some documentation is outdated (e.g. maps/images) + docs-troubleshooting: + status: todo + comment: | + There are good troubleshooting steps, however we should update the "cloud vs local" + and rate limiting documentation with more information. + docs-use-cases: + status: todo + comment: | + The docs describe controlling the vacuum, though does not describe more + interesting potential integrations with the homoe assistant ecosystem. + dynamic-devices: todo + entity-category: done + entity-device-class: done + entity-disabled-by-default: + status: exempt + comment: There are no noisy entities. + entity-translations: done + exception-translations: todo + icon-translations: todo + reconfiguration-flow: todo + repair-issues: + status: todo + comment: The Cloud vs Local API warning should probably be a repair issue. + stale-devices: + status: todo + comment: | + The integration does not yet handle stale devices. The roborock app does + support deleting devices and this is a gap #132590 + # Platinum + async-dependency: todo + inject-websession: + status: todo + comment: Web API uses aiohttp but does not yet inject web session. + strict-typing: todo diff --git a/script/hassfest/quality_scale.py b/script/hassfest/quality_scale.py index 9ddce29a4f3..65e9d4ed9cc 100644 --- a/script/hassfest/quality_scale.py +++ b/script/hassfest/quality_scale.py @@ -855,7 +855,6 @@ INTEGRATIONS_WITHOUT_QUALITY_SCALE_FILE = [ "risco", "rituals_perfume_genie", "rmvtransport", - "roborock", "rocketchat", "roku", "romy",