Type guard — true if the selector uses the compact publisher_domains[]
form AND that field is a non-empty array of strings. Counterparty input
that ships publisher_domains: "evil" (string) or null reports false
here, so expandPublisherPropertySelector routes it down the
singular path (which itself fails closed on missing publisher_domain).
Witness, not translator — malformed selectors are not silently coerced
into either branch.
Type guard — true if the selector uses the compact
publisher_domains[]form AND that field is a non-empty array of strings. Counterparty input that shipspublisher_domains: "evil"(string) ornullreports false here, so expandPublisherPropertySelector routes it down the singular path (which itself fails closed on missingpublisher_domain). Witness, not translator — malformed selectors are not silently coerced into either branch.