Repository navigation
r202639: breaker position range - #201
Merged
Merged
Conversation
The manifest placed three single-space circuits on spaces 1 to 3, which are outside the breaker positions a panel of the reference's model has. They move to 9, 10 and 11, marked as a third deliberate divergence from the emitter's example, and parent_child_tree.json is recaptured from the pinned ebus-panel-sim 0.8.0. Only those three info/spaces values and the wall-clock $description versions change. The tests that pinned the old space, or added a circuit at a position outside the model's range, follow. Part of the spanos3/r202639/03 batch 2 work.
… for an unknown model SpanPanelSnapshot.first_position and last_position say which breaker positions the panel has. They come from the reported model through PANEL_POSITIONS_BY_MODEL, and from the occupied spaces where the model is not known. They are only a range: nothing is filled in over it. Where a panel's circuits occupy spaces outside its model's range, the range stays the table's and the adapter warns once for that panel, naming the model, the range and the occupied extremes. A model reported as UNKNOWN names no model. It reads as None, sizes the panel 0 without a warning on every snapshot, and is not model drift. SpanPanelSnapshot.publishes_solar_roles is True where any circuit declares connection/feeds-role. The acceptance tests these satisfy leave the expected-failure registry. Part of the spanos3/r202639/03 batch 2 work.
Resolved: SchemaOneAdapter.__init__ keeps the per-device grace state that replaced the feed-wait fields, and adds the once-per-panel positions flag.
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.
r202639: the snapshot reports the panel's breaker position range, and a model reported as
UNKNOWNreads as no model.SpanPanelSnapshot.first_position/last_position(int | None): the reported model's range fromPANEL_POSITIONS_BY_MODEL; the occupied range where the model is not known;Noneon the flat schema. Only a range: no position is filled in. A panel whose circuits occupy spaces outside its model's range keeps the table's range and is reported once at WARNING.info/modelUNKNOWNreads asmodel = None, sizes the panel 0 without a per-snapshot warning, and is not model drift.SpanPanelSnapshot.publishes_solar_roles:Truewhere any circuit declaresconnection/feeds-role.Checks:
pytest tests -q: 1550 passed, 7 skipped, 14 xfailed (40 new; 6 registry rows removed).pre-commit run --all-files: all hooks pass (ruff, black, mypy, pylint, bandit, vulture, coverage 96.53%).