Add Vue 3 rollout flag for the feature flags pages

Adds the vue3_migrate_feature_flags feature flag and a vue3_migration.yml for the three feature flags entrypoints. They opt into Option 1 (the bundler builds a Vue 2 and a Vue 3 chunk; Rails serves the Vue 3 chunk only when the flag is on; default-off).

Scope

Three entrypoints under pages/projects/feature_flags, all sharing the ~/feature_flags app (no Apollo), each mounted with initVueApp:

  • index (FeatureFlagsComponentRoot, Pinia), new (NewFeatureFlagRoot, Vuex), edit (EditFeatureFlagRoot, Vuex).

All status: rollout behind vue3_migrate_feature_flags.

Risk

Low–moderate. new and edit use a Vuex store (runs under @vue/compat); the key check is the store round-trip — create a flag with a strategy, edit one, toggle state. index uses Pinia. No Apollo, and no known Vue 2→3 breakers. Covered by spec/frontend/feature_flags (plus EE specs).

Verification

  • bundle exec rspec spec/lib/gitlab/vue3_migration_files_spec.rb
  • node scripts/frontend/vue3_migration_stats.mjs --owners
  • VUE_VERSION=3 yarn jest spec/frontend/feature_flags — 30 suites, 273 tests, 0 failures

Local verification

References

Edited by Anna Vovchenko

Merge request reports

Loading
Loading