As explained numerous times before, "vibe coding" works when
* the project is close enough to a "typical example" that appeared many times in training material; not necessarily as a whole, but something which can be combined from a few "usual pieces"
* developer is unable to program (at all, or in that specific language for example)
* developer is unwilling to learn to do that - e.g. time constraints, prioritization
That's all OK and I could consider using this paradigm if I have to use an unfamiliar language (to me), with tight schedule, when I see I'm never going to develop using that language in the future anyway (so no need to learn it). Then it's a massive time-saver, possibly orders of magnitude.
Last time I asked AI to make me a small awk script to do some CSV data processing. 100% correct answer without needing tweaks. And much more verifiable and trustable than giving the CSV data itself to AI. A minute and running. But if I was more experienced in awk, I would have written it in the same - or even less time. And if I did repeat this same thing without AI maybe 5-10 times myself, spending collectively 10-50 hours with it, then I would be experienced in awk.
That's the deal. Choose to become professional in something and become good at it. Expecting AI to be helpful on that is a fallacy. The only problem is those inexperienced and unwilling to learn telling others what they should do. Not a new phenomenon - maybe in 2010 we had to listen to bullcrap like "Arduino is how professional electronic product design is done nowadays" and if you disagreed you were a stupid old greybeard. Now everyone see how ridiculous the suggestion was, but that Arduino still has it's own use cases that make perfect sense.
The problem here is that porting between different microcontrollers is either trivial (when the codebase is written correctly), or very demanding and in peculiar ways, requiring a lot of understanding and creativity. It will be a big challenge for "an AI".