pretty sure motion planner would not be happy if motion in main program is not stopped when interrupt is triggered and then you try to issue another motion from ISR - at the same time...
Sorry if i missunderstand it but you mean i missed $advance=0 in the main program?
Left out the RESUME command?
I would not like to use resume in this ISR, because here will be and other interrupt trigger "section" and there will be a resume after that.