from https://github.com/elastic/kibana/issues/167992

the error `_id must be unset or set to [GvMPW29fWPE5Sr2ZAAABivq9G6A] but was [_id] because [.ds-metrics-logstash.monitoring-default-2023.10.04-000001] is in time_series mode`

No `_id` field is sent as part of the request so the error must be internal to the endpoint functionality.

This is preventing the creation of runtime fields against TSDS data views in kibana.

--

Steps to reproduce via kibana - 
1. Install `Kibana Sample Data Logs (TSDB)` sample data
2. run via dev tools console
```
POST /_scripts/painless/_execute
{
  "script": {
    "source": """
      emit(doc['release_date'].value.year < 1972);
    """
  },
  "context": "boolean_field",
  "context_setup": {
    "index": "kibana_sample_data_logstsdb",
    "document": {
      "name": "Dune",
      "author": "Frank Herbert",
      "release_date": "1965-06-01",
      "page_count": 604,
      "@timestamp" : "2023-09-16T20:06:26.264Z",
      "bytes_counter": 79635479,
      "bytes_gauge": 8823,
      "event": {
        "dataset": "sample_web_logs"
       }
    }
  }
}
```
modules/lang-painless/src/main/java/org/elasticsearch/painless/action/PainlessExecuteAction.java
@Override
            public boolean equals(Object o) {
                if (this == o) return true;
                if (o == null || getClass() != o.getClass()) return false;
                ContextSetup that = (ContextSetup) o;
                return Objects.equals(index, that.index)
                    && Objects.equals(document, that.document)
                    && Objects.equals(query, that.query)
                    && Objects.equals(xContentType, that.xContentType);
            }
            @Override
            public int hashCode() {
                return Objects.hash(index, document, query, xContentType);
            }
            @Override
            public void writeTo(StreamOutput out) throws IOException {
                
                
                out.writeOptionalString(index);
                out.writeOptionalBytesReference(document);
                out.writeOptionalString(xContentType != null ? xContentType.mediaTypeWithoutParameters() : null);
                out.writeOptionalNamedWriteable(query);
            }
            @Override
            public String toString() {
                return Strings.format(
                    "ContextSetup{index=%s, cluster=%s, document=%s, query=%s, xContentType=%s}",
                    index,
                    clusterAlias,
                    document,