TL;DR: Python 2 still busted.
Any idea why this was ever included in Python 2 as a ‘feature’?
There are other languages that also define a total order for their terms. Erlang for example: http://erlang.org/doc/reference_manual/expressions.html#id80214
I this particular example, I blame more the lenient error handling. That an undefined variable has length, or is equivalent to the empty string are much more serious WATs than having a comparison operation that works in the whole term space. At least that is defined and has sound properties.
Though I agree, I’ll also say that those are really django WATs, not Python WATs.