Hey,
Newer versions of factory_girl will try to evaluate dynamic attributes when you reference them before they're evaluated. This is usually a good thing, because it means that attribute order, inheritance, and overrides are no longer confusing to string together. In your case however, it looks like you were taking advantage of the "dumb" nature of earlier versions of factory_girl, so the upgrade didn't work well for you.
If I understand correctly, you're trying to see if the test passed a user to the Thing factory. Is that right?
If so, there's some internal stuff in factory_girl that you could use to get the job done:
factory :thing do
project do
if __override_names__.include?(:user)