The searchable content may be constrained, but the queries aren’t ;)
Search is hard because you need to anticipate and model the language of all potential searchers and the content.
There’s also lots of ambiguity because you’ll only get one or two keywords from the searcher without any other context, and you need to take into account trends and content quality and metadata.
Also, in lots of cases search is bad because the product team either doesn’t know or doesn’t care.