Hi Buzz !
In fact, a french developper did a good job at writing a software that can manage MaximDL, PHD2, FocusMax, etc and manage a whole imaging session with ALOT of options everywhere, that can lead to a quite complex workflow... but still not that thing, though... but I imagine that if most of the objects involved in a sequence would be exposed in an API, we could simply script that kind of things in a session...
Your approach to the problem is an interesting path ! Is there a way in a script called in an event to abort a sequence or to abot the current target ? This could be a way to check the conditions in the begining of each target and if the target has already passed the limit of the altitude max we want to image, then it goes to the next target in the sequence, etc...