Draft: [skip ci] Roll out Vue 3 on the merge request pages

What does this MR do and why?

This MR moves the merge request pages to Vue 3, behind their own feature flag: vue3_migrate_merge_request_pages. The flag is off by default.

These pages are the most used pages in the product. They need a rollout of their own, separate from the final sweep in !261154 (merged). The final sweep skips every entry that an open migration MR changes, so this MR takes these entries out of it.

The MR adds a vue3_migration.yml with status: rollout to these page entries:

  • projects.merge_requests.show (CE and EE)
  • projects.merge_requests.diffs
  • projects.merge_requests.rapid_diffs
  • projects.merge_requests.reports
  • projects.merge_requests.creations
  • projects.merge_requests.creations.new (CE and EE)
  • projects.merge_requests.creations.diffs (EE only)

These projects.merge_requests.* entries already have a yml on master, so this MR does not change them:

  • conflicts
  • edit
  • index

Screenshots or screen recordings

No UI change while the flag is off.

How to set up and validate locally

  1. Enable the flag in the Rails console: Feature.enable(:vue3_migrate_merge_request_pages).
  2. Open a merge request and its Changes tab.
  3. In the browser console, run document.querySelectorAll('[data-gitlab-vue3-app]').length. The result is greater than 0.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist.

References

Merge request reports

Loading
Loading