If you don't want to be bothered by edge cases, then
follow the actual rules!
In this case, the actual rules are easy, because the things that end the spell early on not based on mere opinion (such as what an individual DM 'feels'
should happen, or how that DM would've written the spell if
they had designed the game), but on fact.
The facts are:-
* make an attack (defined in the rules as making an attack roll, with specific exceptions for grapple/shove)
* cast a spell that affects an enemy creature (the game defines what spells are, what creatures are, and what enemies are)
Simple!
No arguments, no edge cases, no sulking because the DM is making stuff up to nerf you, no complaining because enemy casters are using their spells in a way that you cannot because the DM is making stuff up as they go along; it's just there in black and white.
Spells do exactly what they say on the tin. What a player or a DM thinks they
aught to do is neither here nor there.
Imagine if you were playing chess and say half-way through a game that knights should not be able to jump over other pieces because you think it's stupid because
obviously a horse carrying a mounted knight should not be able to jump so high over an enemy that the enemy cannot attack them! Imagine your opponent says that pawns are shorter than average so knights should be able to jump over pawns. Imagine then getting into a two hour argument about which pieces knights can and cannot jump over.
Remember that week of chess-playing time wasted in the full-blown hissy-fit shouting match about whether or not one knight can jump over another knight? Surely they are too tall? Surely they can jump too? Not if it's not ther turn! Should we bring in Attacks of Opportunity? No! Yes!
Obviously!
Or....y'know....
play by the damn rules!
[/rant]