Wykrywanie anomalii

Cześć!

Dzisiaj spotkała mnie interesująca przygoda - moja automatyzacja miała race-condition, czyli przypadek, w którym jeden proces czasami idzie wcześniej niż drugi, a czasami nie. Kwestia dotyczyła czujki oraz sterowania dwoma źródłami światła i - jak się później okazało - dochodziło tam do nieskończonej rekurencji. Przypadkiem udało mi się wprowadzić system w stan, w którym zgłupiał i zaczął mrugać światłami jak oszalały.

Zacząłem się zastanawiać jak uniknąć, albo wykryć takie sytuacje w przyszłości? Nie chciałbym pewnego dnia zauważyć, że światło w piwnicy mi od tygodnia mruga 3 razy na sekundę.

Czy ktoś już może natrafił na ten problem i opracował jakiś “monitoring sensownego zachowania sytemu”?

Mam to samo z oczyszczaczem powietrza. Nie wiem od czego zależy ale raz na miesiąc potrafi złapać jakąś przywieszke i zmieniać stan oczyszczcza na wszystkie możliwe stany w ciągu 1 sekundy, Automatyzacja Node -redowa.
Śledziłem stan kiedy to się dzieje od czego zależne ale od niczego - nie wiem. Już 2 razy taki przypadek miałem a mam go od pewnie pół roku.