Sometimes perfection is important – if you are an aeronautical engineer it probably is.
If you are a software developer – ultimate perfection is often unobtainable.
Perfection can be essential. But very often perfection is used as an excuse for procrastination or under-confidence.
So for any project there is a judgement call to be made – does it have to be perfect? And in every situation it will be different.
It may be worthwhile agreeing with the team at the start of a project – “What does good enough look like in this case?”