The use of pid was to guarantee that this state *never* gets leaked between chef-client runs.  As long as it's possible to have multiple simultaneous chef-client runs then I think there's a risk of this (since the default attributes still get saved to the chef-server, and are only reset at the *start* of a new chef-client run).  BTW, where are we with that chef-client locking patch?