It is true that LLMs just don 'get' UX. It is a lot of trial, error, hallucination, fixing to get to a working state for even simple pages. If there are no specifics, it can generate a nice looking page to impress people, but add functionality, buttons, layouts, login, list, image tags and suddenly it goes into never ending loop of hallucinations.
Claude still does better than other.
Instead of oneshot, someone should build an evaluation mechanism where a developer uses an llm to build something real and shares 'experience'. Once you use an llm for a few days you get a hang of which one is better and which one is not.