### Description

Dynamic mappings can greatly help the getting started experience but they currently don't apply to all types, one example is `dense_vector`.

It's been suggested to automatically map float arrays as dense vectors when there are more than 100 values, or a heuristic along these lines.
server/src/test/java/org/elasticsearch/index/mapper/DynamicMappingTests.java
.endObject()
                    .endObject()
            )
        );
        ParsedDocument doc = defaultMapper.parse(source(b -> {
            b.startArray("objects");
            b.startObject().field("subfield", "sub").field("unmapped", "unmapped").endObject();
            b.endArray();
            b.field("myfield", 2);
        }));
        assertThat(doc.rootDoc().getFields("myfield"), hasSize(1));
        assertThat(doc.rootDoc().getFields("objects.subfield"), hasSize(1));
        assertThat(doc.rootDoc().getFields("objects.unmapped"), empty());
        assertEquals(XContentHelper.stripWhitespace("""
            {
              "_doc": {
                "dynamic":"true",
                "properties":{
                  "myfield":{
                    "type":"long"
                  }
                }
              }
            }"""), Strings.toString(doc.dynamicMappingsUpdate()));
    }
    public void testSubobjectsFalseRootDynamicUpdate() throws Exception {
        MapperService mapperService = createMapperService(
            mappingNoSubobjects(b -> b.startObject("host.name").field("type", "keyword").endObject())
        );
        ParsedDocument doc = mapperService.documentMapper().parse(source("""