Check if you have puppetsync enabled on the master and client
[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
templatedir=$confdir/templates
pluginsync = true
Check in /var/lib/puppet/lib
there should be a [...].rb somewhere. Delete it and look if it get copied again after with the next puppet run.
If you are using environments make sure the puppetmaster is also in the correct environment. (default is production)