Treatment mode check is not done in Voltages.c, so ALARM_ID_HD_AC_POWER_LOST will be set there in addition to ALARM_ID_HD_AC_POWER_LOST_IN_TREATMENT here. Is this the expected behavior?
This check for _IN_TREATMENT may need to be added to Valves.c ALARM_ID_HD_AC_POWER_LOST check from recent bug fix. Both look to be checked in every case. Is this flag used independently anywhere?
Need to be careful with these. These functions are currently resetting the POST functions to start at beginning, but also need to reset ANY variables that the POST functions use/set (not override variables though). Also, since we are not re-initializing everything like a true reset does, we need to make sure that these modules are setup to restart or resume (whichever is more appropriate for the module) after POST completes if the module is in any way interrupted/deferred by POST or competing with POST for a resource/driver (e.g. RTC or NV-Data).