We are now writing specs for important components and algorithms, and spend quite a bit of time aligning on them before implementing the production version. Those specs are often informed by vibed prototypes, but usually it’s also two or more people really thinking through an algorithm, and aligning with interfaces to the adjacent systems. They are usually very information dense.
I don’t believe spec driven development is a good idea though. The architecture should be made with intention as well, or I feel we‘d end up with whatever happens to be ranked highest in the latent space. But the specs are great to align cross platform teams behind shared concepts, and they are a good input to automatic reviews.
I get the feeling specifications documents are going to become the hot new programming language. I suspect, over time, we'll see special syntax and semantic conventions get published for specifications docs that result in the best chance for a coding agent to get the implementation right the first time and with minimal tokens.