I mean, why not just have HA just control a hardware thermostat that has different mode settings (home, away, etc.)? Plenty of them exist and its, honestly, easier than trying to make HA into a thermostat.
I've done it in "pure" HA due to specific requirements and do not recommend it. Reliability has not been a problem but everything else was. You'd probably need a custom thermostat software component (as the HA built in one is limited), a wi-fi connected switch (like a Shelly), a high amp relay (if heating or controlling an AC due to startup load) and a low latency temp sensor (most have a 10+ minute delay or 2 degree F delay, I found Govee Bluetooth sensors to work well). Then you'd still probably want a remote control or a physical control panel/dashboard. The IR remotes for ACs are absurdly difficult to decipher (I never succeeded) and there's no good Zigbee remotes I found (the best I found is the Yolink remote but that's not local). Dashboards either involve running a browser on some LCD on a wall or an e-paper display wired to esp-home. Making a dashboard in esp-home is like going back 40 years as everything is individual graphic components drawn one by one. It might annoy you (like it did me) enough to build an svg bashed dashboard creator, a renderer on your HA box and then use a dead PR's remote image loading support in esp-home.
edit: The only positive about my approach is that I was able to build a custom "feel like" temperature curve that combines temp and humidity. So I no longer wonder all the time why I'm feeling cold or hot despite the thermostat being set to the same thing as last week.
I mean, why not just have HA just control a hardware thermostat that has different mode settings (home, away, etc.)? Plenty of them exist and its, honestly, easier than trying to make HA into a thermostat.
Wel yes, that's exactly my point: when done like that there's a watchdog in place. My issue (or rather reluctantce to use it) is that HA and the likes provide as far as I'm aware no watchdog features for systems which don't yet have it. Think some hardware AND-style gate which is only going to apply HA's last state if, say, HA can prove it is up and running properly.
There isn't one because the by far most common failure case isn't "HA isn't running" but "the communication protocol isn't working." A watchdog must be on the device itself because otherwise it's basically useless for all intents and purposes. That said it also doesn't in my experience matter in like 99% of situations (a light stays on... who cares and you'll directly notice the issue with your eyes anyways) and for most of the rest you can just have HA send you a notification that it lost contact with some device for too long. You want notifications anyways because you cannot assume that a thermostat being on means the heater is on. If you need a heater to avoid a water pipe bursting then you should have a low temperature alert as well. The breaker may have blown, the relay may have broken or the heater's overheat fuse may have blown at some point.
I've done it in "pure" HA due to specific requirements and do not recommend it. Reliability has not been a problem but everything else was. You'd probably need a custom thermostat software component (as the HA built in one is limited), a wi-fi connected switch (like a Shelly), a high amp relay (if heating or controlling an AC due to startup load) and a low latency temp sensor (most have a 10+ minute delay or 2 degree F delay, I found Govee Bluetooth sensors to work well). Then you'd still probably want a remote control or a physical control panel/dashboard. The IR remotes for ACs are absurdly difficult to decipher (I never succeeded) and there's no good Zigbee remotes I found (the best I found is the Yolink remote but that's not local). Dashboards either involve running a browser on some LCD on a wall or an e-paper display wired to esp-home. Making a dashboard in esp-home is like going back 40 years as everything is individual graphic components drawn one by one. It might annoy you (like it did me) enough to build an svg bashed dashboard creator, a renderer on your HA box and then use a dead PR's remote image loading support in esp-home.
edit: The only positive about my approach is that I was able to build a custom "feel like" temperature curve that combines temp and humidity. So I no longer wonder all the time why I'm feeling cold or hot despite the thermostat being set to the same thing as last week.