Well, now, this sort of question is not that hard to answer.
Take a look at lbaselib.c.
I think we can take "thought assert() called error()" to mean "assumed assert()...".
In which case, it's merely as statement of expectation and inadvertently also a statement
of how seldom it comes up?
My assumption is that a change in behavior here might be a problem for lots of existing code?
Also, rewriting assert in C (if speed is super-critical) wouldn't be hard and wrapping it is trivial. So as in all things lua, if you don't like it... :)