### Elasticsearch Version

main

### Installed Plugins

_No response_

### Java Version

_bundled_

### OS Version

all

### Problem Description

When you configure an `aggregate_metric_double` with `ignore_malformed: true` and send a malformed value we create an `_ignored` field with three values, `field.value_count`, `field.min`, and `field.max`. This is the only top "composite" field that creates `_ignored` values for its children. Things like shape only create `field` in `_ignored`. Is there a good reason for `aggregate_metric_double` to be different?

### Steps to Reproduce

see above

### Logs (if relevant)

_No response_
server/src/main/java/org/elasticsearch/index/mapper/NumberFieldMapper.java
this.indexCreatedVersion = builder.indexCreatedVersion;
    }
    boolean coerce() {
        return coerce.value();
    }
    @Override
    public boolean ignoreMalformed() {
        return ignoreMalformed.value();
    }
    @Override
    public NumberFieldType fieldType() {
        return (NumberFieldType) super.fieldType();
    }
    @Override
    protected String contentType() {
        return fieldType().type.typeName();
    }
    @Override
    protected void parseCreateField(DocumentParserContext context) throws IOException {
        Number value;
        try {
            value = value(context.parser(), type, nullValue, coerce());
        } catch (IllegalArgumentException e) {
            if (ignoreMalformed.value() && context.parser().currentToken().isValue()) {
                context.addIgnoredField(mappedFieldType.name());
                if (context.isSyntheticSource()) {
                    
                    context.doc().add(IgnoreMalformedStoredValues.storedField(name(), context.parser()));
                }
                return;