Array type "empty_values" cannot remove all empty values

Honestly, that was added so long ago its hard to say what the original rationale was :laughing:

  1. Ash strings (by default), cast to nil.
  2. We have the nil_items? constraint, which rejects nil values. For us empty_values is a separate kind of thing, representing when the entire list is empty.
  3. I think what you want is a new constraint, called remove_nil_items? that will remove nil items instead of making them an error if they exist.