WTH isn't scheduling a 'first class' part of HA?

By first class I mean part of the basics, along with automation, scripting and helpers.

I know nothing I will say here can’t be accomplished with a combination of automations, helpers and scripts - but the same could be said for a lot of things. So here goes.

Consider the scenario: I have a bunch of time based automations to start/stop my heating though a thermostat entity. And then I want to switch that off temporarily when somebody opens a door and leaves it open. I could use helpers or scenes to store a state - but what if when the door is closed the schedule I want means the heating should stay off? I have to start building in conditions and these need to match the schedule ive defined elsewhere.

I’m aware there’s a scheduling helper now, but that is just on or off and while it may make creating automations for the above simpler it still requires quite a lot of logic and testing when you deviate from what youve scheduled - and i’ve found that the Wife Acceptance Factor for anything to do with heating is extremely low.

There’s also a scheduling custom component - but I dont think this has any concept of ‘resume’ and I understand it’s not written in a HA compliant way so perhaps isn’t a great long term solution.

So, WTH do I want? I want a tab next to automations called ‘Schedules’. Yes in many ways it would just be time triggered automations, but I’d want it to combine those time triggers, with some sort of state engine - so if the schedule is enabled, and its a certain time then the entities its controlling should be put in the specified state. It could be similar to how scenes are defined - so rather than calling services in it you set the desired target state and HA takes care of the rest. Be that lighting, heating, or whatever.

This, coupled with ‘schedule.pause’ and ‘schedule.resume’ services would make so many time related functions much simpler IMO.

I’m aware I’m asking for a lot - thanks for reading!

(Awaiting the inevitable close due to being suggested by someone else already).