I'd personally drop all the ENC magic and just let...
# puppet
y
I'd personally drop all the ENC magic and just let it fill an $enc hash. Then it's up to site.pp what to do with the information. Drawback here is inability to forcefully inject classes from an ENC