Fixed

Contact filter generation reports criteria it cannot resolve

POST /workspaces/{workspace_id}/contacts/filters no longer drops part of a description it cannot match. Before, asking for contacts who purchased a product that doesn't exist could return a filter built from the rest of the description, which matched a much broader audience than you asked for. Now the request returns 422 and the error quotes the unresolved part, such as "purchased Cool Shirt", so you can fix the name and retry.

This matters most when a generated filter drives a bulk action. Tagging, enrolling, unsubscribing, running a workflow or exporting now only ever runs against the audience you described.

Resources: Contacts::Filter