I currently added an option to ignore requests from a robot to fix itself. However, in any different simulation (specifically, I am interested in leagues) the default option for a robot is to do whatever it wants. To counter that I was considering adding a kill rule if a robot fixes itself in place. However, such rule will slow the already slow simulation significantly enough that I gave up on it.
Another idea is to not allow robots during leagues to fix themselves. I personally like this method, but will leave the public to make a decision.