Code as policy is a bad interface in my opinion, but VLM planning has promise. This has been tried in 2022 https://say-can.github.io/, and recently reformulated in https://lianegalanti.github.io/Pigey/
Thing is even recent Gemini Robotics 2 argues for architecture that has a VLM planner and then a VLA/WAM controller + a local small VLA model when connection disappears. And recent SOTA architectures rely on hierarchical design. I think this might be a sensible way to go about it. If you were to train GPT-X on robotics data and to output actions, congratulations! you've just made a VLA. It is enticing for people to just wish for one architecture to do it all, which is why we get stuff like this. I think there is a lot more to gain from modularity and we should not be afraid of specialization.