Repository navigation
Bronze quality scale: runtime-data, test-before-setup, quality_scale.yaml - #2
Merged
Merged
Conversation
- runtime-data: controller created in __init__.async_setup_entry, stored on entry.runtime_data (typed InfraredClimateConfigEntry); climate.py reads it. - test-before-setup: raise ConfigEntryNotReady if the selected IR emitter isn't available. - add quality_scale.yaml documenting Bronze rule status (done/exempt/todo + reasons). - strings.json already complete (steps/errors/abort). Package still imports HA-free (controller unit-testable without HA). 75409 unit tests pass; all 65 protocols re-verified live on HA 2026.6.3 under infrared_climate. Remaining Bronze (follow-ups): config-flow test coverage, brands, docs, PyPI publish.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Starts the Bronze quality-scale work for the
infrared_climateintegration (per #1415 it's the path to core).Code rules implemented
__init__.async_setup_entryand stored onentry.runtime_data(typedInfraredClimateConfigEntry);climate.pyconsumes it.async_setup_entryraisesConfigEntryNotReadyif the selected IR emitter entity isn't available yet (HA retries).Package still imports without Home Assistant (the
controllerstays unit-testable), HA-only bits are lazy-imported.Verification
pytest: 75409 passed, 0 failed.infrared_climatewith runtime-data + test-before-setup.Remaining Bronze (tracked in quality_scale.yaml + ROADMAP)
config-flow test coverage (pytest-homeassistant-custom-component) ·
brandssubmission · integration docs · publishpyhvac-irto PyPI (dependency-transparency).