As the alternative, you’re basically describing a rewrite with high coupling 2, that is mostly inferior when you have swappable model parts using abstract interfaces. Manually repeated code is always a thing to avoid.