I agree most of what you said. But I see reasoning from the models. If we give enough context about different systems, I see latest model can able to thinking provide complex solutions.
Therein lies your answer.
You have to give things for the model to do something. You have to give the relevant and appropriate things for the model to do the right thing.