[`Setting.versionSetting`](https://github.com/elastic/elasticsearch/blob/0652a5915586abbcdfdfffa91a391740f0147752/server/src/main/java/org/elasticsearch/common/settings/Setting.java#L1275) (only used by index compatibility setting) does not use the `Validator` passed in - its just discarded. Looks like it's been like this since it was introduced by https://github.com/elastic/elasticsearch/pull/83264 in 8.2.0.

Enabling this causes some tests to fail. Enabling this may cause problems for indexes that have a wonky setting already applied.
server/src/test/java/org/elasticsearch/cluster/coordination/NodeJoinExecutorTests.java
.submitTask("test", JoinTask.singleNode(node1, TransportVersion.CURRENT, TEST_REASON, future, 0L), null),
                    10,
                    TimeUnit.SECONDS
                )
            );
            appender.assertAllExpectationsMatched();
            final var node2 = TestDiscoveryNode.create(UUIDs.base64UUID());
            final var testReasonWithLink = new JoinReason("test", ReferenceDocs.UNSTABLE_CLUSTER_TROUBLESHOOTING);
            appender.addExpectation(
                new MockLogAppender.SeenEventExpectation(
                    "warn message with troubleshooting link",
                    LOGGER_NAME,
                    Level.WARN,
                    "node-join: ["
                        + node2.descriptionWithoutAttributes()
                        + "] with reason ["
                        + testReasonWithLink.message()
                        + "]; for troubleshooting guidance, see https://www.elastic.co/guide/en/elasticsearch/reference/*"
                )
            );
            assertNull(
                PlainActionFuture.<Void, RuntimeException>get(
                    future -> clusterService.getMasterService()
                        .createTaskQueue("test", Priority.NORMAL, executor)
                        .submitTask("test", JoinTask.singleNode(node2, TransportVersion.CURRENT, testReasonWithLink, future, 0L), null),
                    10,
                    TimeUnit.SECONDS
                )
            );
            appender.assertAllExpectationsMatched();