NDM Signage Agent 0.1.17 - OPRAVNY BALICEK

Oprava 10.09.2026: kazde add_signal_watch ma odpovidajici remove_signal_watch.
Pri ukonceni dekoderu se odpoji callbacky sběrnice a appsinku. Uklid plati
pro prechody, chyby a ukonceni vystupu. Trvala KMS pipeline zustava pri
bezne zmene media spustena. Nezvysuje se limit deskriptoru.

Patch vyzaduje presny zdroj agenta 0.1.16 a shodnou systemd jednotku.
Spusteni patche: sudo bash ./install.sh
Plny instalator: sudo bash ./install.sh --server http://ADRESA_SERVERU
Na novem RPi nejdrive vytvor prehravac v Signage podle jeho IP.
Plny instalator je pro Raspberry Pi 5, Raspberry Pi OS 13 arm64.
Instaluje zavislosti z repozitaru (vyzaduje internet), uzivatele, sluzbu
 a registraci. Pri upgradu bez --server zachova konfiguraci.
Cache medii a registracni stav se nemazou. Pri instalaci restart sluzby
kratce prerusi obraz. Pred vymenou se vytvori zaloha; chyba po zaloze
spusti rollback. Systemove balicky instalovane apt se nevraceji.
Rollback: sudo bash ./rollback.sh /root/ndm-signage-agent-backup-...
Kontrola: sudo bash ./verify.sh

Overeni po instalaci: stejny playlist na obou HDMI nechat opakovat
alespon hodinu a znovu pres noc. Pocet FD muze kolisat mezi foto/video,
ale pri stejne fazi playlistu nesmi soustavne rust.
Diagnostika: sudo python3 ./fd-report.py

Testy v priprave: Python/shell syntaxe, modelove testy zivotniho cyklu
vcetne chyb a opakovaneho uklidu. Skutecny GStreamer/DRM a dlouhodoby
beh na RPi nejsou v tomto prostredi dostupne; nutne overit po nasazeni.
Oprava se netyka vykonu dvou 4K videi ani automatickeho prevodu na serveru.
