Agreed. I’ve found the only reliable architecture for this is treating the LLM purely as a high-level planner rather than a controller.
We use a state machine (LangGraph) to manage the intent and decision tree, but delegate the actual transform math to deterministic code. You really want the model deciding the strategy and a standard solver handling the vectors, otherwise you're just burning tokens to crash into walls.