I don't know if this is correct, but the chatgpt-codex-connector bot just sent me this suggestion after I updated my branch
In src/driver/drv_ntp_events.c:
DST fix drives sunrise events out of range
When fix_DSTforEvents shifts all future sun events by hours, it simply does e->hour += hours (line 179). If the DST change subtracts an hour (e.g. summer→winter) any sunrise close to midnight immediately becomes negative (−1) and NTP_RunEventsForSecond will never match it against ltm->tm_hour, so that event is lost until the schedule is recreated. The inverse happens for hours ≥24. Wrap the result back into 0 23 (and adjust the day when crossing midnight) so that sunrise/sunset handlers still run after a DST switch.
In src/driver/drv_ntp_events.c:
Code: C / C++
DST fix drives sunrise events out of range
When fix_DSTforEvents shifts all future sun events by hours, it simply does e->hour += hours (line 179). If the DST change subtracts an hour (e.g. summer→winter) any sunrise close to midnight immediately becomes negative (−1) and NTP_RunEventsForSecond will never match it against ltm->tm_hour, so that event is lost until the schedule is recreated. The inverse happens for hours ≥24. Wrap the result back into 0 23 (and adjust the day when crossing midnight) so that sunrise/sunset handlers still run after a DST switch.