> You plan in order to understand the whole problem space.

I like to do spikes to understand problem spaces before planning. The planning is then usually effortless and just to get in sync with stakeholders.

But in that regard AI coding is really backwards. We don't necessarily need hard separation of planning and coding, but we need a deliberate separation of experimental/explorative coding and the code that is supposed to make it into prod. AI coding does all that in the same place, I don't even want to know how hard it is to "fix" AI code that started on behalf of a completely wrong premise. AIs certainly don't have a good measure when to refactor something completely messed up.