In my last organization, the development team requested root access to Puppet-managed test machines. They were required to perform certain configuration changes.  We resolved it by meeting with them on a weekly basis so that we could agree on a method for developers to submit configuration changes and help them make many of the required changes.  We managed to come up with a strategy for developers to update individual configuration values directly using data abstracted from Hiera via our mutual cooperation. In fact, in partnership with us, we taught one of the developers how to build Puppet code.