homeos/app/Models
HomeOS Bootstrap d10172ac26 feat(automations): trigger→condition→action engine with cooldown + dry-run
- AutomationEngine: state_change + time triggers, cooldown debounce, dry-run
  logs instead of switching (H5), actions switch via DeviceCommandService
  (source=automation, audited H1) or notify via log.
- EvaluateAutomations: queued listener on DeviceStateChanged (keeps ingest
  fast, H2). automations:tick command scheduled every minute for time rules.
- CreateAutomation modal (wire-elements) wired to Automations index; DE/EN
  keys (R16). dry_run column migration + model cast.
- AutomationTest: 6 cases (trigger match, mismatch, cooldown, dry-run,
  time tick, disabled). Full suite 23 green; 11/11 tabs clean (R12).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 01:11:02 +02:00
..
Concerns Home dashboard + Host tab: device state & warnings, server status split out 2026-07-17 21:20:38 +02:00
Automation.php feat(automations): trigger→condition→action engine with cooldown + dry-run 2026-07-18 01:11:02 +02:00
Command.php Phase 3: MQTT ingest — Mosquitto bus, Shelly driver, live device state 2026-07-17 22:51:14 +02:00
Device.php Fix R15: per-device MQTT ACLs, monotonic presence, real-device online semantics 2026-07-17 23:08:29 +02:00
DeviceState.php Fix R15: reject out-of-order MQTT state updates (concurrency) 2026-07-17 23:01:32 +02:00
DiscoveryFinding.php All sidebar tabs are real pages (zero console errors) 2026-07-18 00:16:16 +02:00
Entity.php Tablet control panel: touch tiles, drag-reorder, light colour modal 2026-07-18 00:58:24 +02:00
Metric.php Charts: Chart.js MQTT + host traffic on the Host page 2026-07-18 00:40:32 +02:00
Person.php Phase 5: UniFi presence — poll, person↔client mapping 2026-07-18 00:31:32 +02:00
Room.php Home dashboard + Host tab: device state & warnings, server status split out 2026-07-17 21:20:38 +02:00
User.php Phase 1: bootstrap — Docker stack, Laravel 13, design system, auth 2026-07-17 21:06:20 +02:00