### Elasticsearch Version

8.11.0

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

MacOS

### Problem Description

The following ESQL statement reports and unhandled error:

```
from index | eval round([1.2])
```

Returns the rror:
```
class_cast_exception - class java.util.ImmutableCollections$ListN cannot be cast to class java.lang.Number (java.util.ImmutableCollections$ListN and java.lang.Number are in module java.base of loader 'bootstrap')
```

### Steps to Reproduce

See above

### Logs (if relevant)

_No response_
x-pack/plugin/esql/src/test/java/org/elasticsearch/xpack/esql/expression/predicate/operator/arithmetic/AddTests.java
long rhs = randomLongBetween(0, (Long.MAX_VALUE >> 1) - 1);
            long lhs = randomLongBetween(0, (Long.MAX_VALUE >> 1) - 1);
            BigInteger lhsBI = unsignedLongAsBigInteger(lhs);
            BigInteger rhsBI = unsignedLongAsBigInteger(rhs);
            return new TestCase(
                Source.EMPTY,
                List.of(new TypedData(lhs, DataTypes.UNSIGNED_LONG, "lhs"), new TypedData(rhs, DataTypes.UNSIGNED_LONG, "rhs")),
                "AddUnsignedLongsEvaluator[lhs=Attribute[channel=0], rhs=Attribute[channel=1]]",
                equalTo(asLongUnsigned(lhsBI.add(rhsBI).longValue()))
            );
          }) */, new TestCaseSupplier("Datetime + Period", () -> {
            long lhs = (Long) randomLiteral(DataTypes.DATETIME).value();
            Period rhs = (Period) randomLiteral(EsqlDataTypes.DATE_PERIOD).value();
            return new TestCaseSupplier.TestCase(
                List.of(
                    new TestCaseSupplier.TypedData(lhs, DataTypes.DATETIME, "lhs"),
                    new TestCaseSupplier.TypedData(rhs, EsqlDataTypes.DATE_PERIOD, "rhs")
                ),
                
                "No evaluator, the tests only trigger the folding code since Period is not representable",
                DataTypes.DATETIME,
                equalTo(asMillis(asDateTime(lhs).plus(rhs)))
            );
        }), new TestCaseSupplier("Period + Datetime", () -> {
            Period lhs = (Period) randomLiteral(EsqlDataTypes.DATE_PERIOD).value();
            long rhs = (Long) randomLiteral(DataTypes.DATETIME).value();
            return new TestCaseSupplier.TestCase(
                List.of(
                    new TestCaseSupplier.TypedData(lhs, EsqlDataTypes.DATE_PERIOD, "lhs"),
                    new TestCaseSupplier.TypedData(rhs, DataTypes.DATETIME, "rhs")