I can see this , but we do have migration strategies to reduce this risk. During development the business requirements (embodied by the logs and running state) can get the app close to perfect. and during migration canary'ing the traffic to the new stack until things are perfect.
I know the migration cost isn't zero, but neither are the operations costs of the legacy software, or the losses from bugs and lossy software. and now the migration costs are very low