This isn’t strictly true. Contracts can almost always be adjusted, at least as a matter of law; as a practical matter, of course, trying to go back and clean up a mistake exposes your mistake and can muddy the waters.
That said, finding a bug in a contract (or catching an emerging invalidity of some kind, e.g. in response to the appearance of new law) is still super valuable. Even if it turns out the problem can’t be fixed for practical/optics reasons, knowing it’s there (and what problems may flow from it) can make a huge difference in terms of risk assessment, evaluating exposure, and maybe even making ops-side fixes to limit the fallout from the potential failure.
Don’t get me wrong, getting it right the first time matters and is ideal. But don’t sell short the value of ex post error spotting.