There is a function not-every? that takes a predicate and a list and returns false if all the elements of the list satisfy the predicate. In this case we want to check the list and return true if some element is true (ie not every element is false) and also not every element is true. Hang on, is that right? Whatever - whichever way round it is, we want "not every element X" where X is true and false.
So the function we want is this:-
(fn [xs] (and (not-every? true? xs) (not-every? false? xs)))