@davetcoleman can correct me, but I believe the idea is that all the tips in the ik_poses vector are supposed to be moving, not just one.  The size and indexing of the ik_poses array should match that of the tip_frames vector sent to initialize() or setValues().  If there are more "tips" in the group than in tip_frames, the solver might be programmed to keep those other tips at their same poses.