Odtworzone graceful shutdown pimirror (audyt pkt 14, jedyna realna strata
migracji): nowa automatyzacja "Pimirror: graceful shutdown przed odcieciem
zasilania" (1785164185794.yaml) wciska przycisk shutdown przed twardym
cieciem zasilania o 23:35, dajac istniejacemu ACK-flow ("Magic Mirror OFF on
ACK") szanse zamknac Pi grzecznie zamiast zawsze odcinac prad na sile.
Zaadaptowane wzgledem legacy: entity_id zamiast device automation, oryginalna
encja button.rpi_pimirror_* jest dziś unavailable — uzyto aktualnej
button.rpi_pimirror2_* (potwierdzone w storage-export/ken).
Spisana konwencja na przyszlosc (audyt pkt 17) w DESIGN.md: entity_id zamiast
device automations, alias PL z prefiksem funkcjonalnym, description z
"managed-by: repo" — bez hurtowej migracji istniejacych automatyzacji.
Backlog: deploy.sh --delete (kasacje wspolnym torem dry-run/LIVE zamiast
recznych curl DELETE) i brakujacy trigger na zmiane input_number.klima_salon_tolerancja
w automatyzacji ON klimy.
Walidacja: normalizator round-trip (byte-identical), 4 pakiety testow offline
(normalize/split/deploy_api/import_api) pass, dry-run deploy.sh na zywym ken
(check_config valid, brak driftu) — bez LIVE deployu.
16 lines
1.4 KiB
YAML
16 lines
1.4 KiB
YAML
actions:
|
|
- action: button.press
|
|
target:
|
|
entity_id: button.rpi_pimirror2_rpi_shutdown_pimirror2_command
|
|
alias: 'Pimirror: graceful shutdown przed odcięciem zasilania'
|
|
conditions:
|
|
- condition: state
|
|
entity_id: switch.tasmota_2
|
|
state: 'on'
|
|
description: 'Wciska przycisk graceful-shutdown pimirror2 przed twardym odcięciem zasilania o 23:35 ("Mirror OFF"), żeby Pi zdążył się bezpiecznie wyłączyć zanim zgaśnie prąd. Istniejący automat "Magic Mirror OFF on ACK" (MQTT dom/pimirror-ack "went-halt") odcina zasilanie switch.tasmota_2 ok. 2 min po ACK — "Mirror OFF" 23:35 zostaje jako pas bezpieczeństwa, gdyby ACK nie przyszedł (Pi zawieszony/offline). Odtworzone z ken-legacy (automations/1703105565821.yaml "Turn OFF pimirror"): legacy używał device automation (press przycisku + delay 1 min + turn_off switch bezpośrednio, bez zapisanego triggera — prawdopodobnie wywoływane ręcznie); tu: entity_id zamiast device_id, bez duplikowania wyłączenia zasilania (robi to już istniejący ACK-flow), trigger czasowy zamiast braku triggera. Adaptacja encji: legacy/oryginalny button.rpi_pimirror_dom_rpi_shutdown_pimirror_command jest unavailable na ken (fixtures/ken-states-2026-07-27.yaml) — użyto aktualnego button.rpi_pimirror2_rpi_shutdown_pimirror2_command (potwierdzone w storage-export/ken/core.entity_registry.yaml). managed-by: repo'
|
|
id: '1785164185794'
|
|
mode: single
|
|
triggers:
|
|
- at: '23:28:00'
|
|
trigger: time
|