For me the current behaviour does not seem unreasonable as it resembles the order in which you write out loops outside a comprehension

That's true, but the main reason for having comprehensions
syntax in the first place is so that it can be read
declaratively -- as a description of the list you want,
rather than a step-by-step sequence of instructions for
building it up.

If you have to stop and mentally transform it into nested
for-statements, that very purpose is undermined.
Exactly.

Well, an argument that was often brought up on this forum is that Python should do things consistently, and not in one way in one place and in another way in another place, for the same thing.  Here it is about the order of loop execution.  The current behaviour in comprehension is that is ts being done the same way as in nested for loops.  Which is easy enough to remember.  Same way, everywhere.

-Alexander