As a user of the Search REST api I want to be able to use the same parameters that I used to pass when using opensearch or the action API using search modules so that I can tune, instrument and debug CirrusSearch.
How to reproduce:
pass cirrusUseCompletionSuggester=yes or cirrusUseCompletionSuggester=no to enable/disable the completion suggester:
Opensearch gets varying results:
- https://en.wikipedia.org/w/api.php?action=opensearch&search=Test%20crocket&cirrusUseCompletionSuggester=yes
- https://en.wikipedia.org/w/api.php?action=opensearch&search=Test%20crocket&cirrusUseCompletionSuggester=no
The REST api does not vary results:
- https://en.wikipedia.org/w/rest.php/v1/search/title?q=Test%20crocket&cirrusUseCompletionSuggester=yes
- https://en.wikipedia.org/w/rest.php/v1/search/title?q=Test%20crocket&cirrusUseCompletionSuggester=no
This is particularly problematic as Cirrus relies on this kind of parameters for configuring its instrumentation and A/B test infrastructure.
Seen on tr.wikipedia.org where the search widget is relying on the REST api instead of opensearch.
Relates to T281578
AC:
- discuss and decide what approach to take
- instrumentation and debugging options should still be possible when CirrusSearch is called from the REST API