The Documents stored in Elasticsearch currently are not well defined.
This change allows the features of Elasticsearch (such as custom mappings)
to be enabled on each individual field of a search document. This change
will allow the body to be mapped differently to the titl.
This diff is a precursor to more changes. Once this is implemented, the mappings for PhabricatorSearchAbstractDocuments can be better defined in Elasticsearch. These mappings are what determines how elasticsearch will preform its search for each field. The more granular these mappings are, the better the search can become (different fields can have different types of search).
I came to this conclusion after realising that T9460 is caused by the dynamic mappings being turned off. This mean that the required parts of the schema were not being mapping and could not be queried on. The reason the dynamic mappings were turned off are in T8602.