The object returned by has_defaults apparently is the same between multiple object creations. Consider this scenario: