All entity-related sub predicates, e.g. "source_entity", "projectile" will accept a complete predicate as an argument, typically formatted as a json array, where each object of the array contains a condition and the predicate itself.
"looking_at" sub predicate does not accept json arrays or further sub predicates as arguments.
Needs more information. How can we reproduce this?