being agentless and using ssh for transport, the target hosts need only have an ip address listed in the deployment hosts inventory, aka one can address target hosts directly after creating them, given ssh access.
much of ansibles python issues are just python issues.
ansible is a very flexible tool, and idempotent behavior is largely a factor of playbook design until it hits real world limits.