### 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/internalClusterTest/java/org/elasticsearch/index/mapper/DynamicMappingIT.java
.setQuery(new MatchQueryBuilder("obj.runtime.dynamic.number", 1))
                .get();
            assertEquals(1, searchResponse.getHits().getTotalHits().value);
        }
        
        Exception e = expectThrows(
            DocumentParsingException.class,
            () -> client().prepareIndex("test").setId("id").setSource("obj.runtime.dynamic.number", "string").get()
        );
        assertThat(
            e.getMessage(),
            containsString(
                "failed to parse field [obj.runtime.dynamic.number] of type [long] in document with id 'id'. "
                    + "Preview of field's value: 'string'"
            )
        );
    }
    public void testSubobjectsFalseAtRoot() throws Exception {
        assertAcked(indicesAdmin().prepareCreate("test").setMapping("""
            {
              "_doc": {
                "subobjects" : false,
                "properties": {
                  "host.name": {
                    "type": "keyword"
                  }
                }
              }
            }""").get());
        IndexRequest request = new IndexRequest("test").setRefreshPolicy(WriteRequest.RefreshPolicy.IMMEDIATE)