It depends on what you mean by "vibe coding". Is AI coding based on an existing implementation vibe coding? What about only from a natural-language spec? How does manual reviewing affect whether or not it's vibe coding?

> How does manual reviewing affect whether or not it's vibe coding?

I think the most commonly-accepted definition of "vibe coding" is when you "forget that the (generated) code even exists"[0]. So vibe-ness entirely hinges upon whether you're manually reviewing. If you make/prompt changes based on what you observe in the generated code (rather than only based on runtime behavior), then you're not "vibe coding".

I think the other things you mentioned are orthogonal to vibe-ness.

[0]: https://en.wikipedia.org/wiki/Vibe_coding#Definition