`ArgumentError` probably isn't the right thing. It should be `Puppet::DevError`.