The fact that the autosign setting is set to :type => :file in lib/puppet/defaults.rb means that it's value gets munged (to an absolute file path).  So setting autosign to 'true' comes back with (for example) '/home/jpartlow/work/puppet/true'  This issue looks to have been pre-existing; haven't quite figured out why autosign was working at all previously...