Acho que você deseja definir ensure => absent
para o usuário, não remover a definição de recurso.
O motivo é que, se um host não está fazendo check-in no Puppet, você quer garantir que a conta será removida quando isso acontecer. Então, deixe a definição do recurso, mude o estado.