The other one noted if you don't specify the density of plastic for bags, or paper for bags and packing, you get clingfilm thinner than you thought existed, and paper which is almost tissue in its weakness. You don't even get boxes to put the boxes in, if you don't specify boxes to be delivered in boxes. So now wrapping a pallet becomes a nightmare if they don't stack. And if you don't specify how many to stack, and how to pad the stack, they won't do unit height stacking if it costs labour time. Your risk.
Some of this like the casting mistake, or the knob thing, could happen anywhere and you have to be close to final manufacture spec to find out e.g. the metal coating impinges on the knob at the free space you specified, because your test rig didn't have powder coating. Or, that a design feature you need like the light entry holes, is used by the casting engineer as pour points because it looked like you'd specified mould pour points not functional holes.
But other things like "yea, you didn't spec how long to make the tails so we cut the tails as close as we could" is just the cheapening above: if you don't SAY its a 10cm tail for the connector, it will be 2cm, if saving 8cm of cable saves money for them.
I've read some stuff which says the cost of 5 SBC boards with pre-applied SMD is now so low, you might as well order 5 so you get at least 1 which works. That means they will wind up working out your tolerance for failure, and produce goods to meet that: if 1 in 5 is viable, thats what they'll target.
I've had a 90% failure rate on what was supposed to be the final prototype before production. Turns out they hand-soldered the batch because the proto run was (obviously) only a dozen units - and some parts were just too tricky to reliably hand-solder.
I understand the logic as fully-automated assembly has a nontrivial startup cost, but a big reason of doing later prototypes is evaluating the manufacturing process as well. If the assembly method used doesn't match what I can expect in production runs, what's the point?
Weirdly enough the batch before this was totally fine. In the end we did get a massive discount on the hand-assembled run and managed to do all the testing with the one prototype we got working with some small rework, but it still cost us quite a lot of time and money. We would've happily paid a significantly higher fee to have them just do it properly - per-prototype cost is pretty much irrelevant during development.