Feature flag rollout: auto_merge_on_mark_as_unchecked

Summary

This feature flag controls the behavior introduced in MR !TBD to fix #594868.

When enabled, AutoMergeProcessWorker is re-enqueued for merge requests that have auto_merge_enabled=true after they are marked as unchecked via mark_as_unchecked. This covers both the individual state machine path and the batch path (batch_mark_as_unchecked).

Problem

When multiple MRs target the same branch with auto-merge enabled and their pipelines succeed concurrently, merging one MR triggers mark_as_unchecked on all sibling MRs. No mechanism re-triggers the mergeability check or auto-merge processing for those MRs, leaving them stuck in unchecked state.

Solution

After transitioning to unchecked, if auto_merge_enabled=true, enqueue AutoMergeProcessWorker to re-evaluate the merge request.

Rollout plan

  • Enable on staging
  • Enable on GitLab.com for a test project
  • Enable on GitLab.com globally
  • Verify no increase in Sidekiq queue depth for auto_merge queue
  • Verify no increase in Gitaly load from mergeability checks
  • Remove feature flag and cleanup
Edited by 🤖 GitLab Bot 🤖