While experimenting with painless tests in a multi-node cluster I hit the following error. We're failing to serialize this type, which looks to be because it's not implementing `GenericNamedWritable` when it should.

```
[2023-10-19T01:22:02,328][WARN ][o.e.t.OutboundHandler    ] [search-MxNysuL] failed to serialize outbound message [Response{821}{false}{false}{false}{class org.elasticsearch.search.fetch.QueryFetchSearchResult}] java.lang.IllegalArgumentException: can not write type [class org.elasticsearch.script.field.IPAddress]
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.io.stream.StreamOutput.writeGenericValue(StreamOutput.java:839)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.io.stream.StreamOutput.writeCollection(StreamOutput.java:1050)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.document.DocumentField.writeTo(DocumentField.java:116)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.io.stream.StreamOutput.writeWriteable(StreamOutput.java:981)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.io.stream.StreamOutput.writeMap(StreamOutput.java:602)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.common.io.stream.StreamOutput.writeMap(StreamOutput.java:610)
	at org.elasticsearch.server@8.12.0-SNAPSHOT/org.elasticsearch.search.SearchHit.writeTo(SearchHit.java:267)
```
server/src/main/java/org/elasticsearch/TransportVersions.java
public static final TransportVersion V_8_500_060 = def(8_500_060);
    public static final TransportVersion V_8_500_061 = def(8_500_061);
    public static final TransportVersion V_8_500_062 = def(8_500_062);
    public static final TransportVersion V_8_500_063 = def(8_500_063);
    public static final TransportVersion V_8_500_064 = def(8_500_064);
    public static final TransportVersion V_8_500_065 = def(8_500_065);
    public static final TransportVersion V_8_500_066 = def(8_500_066);
    public static final TransportVersion SEARCH_RESP_SKIP_UNAVAILABLE_ADDED = def(8_500_067);
    public static final TransportVersion ML_TRAINED_MODEL_FINISH_PENDING_WORK_ADDED = def(8_500_068);
    public static final TransportVersion SEARCH_APP_INDICES_REMOVED = def(8_500_069);
    public static final TransportVersion GENERIC_NAMED_WRITABLE_ADDED = def(8_500_070);
    public static final TransportVersion PINNED_QUERY_OPTIONAL_INDEX = def(8_500_071);
    public static final TransportVersion SHARD_SIZE_PRIMARY_TERM_GEN_ADDED = def(8_500_072);
    public static final TransportVersion COMPAT_VERSIONS_MAPPING_VERSION_ADDED = def(8_500_073);
    public static final TransportVersion V_8_500_074 = def(8_500_074);
    public static final TransportVersion NODE_INFO_INDEX_VERSION_ADDED = def(8_500_075);
    public static final TransportVersion FIRST_NEW_ID_LAYOUT = def(8_501_00_0);
    public static final TransportVersion COMMIT_PRIMARY_TERM_GENERATION = def(8_501_00_1);
    public static final TransportVersion WAIT_FOR_CLUSTER_STATE_IN_RECOVERY_ADDED = def(8_502_00_0);
    public static final TransportVersion RECOVERY_COMMIT_TOO_NEW_EXCEPTION_ADDED = def(8_503_00_0);
    public static final TransportVersion NODE_INFO_COMPONENT_VERSIONS_ADDED = def(8_504_00_0);
    public static final TransportVersion COMPACT_FIELD_CAPS_ADDED = def(8_505_00_0);
    public static final TransportVersion DATA_STREAM_RESPONSE_INDEX_PROPERTIES = def(8_506_00_0);
    public static final TransportVersion ML_TRAINED_MODEL_CONFIG_PLATFORM_ADDED = def(8_507_00_0);
    public static final TransportVersion LONG_COUNT_IN_HISTOGRAM_ADDED = def(8_508_00_0);
    public static final TransportVersion INFERENCE_MODEL_SECRETS_ADDED = def(8_509_00_0);
    public static final TransportVersion NODE_INFO_REQUEST_SIMPLIFIED = def(8_510_00_0);
    public static final TransportVersion NESTED_KNN_VECTOR_QUERY_V = def(8_511_00_0);
    public static final TransportVersion ML_PACKAGE_LOADER_PLATFORM_ADDED = def(8_512_00_0);
    public static final TransportVersion ELSER_SERVICE_MODEL_VERSION_ADDED_PATCH = def(8_512_00_1);