Can you use filter_attributes_on_save instead ? so any type of conversion will works (on not only uuid).
It probably needs to be in _multi_criteria (as we filter_attributes_on_save wont manage nested hashes)