We didn't construct it this way - `self._dirty_fields` is a set of actual field objects. `save_error.saved_field_names` is a list of strings representing just the names of the fields that got saved, not the actual field objects. So doing this as a set intersection wouldn't work.

Do you think it is worth it to refactor the code such that the save error works differently?