homeos/tests/Feature
HomeOS Bootstrap da249022cd fix(shelly): round-trip light brightness/rgb; don't hijack a reused IP (R15)
Codex R15 on the local transport:
- [P2] A light command set brightness/rgb but the normalizer stored only `on`,
  so the poll dropped them and the UI/automations went stale. The light state
  now carries brightness + rgb when the device reports them.
- [P2] ShellyLocalOnboarder matched an existing row by IP BEFORE the Shelly id,
  so a DHCP-reassigned IP could let one Shelly overwrite an unrelated device.
  Now matches by stable Shelly id first and reuses an IP row only when it's the
  same (or an unidentified) device.

+3 tests (light attrs, housekeeping dropped, IP-reuse no hijack). Suite 71 green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 09:51:56 +02:00
..
AddonTest.php fix(addons): atomic Ring device creation + invalidate ingest gate cache (R15) 2026-07-18 02:01:45 +02:00
AuthTest.php Phase 1: bootstrap — Docker stack, Laravel 13, design system, auth 2026-07-17 21:06:20 +02:00
AutomationTest.php fix(automations): honor conditions + atomic cooldown claim (R15) 2026-07-18 01:15:22 +02:00
DeviceInputRoleTest.php fix: preserve raw input value on role/invert change; strict isOnline (R15) 2026-07-18 09:03:00 +02:00
DeviceManagementTest.php feat(devices): auto-detect host IP, discovery dedup, delete + rescan 2026-07-18 09:34:07 +02:00
HomeTest.php Fix R15: per-device MQTT ACLs, monotonic presence, real-device online semantics 2026-07-17 23:08:29 +02:00
MqttTest.php fix: preserve raw input value on role/invert change; strict isOnline (R15) 2026-07-18 09:03:00 +02:00
RingIngestTest.php fix(addons): atomic Ring device creation + invalidate ingest gate cache (R15) 2026-07-18 02:01:45 +02:00
ShellyHttpTest.php fix(shelly): round-trip light brightness/rgb; don't hijack a reused IP (R15) 2026-07-18 09:51:56 +02:00
ShellyNormalizerTest.php fix(shelly): round-trip light brightness/rgb; don't hijack a reused IP (R15) 2026-07-18 09:51:56 +02:00