The spec is always there, you just can't see it
Had a project kickoff today where someone said "we're going agile, so we don't need a spec."
Three weeks from now there will be a spec. It'll be distributed across 40 Slack messages, 12 email threads, a whiteboard photo someone took on their phone, and one person's memory of a hallway conversation. When two people disagree about what they're building, there will be no document to point at. They'll both be right.
Every project has a specification. The question is whether you can find it.
People who would never commit code without version control will happily ship a product where every design decision lives in someone's head. The spec is the source code of intent. Not having one written down is coding on production. I don't know why this is controversial.