0.10.13 — bug-hunt round: bypass_infinite naming, SD II device triggers
No breaking changes. Requires boschshcpy==0.4.11.
Findings from a broad bug-hunt round across the integration and the
boschshcpy library it depends on:
switch.py: thebypass_infiniteswitch (Shutter Contact II) never
showed its translated name ("Bypass Never Expires") — it displayed the raw
internalattr_name("BypassInfinite") instead. The translation-key guard
added forbypass(#342) only applied when the switch had noattr_name
disambiguator;bypass_infinitehas both atranslation_keyand an
attr_name(needed to distinguish its unique_id from the siblingbypass
switch on the same device), so it fell through the guard. Fixed so the
translation applies whenever atranslation_keyis present, independent
ofattr_name.device_trigger.py: Smoke Detector II's device-trigger subtype list
in the Automations UI reused gen-1 Smoke Detector's subtypes
(INTRUSION_ALARM/SECONDARY_ALARM/PRIMARY_ALARM), but SD II's
AlarmService.Stateactually reports
INTRUSION_ALARM_ON_REQUESTED/INTRUSION_ALARM_OFF_REQUESTED— the real
"alarm triggered" subtype was never selectable from the UI trigger picker
for SD II owners (hand-written YAML using the correct string still
worked). NewALARM_EVENTS_SUBTYPES_SD2constant, translated to all 30
languages.boschshcpy0.4.11:ChildProtectionService.childLockActivecrash on
a partial poll snapshot omitting the field, and an async request timeout
not wrapping intoSHCConnectionError— see that project's own changelog.