Feature flag rollout - mwcp_skip_ci_guard
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Label this issue](https://contributors.gitlab.com/manage-issue?action=label&projectId=278964&issueIid=594568) </details> <!--IssueSummary end--> ## Summary This feature flag controls the removal of a redundant CI guard in the auto-merge `process` method for both `MergeWhenChecksPassService` (MWCP) and `AddToMergeTrainWhenChecksPassService` (AMTWCP). **Feature flag name:** `mwcp_skip_ci_guard` **Type:** `gitlab_com_derisk` **Group:** `group::code review` **Introduced in:** https://gitlab.com/gitlab-org/gitlab/-/merge_requests/226657 ### Problem The `process` method had a redundant early CI guard that rejected skipped pipelines before `mergeable?` was called, even though `CheckCiStatusService` (invoked by `mergeable?`) already correctly handles skipped pipelines by checking `allow_merge_on_skipped_pipeline?`. ### What does enabling the flag do? When **enabled**, the redundant early CI guard is removed, allowing `mergeable?` to be the single source of truth for all CI status checks. This fixes auto-merge (MWCP/AMTWCP) to correctly handle skipped pipelines when the project has `allow_merge_on_skipped_pipeline` enabled. When **disabled** (default), the old behavior is preserved — the early CI guard remains in place. ## Rollout Plan ### Rollout Steps - [ ] Enable on staging (`/chatops run feature set mwcp_skip_ci_guard true --staging`) - [ ] Test on staging - [ ] Enable on GitLab.com for a specific project/group for initial validation - `/chatops run feature set --project=gitlab-org/gitlab mwcp_skip_ci_guard true` - [ ] Enable on GitLab.com globally (`/chatops run feature set mwcp_skip_ci_guard true`) - [ ] Monitor for errors/regressions for 1-2 days - [ ] Remove feature flag and clean up code ### Rollback Steps Disable the feature flag: ``` /chatops run feature set mwcp_skip_ci_guard false ``` ### What to monitor - Auto-merge processing errors in Kibana/Sentry - Merge requests stuck in auto-merge state - Unexpected merges when pipelines are skipped and `allow_merge_on_skipped_pipeline` is disabled
issue