Gold plating is the idea that developers are holding onto code and not shipping it because they’re waiting to make it “perfect.” They’d otherwise have it out today but since they’re perfectionists, they don’t ship.
This is why they need someone cracking a whip to make sure work goes out, so it goes.
I don’t see it happening all that often.
Far more often, I see developers waiting on something from some other team. For whatever reason, some deliverable’s efforts are split across two or more teams. Schedules end up not aligning, folks didn’t have a shared understanding before they split up to do their respective parts, etc. Work may just be difficult to release given the systems you have established.
However, if you’re genuinely having this problem, you could probably solve it in one of two ways.
First, have teams work in smaller batches. If there’s an expectation that the batches of work are small enough to accomplish in one day max, it’s pretty hard to slip into gold plating.
Second, have teams work together You might have a developer or two who, left to their own devices, will take forever to finish something because they’re trying to make it perfect. It’s pretty unlikely you’d have three developers working together on the same task who want to take forever to finish something so that they can gold plate something.