Discovered because work's gateway seems quite pedantic:
OpenAI's strict function schemas need every property in required, and
timeout_ms is optional, so strict requests for the python tool were
rejected ("'timeout_ms' is required by being declared in 'properties' but
not present in 'required'"). Send the tool non-strict, and check in the
prompt test that a strict tool requires every property it declares.