It doesn't have schemas nor does it scale. It has no valid place because invisibly scoped languages are a terrible idea.

It's certainly insufficient, look at what happened to Helm

I’m with you that it’s terrible, but it very much does have schemas! The vast vast majority of YAML-based big APIs (k8s, helm, compose, and so on) all absolutely do check documents against schemas (not just ad-hoc validation rules) internally.

The real issue is two things: the smaller one is that there’s no single or self-describing schema system (like XML supports); the larger thing is that most YAML schema validations prioritize supporting extremely permissive and complex input documents over being predictable and appropriately restrictive. And that’s a harder problem to fix, because it has more to do with priorities and community conventions.

If people wanted strict schemaful YAML to be the norm, they would have consolidated on one of the many tools that does that by now. The issue is, people don’t want that; they want extremely flexible and open-ended APIs. YAML as currently practiced is conducive to that goal, but it’s the goal that leads to issues, not the choice of (bad, I agree) data language.

No yaml schema will save you when your HelmRelease will arbitrarily merge together your yaml files on top of kustomize on top of whatever else.

In practice schemas are mostly useless in my experience because people bend yaml as if they really really want a programming language instead.