I wonder whether cleaning up vibe-coded prototypes results in code that is easier to understand a year in the future by others because the dev has had to pick apart and comment the messy code enough to understand it, whereas if they were write it all themselves they would no doubt consider it perfectly explanatory without sufficient abstractions and documentation.