v0.9.31
Register-contract-debt cleanup (clears KNOWN_UNREACHABLE_HA_KEYS to empty).
- eg4-478: fully wire PV4-6 (V23 extended) energy — read group,
pv_string_countgating,InverterEnergyDatafields, totals. - eg4-8oq: de-alias load energy — real
Eload(regs 171/172) →load_energy_*; AC-chargeErec(regs 32/48-49) → its ownac_charge_energy_*fields;output_powerread group widened to read the 32-bitEload_all. - eg4-mu0 / eg4-5c5: drop aspirational
ha_sensor_keys onbattery_status_invandbms_fault_code/bms_warning_code(no consumer; the friendlier/merged sources are used instead).
Behaviour-neutral for the EG4 Home Assistant integration (849 integration tests pass). Codex adversarial review: SHIP.