Aha: it's because we still stack the secondary task underneath the
primary task, which under joint limits has been stacked with the
J_limit. That totally eats up whatever DOF might otherwise have been
left over for the secondary task. The solution could be to change the
stacking order when we added joint limits, and keep the secondary
unstacked wrt the jlimit+orimary.

...tomorrow...