>>413380164
aim constraints are wonky af, and will flip outside of a 180 degree window.
the upvector determines where this happens, so parent an empty object to your upper body and set it as the upvector, then move it around until things move the way you want them to.
Depending on the upvector you can also get things to rotate /a bit/ depending on the orientation, which can be useful when you're doing weirdo stuff