They could and code execution is actually exposed to the model as a tool!
But if im running a customer support agent at scale, i'm not sure I want it to be able to write code. I do know I need it to be able to convert timezones though. (its also far more expensive / token inefficient to have it write code each time to convert timezones rather to use a predefined tool I made an know works)
> token inefficient to have it write code
It does not write code. It just calls my tool.
But I see your other points though.