I think Tibo is onto something with the float abs value. I had some rotating platforms, and I was trying to send events based on their rotation. Even though they rotated at a uniform rate ("rotate" action set to X degrees per frame), I noticed in the inspector that their rotation values would start at -90° [even though they were actually starting at 0], work their way to 0, then up to 270°, then jump to -270°, work their way to 90°, etc. Keep in mind only the numerical value was displaying like this, the platform continued to rotate smoothly as though going from 0° to 360°.
There's definitely something weird with the way Unity handles rotation values. In the end, what worked for me was ditching the "rotate" action. I added a float variable, added the amount I needed every frame, and then set the platform to set its rotation to that variable's value every frame as well. Not sure if this works for what you need but hopefully it helps give you some ideas!