So if I limit objects scale (by a constraint) to minimum of 1 and maximum of 2 and start scaling it, it still manages to go over on inverting it self to negative values keeping the limits to -1 and -2. Checking "For Transform" does not help.
This is known essue, and now it has "To Do" status:
And this is one of two unsolved problems from 2018 TO DO animation list:
It's sounds easy, until you try to make it work on matrix transformations.