You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
What's new
Feature detection (eg4-xi8)
InverterFeatures.from_family(family, device_type_code=None) — resolve the canonical family-default capability set from a model family (with an optional device type code). A matching code is authoritative; unambiguous families (EG4_OFFGRID, EG4_HYBRID) use a representative code; ambiguous LXP (EU three-phase vs LB split-phase) and UNKNOWN return None so callers can fall back conservatively. This lets the eg4_web_monitor integration source feature capabilities from pylxpweb instead of a duplicate hand-rolled table.
Dead-code cleanup (eg4-fsh, from 0.9.x main)
Removed the shadowed/unreachable registers.py module (superseded by the registers/ package).
Documented the weekly (7-day) schedule register layout (regs 500-723) as authoritative reserved definitions, gated by reg 233 bit 3 vs the live daily 3-period schedule (regs 68-89).
Validation
Full suite: 2025 passed. ruff + mypy --strict clean. Adversarial review: no logic issues.