[FF] fuzzy_label_search: fuzzy label search with contiguous-first ordering
Summary
Roll out fuzzy label search, currently behind the fuzzy_label_search feature flag. With the flag on, fuzzySearch on the labels GraphQL field matches labels as a subsequence and orders contiguous matches first.
-
Backend search: !252372 (merged)
-
Contiguous-first ordering and this flag: !255424 (merged)
-
Label widgets start passing
fuzzySearch: !252373 -
DRI: @clavimoniere
Note
Process and guidance live in the docs — this issue is just the commands and a place to track the rollout. "Rolling out" means incrementally enabling the flag on GitLab.com to validate stability — it is not the same as releasing the feature, which happens when the flag is removed. Feature flag controls · Feature flag lifecycle
What could go wrong?
Label search results in the label widgets and the labels GraphQL field. If the ordering or cursor is wrong, users see missing or duplicated labels across pages in the label picker. There's no data written, so turning the flag off restores the current behavior immediately.
Events
- Exceptions with fuzzy_label_search:1
- Events with fuzzy_label_search:1
- Error rate and other graphs by modifying the examples in the Visualization Library
Feature Flag events are only logged by default for feature flags marked for the current or future milestones. To enable while the feature flag is active, see https://docs.gitlab.com/development/feature_flags/#logging
Rollout
Run all production /chatops in #production. Background: incremental rollout process, feature actors.
Non-production
/chatops gitlab run feature set fuzzy_label_search 50 --actors --dev --pre --staging --staging-ref
/chatops gitlab run feature set fuzzy_label_search true --dev --pre --staging --staging-refProduction — percentage rollout (wait ≥15 min between steps, watch dashboards):
/chatops gitlab run feature set fuzzy_label_search <percentage> --actorsOr target specific actors instead:
/chatops gitlab run feature set --project=gitlab-org/gitlab,gitlab-org/gitlab-foss fuzzy_label_search true
/chatops gitlab run feature set --group=gitlab-org,gitlab-com fuzzy_label_search true
/chatops gitlab run feature set --user=clavimoniere fuzzy_label_search trueBefore global rollout
Confirm the relevant gotchas before going to 100% — see enabling a feature for GitLab.com:
- Docs + version history updated
- Breaking changes announced, if any
- Change management issue opened, if required
- External API consumers handled with a fail-open mechanism, if applicable
Cleanup
Remove the flag once deemed stable — see cleaning up. Track it here, or open a follow-up Feature Flag Cleanup issue. Remove the flag and its YAML definition from the codebase, then:
/chatops gitlab run release check <merge-request-url> <milestone>
/chatops gitlab run feature delete fuzzy_label_search --dev --pre --staging --staging-ref --productionRollback
/chatops gitlab run feature set fuzzy_label_search false # production
/chatops gitlab run feature set fuzzy_label_search false --dev --pre --staging --staging-ref # non-production
/chatops gitlab run feature delete fuzzy_label_search --dev --pre --staging --staging-ref --production # remove entirely