Loading
Migrate MR conflicts page to Vue 3
What does this MR do and why?
Migrates the projects.merge_requests.conflicts (merge conflict resolution) page entrypoint to Vue 3 via @vue/compat, behind a feature flag, using the standard vue3_migration.yml flow.
Adds a beta feature flag vue3_migrate_mr_conflicts and a vue3_migration.yml (status: rollout) next to the entrypoint. No application logic changes.
This page does not use Rapid Diffs, so it is safe to migrate independently of the Rapid Diffs compatibility work.
Part of the Vue 3 migration (Code Review) epic, gitlab-org#23167.
Closes #611458
How to set up and validate locally
- Re-run the Vue 3 infection scanner and restart Vite:
node scripts/frontend/infection_scanner/infection_scanner.mjs gdk restart vite rails-web - Enable the flag:
Feature.enable(:vue3_migrate_mr_conflicts). - Open a merge request that has conflicts, then open the conflict resolution page.
- Confirm the console logs
[gitlab] [V] Using Vue.js 3 (with @vue/compat)anddocument.querySelectorAll('[data-gitlab-vue3-app]')returns the app(s). - Smoke test both resolution modes (interactive and edit inline) and committing the resolution.