# 2026-07-22 — HA: incydent dwóch mózgów, cutover ken, archiwum legacy

## Odkrycie

Recon pod projekt configs-as-code ujawnił, że repo wskazywało złą maszynę jako
"ken": kontener `homeassistant5` na piha to instancja sprzed migracji (HA
2026.4.3, location_name "KEN", konta całej rodziny), a prawdziwy dom to HAOS
na dedykowanym RPi4, LAN 192.168.31.7 (potwierdzone: observer :4357, HACS,
118 automatyzacji, ingress ha.kapala.org).

Obie instancje działały RÓWNOLEGLE i obie były podpięte do MQTT na piha.
Dowody dublowania triggerów (last_triggered z restore_state obu instancji):
`mirror_on` 04:30 na obu, `gniazdka_w_lazience_on` 05:00 na obu,
`turn_on_led_nad_blatem_1` 12:53 na obu z tego samego fizycznego przycisku.
Wyjaśnia obserwowane od dawna anomalie ("samo się przełącza", kaprysy
przycisków). Stan trwał prawdopodobnie od migracji domu na RPi4.

Fałszywa hipoteza po drodze (odrzucona przez weryfikację): "kontener to
martwa pozostałość" — obalona przez świeże last_triggered i mtime
automations.yaml. Verify-before-fix uratował przed ślepym stopem, który
wyłączyłby m.in. automatyzacje przycisków i harmonogramy łazienki.

## Wykonane

1. `task/ha-cutover-instances` (77d55ca): instances.yaml — ken = 31.7/api,
   ken-legacy = kontener piha/docker-exec (status: archived); DESIGN.md
   sekcja "Incident log"; README archiwum; backlog: przepięcie
   ha-diag-agent, procedura wygaszenia, adapter api.
2. `task/ha-import-legacy` (970b8cc, po rebase na master): pełny import
   archiwalny ken-legacy — 60 automatyzacji, 5 scen, 1 skrypt, blueprinty,
   dashboardy, rejestry (85 plików). Idempotencja potwierdzona, gitignore
   szczelny (grep pod sekrety czysty), round-trip tagów HA OK.
3. `docker stop homeassistant5` na piha (BEZ rm) — dom przeszedł na jeden
   mózg. Rollback: `docker start homeassistant5`.

## Otwarte / obserwacja

- Do 2026-07-29: obserwacja, czy nic w domu nie polega na legacy. Braki →
  logika w `services/home-assistant/config/ken-legacy/automations/`,
  odtwarzanie wyłącznie przez repo na 31.7.
- ha-diag-agent na piha celuje w martwy localhost:8123 — spodziewany alert;
  przepięcie na 31.7 w backlogu (wymaga tokenu diag_agent na 31.7).
- Adapter api w import.sh dla ken + user deploy_agent i token na 31.7 —
  pierwszy task następnej sesji.
- Po 2026-07-29: decyzja o `docker rm` i sprzątnięciu configu na piha.
