Fanka_osc.py joint limit is not being force if the joint limit is close to 2pi?

I am using Preview 3.

I am trying to test the joint limit, I expect the robot to stop moving once the limit has been reached (to be enforced by physics), but it is not the case.

I only changed the target position, so it will draw a circle in the XY plane.
franka_osc.py (8.5 KB)

With default Franka URDF, it works fine, the base joint will be stuck once the limit has been reached.
Animation

However, if we change the joint limit of panda_joint1 to 2*pi as:

Then, the rotation ignores the joint limit and rotates unlimitedly.
Animation1

If it is lower=“-6.2831” upper=“6.2831”, then, it will break after 2 rounds.

Originally, I was trying to use UR5, which has 2*pi as ranges, here I am just using Franka as an example.

Do you have a clue of why this is the case?
I also tried with franka_attractor.py to draw a circle in the XY plane, the joint limit seems not to work at all.

Thank you!