### Elasticsearch Version

8.11.0

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

MacOS

### Problem Description

When sending a ESQL query with the `enrich` command that involves a policy that does not existing a `NullPointerException` is thrown and shown as error messages to the user:

Query:
```
row a  = 1| enrich missing-policy
```

Returns:
```
null_pointer_exception - Cannot invoke "org.elasticsearch.xpack.core.enrich.EnrichPolicy.getMatchField()" because "policy" is null
```

### Steps to Reproduce

See above.

### Logs (if relevant)

_No response_
x-pack/plugin/esql/src/test/java/org/elasticsearch/xpack/esql/analysis/AnalyzerTests.java
var agg = as(order.child(), Aggregate.class);
        var aggregates = agg.aggregates();
        assertThat(aggregates, hasSize(1));
        assertThat(Expressions.names(aggregates), contains("a"));
        assertThat(Expressions.names(agg.groupings()), contains("a"));
        assertEquals(agg.groupings(), agg.aggregates());
    }
    public void testUnsupportedFieldsInStats() {
        var errorMsg = "Cannot use field [point] with unsupported type [geo_point]";
        verifyUnsupported("""
            from test
            | stats max(point)
            """, errorMsg);
        verifyUnsupported("""
            from test
            | stats max(int) by point
            """, errorMsg);
        verifyUnsupported("""
            from test
            | stats max(int) by bool, point
            """, errorMsg);
    }
    public void testUnsupportedFieldsInEval() {
        var errorMsg = "Cannot use field [point] with unsupported type [geo_point]";
        verifyUnsupported("""
            from test
            | eval x = point
            """, errorMsg);
        verifyUnsupported("""
            from test