Yes it is odd but the entire lua interpreter goes down if it sees any error in the code... You should actually get a warning message on the UI about it. Something like "error in scene lua or plugin". Would have been hard for us to know you had errors in other code! 
I just tried an experiment. I put some garbage into scene Lua for a scene. No error when saving the Lua or the scene--Vera isn't checking syntax at this point. No surprises there (although they could put it through
loadstring() and get immediate feedback on it from the underlying interpreter).
On Luup reload, as you said, scene Lua is completely botched for all scenes. Luup logs this fact in nice attention-getting red color in the log. But most informative is what Vera logs there: all of the scene Lua for every scene that has it,
and the startup Lua, are displayed as a single Lua fragment in the error message. So this tells us that Luup is making a giant string out of all of it, and pushing it into loadstring() in one go, rather than preparing each individually. This explains why a hard error in
any scene or startup Lua disables
all scene Lua and startup Lua. So...
Always look in your Vera log file if your scenes stop running. But then, this should go without saying. The Vera log is hard to sift through, but it's full of gold. It may be worth a squiz any time you're editing scene Lua, just to be sure.