Bläddra i källkod

Add quality_scale.yaml, to show status against HA targets

Although a custom integration has a more relaxed set of rules, it is
still useful to aim for a quality level that would be accepted upstream
if it did not compete with Tuya's own contributed integration.

The per-device config isn't really scalable so that is not happening,
but still good to aim for quality now that HA has an objective scale.
Jason Rumney 1 år sedan
förälder
incheckning
dc408d38ec
1 ändrade filer med 133 tillägg och 0 borttagningar
  1. 133 0
      quality_scale.yaml

+ 133 - 0
quality_scale.yaml

@@ -0,0 +1,133 @@
+rules:
+  # Bronze
+  config_flow: done
+  test-before-configure: done
+  unique-config-entry: done
+  config-flow-test-coverage:
+    status: tbd
+    comment: Not measured since SonarCloud github integration broke
+  runtime-data:
+    status: todo
+    comment: issue #1884
+  test-before-setup:
+    status: todo
+    comment: handle in connection rewrite
+  appropriate-polling:
+    status: todo
+    comment: handle in connection rewrite (possibly by eliminating polling)
+  entity-unique-id: done
+  has-entity-name: done
+  entity-event-setup:
+    status: todo
+    comment: issue #1916
+  dependency-transparency: done
+  action-setup:
+    status: not applicable
+    comment: actions not implemented
+  common-modules:
+    status: partial
+    comment: entity done, coordinator in connection rewrite
+  docs-high-level-description:
+    status: todo
+    comment: need link to Tuya
+  docs-installation-instructions:
+    status: tbd
+    comment: to review
+  docs-removal-instructions:
+    status: todo
+    comment: need adding
+  docs-actions:
+    status: not applicable
+    comment: actions not implemented
+  brands:
+    status: tbd
+    comment: currently using Tuya logo, do we need a unique one?
+  # Silver
+  config-entry-unloading: done
+  log-when-unavailable:
+    status: partial
+    comment: log when coming back online may be needed
+  entity-unavailable:
+    status: tbd
+    comment: need review to ensure logic is correct
+  action-exceptions:
+    status: not applicable
+    comment: actions not implemented
+  reauthentication-flow:
+    status: todo
+    comment: cloud and local_key
+  parallel-updates:
+    status: todo
+    comment: especially for hubs
+  test-coverage:
+    status: tbd
+    comment: unmeasured since SonarCloud github connection stopped working
+  integration-owner: done
+  docs-installation-parameters:
+    status: tbd
+    comment: needs review
+  docs-configuration-parameters:
+    status: tbd
+    comment: needs review
+  # Gold
+  entity-translations:
+    status: partial
+    comment: issue #1708
+  entity-device-class: done
+  devices: done
+  entity-category: done
+  entity-disabled-by-default:
+    status: todo
+    comment: attribute for controlling this needed
+  discovery:
+    status: todo
+    comment: local and cloud
+  stale-devices:
+    status: todo
+    comment: need to implement async_remove_config_entry_device
+  diagnostics: done
+  exception-translations:
+    status: todo
+    comment: review which exceptions escape through to the user
+  icon-translations:
+    status: partial
+    comment: issue #1708
+  reconfiguration-flow:
+    status: todo
+    comment: how is this different than options flow?
+  dynamic-devices: done
+  discovery-update-info:
+    status: exempt
+    comment: until discovery implemented
+  repair-issues:
+    status: todo
+    comment: review what can be raised
+  docs-use-cases:
+    status: todo
+    comment: due to breadth of support, what can be documented?
+  docs-supported-devices: done
+  docs-supported-functions:
+    status: tbd
+    comment: needs review
+  docs-data-update:
+    status: tbd
+    comment: needs review
+  docs-known-limitations:
+    status: tbd
+    comment: needs review
+  docs-troubleshooting:
+    status: tbd
+    comment: needs review
+  docs-examples:
+    status: todo
+    comment: what examples to use?
+  # Platinum
+  async-dependency:
+    status: blocked
+    comment: tinytuya is sync, no good standalone alternative
+  inject-websession:
+    status: exempt
+    comment: relevant to http services only
+  strict-typing:
+    status: todo
+    comment: a lot of legacy codebase