I do not see several ways to “close” a plugin UI window that results in different behaviour (apart IIUC from the very non-obvious idea to switch to generic UI, that almost no user will think of). The only other way to “close” the window is to remove the plugin or close the session, which obviously should destroy the UI along with the DSP instances. BTW, in my home I have “light” switches that actually control a socket (the background of it I made a different color to distinguish them).
Again, the difference is about what is “closing” a window (as opposed to “quitting” for instance). When I “close” a drawer, its contents are hopefully not destroyed. I know that example is more a play on words than a real argument but you get my point: you shouldn’t assume that because you affect some connotation to a word it will be the same for others.
And no, saying to anybody they (or their decision) is stupid is not a compromise at all. Arguing that it should be changed to match other DAWs is legit (though in some cases one of Ardour’s strengths is doing differently than all other DAWs), and remember that I am not against that (I’m in fact leaning towards matching other DAWs and the handling of LV2 UIs, but my expertise is not enough for you to care about my opinion).
My experience with DAWs (not as long or thorough as yours) is that Ardour devs (and mixbus devs) are very helpful, far more than Avid (that mostly ignore anything because they can), or even back in the time the people of Logic Audio. That’s more from an user pov than a plugin writer, so YMMV. But I don’t expect Protools devs to really care about a random plugin author, esp. since there is an overwhelming number of them.
I do not think that stopping the redraw when invisible should mean that you bitblt a stale UI. Just that you actually rebuild it when going visible. It does not feel like an “horrible” hack, especially since your alternative is relying on some interpretation of the scope of “effEditor*” by DAWs that is not explicit in the spec, thus subject to change as they see fit. Of course, they have probably settled on that interpretation, not because that is the right thing to do or even because anything else is thoroughly stupid, but just because that is the interpretation that broke the fewest plugins.