### Description

A query like `from employees | where true` is perfectly valid. So is `from employees | where still_hired`. In other words, a simple boolean expression is accepted, even if that expression is a field. For fields `where [field_name]` is the short version of `where [field_name] == true`.

But, for fields that are not booleans `from employees | where salary` for example, ESQL throws an exception:

```
                "type": "class_cast_exception",
                "reason": "class org.elasticsearch.compute.data.IntVectorBlock cannot be cast to class org.elasticsearch.compute.data.BooleanBlock (org.elasticsearch.compute.data.IntVectorBlock and org.elasticsearch.compute.data.BooleanBlock are in unnamed module of loader java.net.FactoryURLClassLoader @c6a692e)"
```

The error message should be more user-friendly, like validating the parameters of regular functions.
x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/analysis/Verifier.java
p.forEachExpression(e -> {
                
                if (e.resolved()) {
                    return;
                }
                e.forEachUp(ae -> {
                    
                    if (ae.childrenResolved() == false) {
                        return;
                    }
                    if (ae instanceof Unresolvable u) {
                        
                        if (p instanceof Project == false || u instanceof UnsupportedAttribute == false) {
                            failures.add(fail(ae, u.unresolvedMessage()));
                        }
                    }
                    if (ae.typeResolved().unresolved()) {
                        failures.add(fail(ae, ae.typeResolved().message()));
                    }
                });
            });
        });
        
        if (failures.isEmpty() == false) {
            return failures;
        }
        
        plan.forEachDown(p -> {
            if (p instanceof Aggregate agg) {
                agg.aggregates().forEach(e -> {