Most teams add a new English string in a PR and forget the other languages exist. The PR gets reviewed for logic. The French, German and Spanish files quietly fall one key behind. A few months of that and your non-English locales are full of holes, and you only find out when a user sends a screenshot with auth.signin.button printed on the page.
Nobody owns this. It never shows up in code review, because the diff that caused it looked fine.
The manual fix breaks things too
When someone finally backfills the missing keys by hand, or pastes them into a chat model, two things tend to go wrong.
Placeholders get mangled. A translator, human or model, happily turns {name} or {{count}} into something localized, and your interpolation throws at runtime.






