Advanced search: Add planner role support to code (blobs)
Problem to solve
A user with the Planner role in a private project gets no Advanced Search (Elasticsearch) results for code (blobs). The language filter sidebar is also empty.
ProjectPolicy gives Planners read_code, and BlobPolicy uses read_code, so Planners can view the code in the UI. Search is stricter than the policy: the Elasticsearch membership filters use PRIVATE_FEATURES_MIN_ACCESS_LEVEL_FOR_PRIVATE_PROJECT[:repository], which is Reporter for private projects.
Commit search had the same problem and was fixed in !253191 (merged) (#627146 (closed)). That fix left blobs out of scope.
Proposal
Pass the same relaxed_feature_access rule that commit search uses to blob search and to blob_aggregations in Elastic::Latest::GitClassProxy. This covers results, counts, and the language facet.
Out of scope: Zoekt exact code search, and Advanced Search for comments on commits (#538209 (closed)).
Implemented in !258483 (merged).