Hi Robert,
I completely agree with the recommendation of using functional/behavioral tests. That is key to ensure safe transitions.
About go/no-go, I have no experience of business asking for rewrite, but I have experience disobeying the order of not doing rewrite. Of course, hiding it and making the change feature by feature.
About strategies, etc. I have the article «The Emotional and Technical Guide to Rescue Stalled Software», it is oriented specially for those that do not practice testing, or the right kind of testing, but it is full of techniques that give really good results.
I hope I helped you at least a little bit. Do not hesitate to reply for further clarification or questions, or if I missed something.
Thanks!