I think this is the reason why project rewrites are almost always a bad idea. In any reasonably sized project there is a lot of embedded knowledge wrapped up in the code, you never appreciate the importance until customers start complaining when it isn't there.