summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-09-19 01:45:44 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-09-19 01:45:44 +0000
commit85dc423f7090da0a52c73eb66faf22ddb20efff9 (patch)
tree9160f299afd8c80c038f08e1545be119f5e3f1e1 /config
parent15c2c8c66dbe422588e5411eee7e68f1fa440bb8 (diff)
downloadgitlab-ce-85dc423f7090da0a52c73eb66faf22ddb20efff9.tar.gz
Add latest changes from gitlab-org/gitlab@13-4-stable-ee
Diffstat (limited to 'config')
-rw-r--r--config/application.rb12
-rw-r--r--config/dependency_decisions.yml6
-rw-r--r--config/environments/test.rb2
-rw-r--r--config/feature_categories.yml1
-rw-r--r--config/feature_flags/development/additional_snowplow_tracking.yml7
-rw-r--r--config/feature_flags/development/ajax_new_deploy_token.yml7
-rw-r--r--config/feature_flags/development/allow_group_deploy_token.yml7
-rw-r--r--config/feature_flags/development/allow_possible_spam.yml7
-rw-r--r--config/feature_flags/development/allow_unsafe_ruby_regexp.yml7
-rw-r--r--config/feature_flags/development/api_kaminari_count_with_limit.yml7
-rw-r--r--config/feature_flags/development/application_settings_tokens_optional_encryption.yml7
-rw-r--r--config/feature_flags/development/approval_suggestions.yml7
-rw-r--r--config/feature_flags/development/approvals_commented_by.yml7
-rw-r--r--config/feature_flags/development/archive_rate_limit.yml7
-rw-r--r--config/feature_flags/development/artifacts_management_page.yml7
-rw-r--r--config/feature_flags/development/async_commit_diff_files.yml7
-rw-r--r--config/feature_flags/development/auto_create_cluster_management_project.yml7
-rw-r--r--config/feature_flags/development/auto_devops_banner_disabled.yml7
-rw-r--r--config/feature_flags/development/backfill_partitioned_audit_events.yml7
-rw-r--r--config/feature_flags/development/batch_suggestions.yml7
-rw-r--r--config/feature_flags/development/bitbucket_server_user_mapping_by_username.yml7
-rw-r--r--config/feature_flags/development/block_anonymous_global_searches.yml7
-rw-r--r--config/feature_flags/development/boards_with_swimlanes.yml7
-rw-r--r--config/feature_flags/development/branch_list_keyset_pagination.yml7
-rw-r--r--config/feature_flags/development/branch_push_merge_commit_analyze.yml7
-rw-r--r--config/feature_flags/development/broadcast_issue_updates.yml7
-rw-r--r--config/feature_flags/development/build_service_proxy.yml7
-rw-r--r--config/feature_flags/development/builds.yml7
-rw-r--r--config/feature_flags/development/bulk_update_health_status.yml7
-rw-r--r--config/feature_flags/development/burnup_charts.yml7
-rw-r--r--config/feature_flags/development/chatops.yml7
-rw-r--r--config/feature_flags/development/ci_artifacts_exclude.yml7
-rw-r--r--config/feature_flags/development/ci_bridge_pipeline_details.yml7
-rw-r--r--config/feature_flags/development/ci_build_metadata_config.yml7
-rw-r--r--config/feature_flags/development/ci_bulk_insert_on_create.yml7
-rw-r--r--config/feature_flags/development/ci_child_of_child_pipeline.yml7
-rw-r--r--config/feature_flags/development/ci_daily_code_coverage.yml7
-rw-r--r--config/feature_flags/development/ci_disable_validates_dependencies.yml7
-rw-r--r--config/feature_flags/development/ci_disallow_to_create_merge_request_pipelines_in_target_project.yml7
-rw-r--r--config/feature_flags/development/ci_download_daily_code_coverage.yml7
-rw-r--r--config/feature_flags/development/ci_dynamic_child_pipeline.yml7
-rw-r--r--config/feature_flags/development/ci_enable_live_trace.yml7
-rw-r--r--config/feature_flags/development/ci_instance_variables_ui.yml7
-rw-r--r--config/feature_flags/development/ci_job_heartbeats_runner.yml7
-rw-r--r--config/feature_flags/development/ci_job_jwt.yml7
-rw-r--r--config/feature_flags/development/ci_jobs_finder_refactor.yml7
-rw-r--r--config/feature_flags/development/ci_key_autocomplete.yml7
-rw-r--r--config/feature_flags/development/ci_lint_creates_pipeline_with_dry_run.yml7
-rw-r--r--config/feature_flags/development/ci_lint_vue.yml7
-rw-r--r--config/feature_flags/development/ci_new_artifact_file_reader.yml7
-rw-r--r--config/feature_flags/development/ci_pipeline_latest.yml7
-rw-r--r--config/feature_flags/development/ci_pipeline_rewind_iid.yml7
-rw-r--r--config/feature_flags/development/ci_pipeline_status_omit_commit_sha_in_cache_key.yml7
-rw-r--r--config/feature_flags/development/ci_raise_job_rules_without_workflow_rules_warning.yml7
-rw-r--r--config/feature_flags/development/ci_runners_tokens_optional_encryption.yml7
-rw-r--r--config/feature_flags/development/ci_skip_persistent_ref_existence_check.yml7
-rw-r--r--config/feature_flags/development/ci_store_pipeline_messages.yml7
-rw-r--r--config/feature_flags/development/ci_synchronous_artifact_parsing.yml7
-rw-r--r--config/feature_flags/development/ci_update_queues_for_online_runners.yml7
-rw-r--r--config/feature_flags/development/ci_yaml_limit_size.yml7
-rw-r--r--config/feature_flags/development/cleanup_lfs_during_gc.yml7
-rw-r--r--config/feature_flags/development/cluster_management_project.yml7
-rw-r--r--config/feature_flags/development/clusters_list_redesign.yml7
-rw-r--r--config/feature_flags/development/container_registry_api.yml7
-rw-r--r--config/feature_flags/development/container_registry_cleanup.yml7
-rw-r--r--config/feature_flags/development/container_registry_expiration_policies_throttling.yml7
-rw-r--r--config/feature_flags/development/container_registry_fast_tag_delete.yml7
-rw-r--r--config/feature_flags/development/context_commits.yml7
-rw-r--r--config/feature_flags/development/create_cloud_run_clusters.yml7
-rw-r--r--config/feature_flags/development/dashboard_pipeline_status.yml7
-rw-r--r--config/feature_flags/development/deploy_from_footer.yml7
-rw-r--r--config/feature_flags/development/deploy_tokens_api.yml7
-rw-r--r--config/feature_flags/development/design_management_allow_dangerous_images.yml7
-rw-r--r--config/feature_flags/development/design_management_reference_filter_gfm_pipeline.yml7
-rw-r--r--config/feature_flags/development/design_management_todo_button.yml (renamed from config/feature_flags/development/reorder_designs.yml)6
-rw-r--r--config/feature_flags/development/disable_metric_dashboard_refresh_rate.yml7
-rw-r--r--config/feature_flags/development/drop_license_management_artifact.yml7
-rw-r--r--config/feature_flags/development/dynamic_image_resizing_owner.yml7
-rw-r--r--config/feature_flags/development/dynamic_image_resizing_requester.yml (renamed from config/feature_flags/development/dynamic_image_resizing.yml)4
-rw-r--r--config/feature_flags/development/efficient_counter_attribute.yml7
-rw-r--r--config/feature_flags/development/export_lfs_objects_projects.yml7
-rw-r--r--config/feature_flags/development/export_reduce_relation_batch_size.yml7
-rw-r--r--config/feature_flags/development/file_identifier_hash.yml7
-rw-r--r--config/feature_flags/development/filter_pipelines_search.yml7
-rw-r--r--config/feature_flags/development/force_autodevops_on_by_default.yml7
-rw-r--r--config/feature_flags/development/forking.yml7
-rw-r--r--config/feature_flags/development/forward_deployment_enabled.yml7
-rw-r--r--config/feature_flags/development/g_compliance_dashboard_feature.yml7
-rw-r--r--config/feature_flags/development/generic_packages.yml7
-rw-r--r--config/feature_flags/development/geo_snippet_repository_replication.yml7
-rw-r--r--config/feature_flags/development/git_push_create_all_pipelines.yml7
-rw-r--r--config/feature_flags/development/gitaly_catfile-cache.yml7
-rw-r--r--config/feature_flags/development/gitaly_deny_disk_access.yml7
-rw-r--r--config/feature_flags/development/gitaly_enforce_requests_limits.yml7
-rw-r--r--config/feature_flags/development/gitaly_mep_mep.yml7
-rw-r--r--config/feature_flags/development/gitlab_ci_yml_preview.yml (renamed from config/feature_flags/development/ci_plan_needs_size_limit.yml)8
-rw-r--r--config/feature_flags/development/gitpod.yml7
-rw-r--r--config/feature_flags/development/global_default_branch_name.yml7
-rw-r--r--config/feature_flags/development/go_proxy.yml7
-rw-r--r--config/feature_flags/development/go_proxy_disable_gomod_validation.yml7
-rw-r--r--config/feature_flags/development/grape_gitlab_json.yml7
-rw-r--r--config/feature_flags/development/graphql_board_lists.yml7
-rw-r--r--config/feature_flags/development/graphql_logging.yml7
-rw-r--r--config/feature_flags/development/graphql_lookahead_support.yml7
-rw-r--r--config/feature_flags/development/graphql_milestone_stats.yml7
-rw-r--r--config/feature_flags/development/graphql_release_data.yml7
-rw-r--r--config/feature_flags/development/group_export_ndjson.yml7
-rw-r--r--config/feature_flags/development/group_import_export.yml7
-rw-r--r--config/feature_flags/development/group_import_ndjson.yml7
-rw-r--r--config/feature_flags/development/group_level_integrations.yml (renamed from config/feature_flags/development/async_update_pages_config.yml)8
-rw-r--r--config/feature_flags/development/groups_tokens_optional_encryption.yml7
-rw-r--r--config/feature_flags/development/hide_jump_to_next_unresolved_in_threads.yml7
-rw-r--r--config/feature_flags/development/highlight_current_diff_row.yml7
-rw-r--r--config/feature_flags/development/improved_mr_merged_at_queries.yml2
-rw-r--r--config/feature_flags/development/inactive_policy_condition.yml7
-rw-r--r--config/feature_flags/development/ingress_modsecurity.yml7
-rw-r--r--config/feature_flags/development/instance_statistics.yml7
-rw-r--r--config/feature_flags/development/invisible_captcha.yml7
-rw-r--r--config/feature_flags/development/invite_email_experiment.yml7
-rw-r--r--config/feature_flags/development/invite_your_teammates_banner_a.yml7
-rw-r--r--config/feature_flags/development/issues.yml7
-rw-r--r--config/feature_flags/development/json_limited_encoder.yml7
-rw-r--r--config/feature_flags/development/json_wrapper_legacy_mode.yml7
-rw-r--r--config/feature_flags/development/junit_pipeline_screenshots_view.yml7
-rw-r--r--config/feature_flags/development/lfs_check.yml7
-rw-r--r--config/feature_flags/development/lfs_link_existing_object.yml7
-rw-r--r--config/feature_flags/development/limit_projects_in_groups_api.yml7
-rw-r--r--config/feature_flags/development/log_import_export_relation_creation.yml7
-rw-r--r--config/feature_flags/development/maintenance_mode.yml7
-rw-r--r--config/feature_flags/development/marginalia.yml7
-rw-r--r--config/feature_flags/development/merge_orchestration_service.yml7
-rw-r--r--config/feature_flags/development/merge_red_head_comments_position_on_demand.yml7
-rw-r--r--config/feature_flags/development/merge_ref_auto_sync.yml7
-rw-r--r--config/feature_flags/development/merge_ref_auto_sync_lock.yml7
-rw-r--r--config/feature_flags/development/merge_request_draft_filter.yml7
-rw-r--r--config/feature_flags/development/merge_request_rebase_nowait_lock.yml7
-rw-r--r--config/feature_flags/development/merge_request_reviewers.yml7
-rw-r--r--config/feature_flags/development/merge_request_short_pipeline_serializer.yml7
-rw-r--r--config/feature_flags/development/merge_request_widget_graphql.yml7
-rw-r--r--config/feature_flags/development/merge_requests.yml7
-rw-r--r--config/feature_flags/development/metrics_dashboard.yml7
-rw-r--r--config/feature_flags/development/metrics_dashboard_exhaustive_validations.yml7
-rw-r--r--config/feature_flags/development/migrate_bio_to_user_details.yml7
-rw-r--r--config/feature_flags/development/migrate_user_mentions.yml7
-rw-r--r--config/feature_flags/development/modifed_path_ci_variables.yml7
-rw-r--r--config/feature_flags/development/monaco_blobs.yml7
-rw-r--r--config/feature_flags/development/monaco_ci.yml7
-rw-r--r--config/feature_flags/development/mr_commit_neighbor_nav.yml7
-rw-r--r--config/feature_flags/development/multi_select_board.yml7
-rw-r--r--config/feature_flags/development/multiline_comments.yml7
-rw-r--r--config/feature_flags/development/new_pipeline_form.yml7
-rw-r--r--config/feature_flags/development/new_release_page.yml7
-rw-r--r--config/feature_flags/development/new_variables_ui.yml7
-rw-r--r--config/feature_flags/development/not_issuable_queries.yml7
-rw-r--r--config/feature_flags/development/notes_create_service_tracking.yml7
-rw-r--r--config/feature_flags/development/oj_json.yml7
-rw-r--r--config/feature_flags/development/optimized_issuable_label_filter.yml7
-rw-r--r--config/feature_flags/development/optimized_timebox_queries.yml7
-rw-r--r--config/feature_flags/development/packages_coming_soon.yml7
-rw-r--r--config/feature_flags/development/pages.yml7
-rw-r--r--config/feature_flags/development/pages_artifacts_archive.yml7
-rw-r--r--config/feature_flags/development/paginated_notes.yml7
-rw-r--r--config/feature_flags/development/periodic_project_authorization_recalculation.yml7
-rw-r--r--config/feature_flags/development/personal_snippet_reference_filters.yml4
-rw-r--r--config/feature_flags/development/phabricator_import.yml7
-rw-r--r--config/feature_flags/development/pipelines_security_report_summary.yml7
-rw-r--r--config/feature_flags/development/product_analytics.yml7
-rw-r--r--config/feature_flags/development/prohibit_hexadecimal_branch_names.yml7
-rw-r--r--config/feature_flags/development/project_export_as_ndjson.yml7
-rw-r--r--config/feature_flags/development/project_import_ndjson.yml7
-rw-r--r--config/feature_flags/development/project_list_filter_bar.yml7
-rw-r--r--config/feature_flags/development/project_statistics_sync.yml7
-rw-r--r--config/feature_flags/development/project_transactionless_destroy.yml7
-rw-r--r--config/feature_flags/development/projects_tokens_optional_encryption.yml7
-rw-r--r--config/feature_flags/development/prometheus_computed_alerts.yml7
-rw-r--r--config/feature_flags/development/push_mirror_syncs_lfs.yml7
-rw-r--r--config/feature_flags/development/reactive_caching_limit_environment.yml7
-rw-r--r--config/feature_flags/development/real_time_issue_sidebar.yml7
-rw-r--r--config/feature_flags/development/rebalance_issues.yml7
-rw-r--r--config/feature_flags/development/release_asset_link_editing.yml7
-rw-r--r--config/feature_flags/development/release_asset_link_type.yml7
-rw-r--r--config/feature_flags/development/release_evidence.yml7
-rw-r--r--config/feature_flags/development/release_evidence_collection.yml7
-rw-r--r--config/feature_flags/development/release_issue_summary.yml7
-rw-r--r--config/feature_flags/development/release_mr_issue_urls.yml7
-rw-r--r--config/feature_flags/development/release_show_page.yml7
-rw-r--r--config/feature_flags/development/remove_legacy_github_client.yml7
-rw-r--r--config/feature_flags/development/repack_after_shard_migration.yml7
-rw-r--r--config/feature_flags/development/repository.yml7
-rw-r--r--config/feature_flags/development/repository_archive_hotlinking_interception.yml7
-rw-r--r--config/feature_flags/development/resource_access_token.yml7
-rw-r--r--config/feature_flags/development/rugged_commit_is_ancestor.yml7
-rw-r--r--config/feature_flags/development/rugged_commit_tree_entry.yml7
-rw-r--r--config/feature_flags/development/rugged_find_commit.yml7
-rw-r--r--config/feature_flags/development/rugged_list_commits_by_oid.yml7
-rw-r--r--config/feature_flags/development/rugged_tree_entries.yml7
-rw-r--r--config/feature_flags/development/rugged_tree_entry.yml7
-rw-r--r--config/feature_flags/development/safezip_use_rubyzip.yml7
-rw-r--r--config/feature_flags/development/save_raw_usage_data.yml7
-rw-r--r--config/feature_flags/development/schema_linting.yml7
-rw-r--r--config/feature_flags/development/search_track_unique_users.yml7
-rw-r--r--config/feature_flags/development/security_on_demand_scans_site_validation.yml7
-rw-r--r--config/feature_flags/development/serverless_domain.yml7
-rw-r--r--config/feature_flags/development/service_desk_custom_address.yml7
-rw-r--r--config/feature_flags/development/settings_operations_prometheus_service.yml7
-rw-r--r--config/feature_flags/development/show_author_on_note.yml7
-rw-r--r--config/feature_flags/development/show_contributor_on_note.yml7
-rw-r--r--config/feature_flags/development/similarity_search.yml7
-rw-r--r--config/feature_flags/development/snippet_multiple_files.yml7
-rw-r--r--config/feature_flags/development/snippets.yml7
-rw-r--r--config/feature_flags/development/snippets_binary_blob.yml7
-rw-r--r--config/feature_flags/development/snippets_edit_vue.yml (renamed from config/feature_flags/development/ci_if_parenthesis_enabled.yml)10
-rw-r--r--config/feature_flags/development/snippets_vue.yml7
-rw-r--r--config/feature_flags/development/soft_email_confirmation.yml7
-rw-r--r--config/feature_flags/development/specialized_project_authorization_project_share_worker.yml7
-rw-r--r--config/feature_flags/development/specialized_project_authorization_workers.yml7
-rw-r--r--config/feature_flags/development/sql-set-operators.yml7
-rw-r--r--config/feature_flags/development/sql_set_operators.yml7
-rw-r--r--config/feature_flags/development/squash_options.yml7
-rw-r--r--config/feature_flags/development/sse_image_uploads.yml7
-rw-r--r--config/feature_flags/development/store_instance_statistics_measurements.yml7
-rw-r--r--config/feature_flags/development/store_mentioned_users_to_db.yml7
-rw-r--r--config/feature_flags/development/suggest_pipeline.yml7
-rw-r--r--config/feature_flags/development/track_editor_edit_actions.yml7
-rw-r--r--config/feature_flags/development/track_issue_activity_actions.yml7
-rw-r--r--config/feature_flags/development/track_resource_state_change_events.yml7
-rw-r--r--config/feature_flags/development/track_unique_visits.yml7
-rw-r--r--config/feature_flags/development/tribute_autocomplete.yml7
-rw-r--r--config/feature_flags/development/unified_diff_lines.yml7
-rw-r--r--config/feature_flags/development/unlink_fork_network_upon_visibility_decrease.yml7
-rw-r--r--config/feature_flags/development/upload_middleware_jwt_params_handler.yml7
-rw-r--r--config/feature_flags/development/usage_data_api.yml7
-rw-r--r--config/feature_flags/development/usage_data_g_compliance_dashboard.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_alert_assigned.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_alert_status_changed.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_alert_todo.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_assigned.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_change_confidential.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_closed.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_comment.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_created.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_relate.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_reopened.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_todo.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_unrelate.yml7
-rw-r--r--config/feature_flags/development/usage_data_incident_management_incident_zoom_meeting.yml7
-rw-r--r--config/feature_flags/development/use_workhorse_s3_client.yml7
-rw-r--r--config/feature_flags/development/user_mode_in_session.yml7
-rw-r--r--config/feature_flags/development/user_time_settings.yml7
-rw-r--r--config/feature_flags/development/users_search.yml7
-rw-r--r--config/feature_flags/development/validate_import_decompressed_archive_size.yml7
-rw-r--r--config/feature_flags/development/view_diffs_file_by_file.yml7
-rw-r--r--config/feature_flags/development/vue_group_members_list.yml7
-rw-r--r--config/feature_flags/development/vue_issuable_sidebar.yml7
-rw-r--r--config/feature_flags/development/vue_issuables_list.yml7
-rw-r--r--config/feature_flags/development/web_ide_primary_edit.yml7
-rw-r--r--config/feature_flags/development/webauthn.yml7
-rw-r--r--config/feature_flags/development/webperf_experiment.yml7
-rw-r--r--config/feature_flags/development/whats_new_drawer.yml7
-rw-r--r--config/feature_flags/development/widget_visibility_polling.yml7
-rw-r--r--config/feature_flags/development/wiki.yml7
-rw-r--r--config/feature_flags/development/wiki_events_on_git_push.yml7
-rw-r--r--config/feature_flags/development/wiki_front_matter.yml7
-rw-r--r--config/feature_flags/development/workhorse_archive_cache_disabled.yml7
-rw-r--r--config/feature_flags/ops/ci_accept_trace.yml7
-rw-r--r--config/feature_flags/ops/ci_trace_overwrite.yml7
-rw-r--r--config/feature_flags/ops/kubernetes_agent_internal_api.yml7
-rw-r--r--config/gitlab.yml.example26
-rw-r--r--config/helpers/is_eslint.js2
-rw-r--r--config/initializers/0_inject_feature_flags.rb1
-rw-r--r--config/initializers/1_settings.rb17
-rw-r--r--config/initializers/7_prometheus_metrics.rb6
-rw-r--r--config/initializers/8_devise.rb2
-rw-r--r--config/initializers/active_record_lifecycle.rb4
-rw-r--r--config/initializers/backtrace_silencers.rb4
-rw-r--r--config/initializers/carrierwave_patch.rb6
-rw-r--r--config/initializers/deprecations.rb2
-rw-r--r--config/initializers/direct_upload_support.rb6
-rw-r--r--config/initializers/doorkeeper.rb11
-rw-r--r--config/initializers/forbid_sidekiq_in_transactions.rb2
-rw-r--r--config/initializers/gitlab_kas_secret.rb1
-rw-r--r--config/initializers/remove_active_job_execute_callback.rb27
-rw-r--r--config/initializers/sidekiq.rb4
-rw-r--r--config/initializers/trusted_proxies.rb2
-rw-r--r--config/initializers/warden.rb2
-rw-r--r--config/initializers/webauthn.rb35
-rw-r--r--config/initializers_before_autoloader/000_inflections.rb1
-rw-r--r--config/locales/devise.en.yml2
-rw-r--r--config/locales/doorkeeper.en.yml7
-rw-r--r--config/routes.rb17
-rw-r--r--config/routes/admin.rb8
-rw-r--r--config/routes/group.rb14
-rw-r--r--config/routes/instance_statistics.rb8
-rw-r--r--config/routes/issues.rb2
-rw-r--r--config/routes/jira_connect.rb15
-rw-r--r--config/routes/profile.rb2
-rw-r--r--config/routes/project.rb52
-rw-r--r--config/routes/user.rb2
-rw-r--r--config/sidekiq_queues.yml14
-rw-r--r--config/spring.rb10
-rw-r--r--config/webpack.config.js4
301 files changed, 2093 insertions, 80 deletions
diff --git a/config/application.rb b/config/application.rb
index 3fd9ce39bb9..4d2f3745b52 100644
--- a/config/application.rb
+++ b/config/application.rb
@@ -49,7 +49,8 @@ module Gitlab
#{config.root}/app/models/members
#{config.root}/app/models/project_services
#{config.root}/app/graphql/resolvers/concerns
- #{config.root}/app/graphql/mutations/concerns])
+ #{config.root}/app/graphql/mutations/concerns
+ #{config.root}/app/graphql/types/concerns])
config.generators.templates.push("#{config.root}/generator_templates")
@@ -176,7 +177,10 @@ module Gitlab
config.assets.precompile << "mailer_client_specific.css"
config.assets.precompile << "notify.css"
config.assets.precompile << "mailers/*.css"
+ config.assets.precompile << "page_bundles/_mixins_and_variables_and_functions.css"
config.assets.precompile << "page_bundles/ide.css"
+ config.assets.precompile << "page_bundles/jira_connect.css"
+ config.assets.precompile << "page_bundles/todos.css"
config.assets.precompile << "page_bundles/xterm.css"
config.assets.precompile << "performance_bar.css"
config.assets.precompile << "lib/ace.js"
@@ -185,6 +189,9 @@ module Gitlab
config.assets.precompile << "locale/**/app.js"
config.assets.precompile << "emoji_sprites.css"
config.assets.precompile << "errors.css"
+ config.assets.precompile << "jira_connect.js"
+
+ config.assets.precompile << "themes/*.css"
config.assets.precompile << "highlight/themes/*.css"
@@ -203,11 +210,10 @@ module Gitlab
config.assets.paths << "#{config.root}/node_modules/xterm/src/"
config.assets.precompile << "xterm.css"
+ # Add EE assets
if Gitlab.ee?
%w[images javascripts stylesheets].each do |path|
config.assets.paths << "#{config.root}/ee/app/assets/#{path}"
- config.assets.precompile << "jira_connect.js"
- config.assets.precompile << "pages/jira_connect.css"
end
end
diff --git a/config/dependency_decisions.yml b/config/dependency_decisions.yml
index 9256b902634..2f0d9066a7a 100644
--- a/config/dependency_decisions.yml
+++ b/config/dependency_decisions.yml
@@ -313,3 +313,9 @@
:why: "https://github.com/cure53/DOMPurify/blob/main/LICENSE and https://gitlab.com/gitlab-org/gitlab/-/merge_requests/31928#note_346604841"
:versions: []
:when: 2020-08-13 13:42:46.508082000 Z
+- - :whitelist
+ - Apache-2.0 WITH LLVM-exception
+ - :who: Nathan Friend
+ :why: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40670#note_403946372
+ :versions: []
+ :when: 2020-08-28 15:01:59.329048917 Z
diff --git a/config/environments/test.rb b/config/environments/test.rb
index e08e2a34ff4..f3a7f894b73 100644
--- a/config/environments/test.rb
+++ b/config/environments/test.rb
@@ -1,4 +1,5 @@
require 'gitlab/testing/request_blocker_middleware'
+require 'gitlab/testing/robots_blocker_middleware'
require 'gitlab/testing/request_inspector_middleware'
require 'gitlab/testing/clear_process_memory_cache_middleware'
require 'gitlab/utils'
@@ -6,6 +7,7 @@ require 'gitlab/utils'
Rails.application.configure do
# Make sure the middleware is inserted first in middleware chain
config.middleware.insert_before(ActionDispatch::Static, Gitlab::Testing::RequestBlockerMiddleware)
+ config.middleware.insert_before(ActionDispatch::Static, Gitlab::Testing::RobotsBlockerMiddleware)
config.middleware.insert_before(ActionDispatch::Static, Gitlab::Testing::RequestInspectorMiddleware)
config.middleware.insert_before(ActionDispatch::Static, Gitlab::Testing::ClearProcessMemoryCacheMiddleware)
diff --git a/config/feature_categories.yml b/config/feature_categories.yml
index e41d6d86e46..7b85f910d85 100644
--- a/config/feature_categories.yml
+++ b/config/feature_categories.yml
@@ -65,6 +65,7 @@
- integrations
- interactive_application_security_testing
- internationalization
+- instance_statistics
- issue_tracking
- jenkins_importer
- jira_importer
diff --git a/config/feature_flags/development/additional_snowplow_tracking.yml b/config/feature_flags/development/additional_snowplow_tracking.yml
new file mode 100644
index 00000000000..f4f73a0bbd0
--- /dev/null
+++ b/config/feature_flags/development/additional_snowplow_tracking.yml
@@ -0,0 +1,7 @@
+---
+name: additional_snowplow_tracking
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ajax_new_deploy_token.yml b/config/feature_flags/development/ajax_new_deploy_token.yml
new file mode 100644
index 00000000000..cffd589b32b
--- /dev/null
+++ b/config/feature_flags/development/ajax_new_deploy_token.yml
@@ -0,0 +1,7 @@
+---
+name: ajax_new_deploy_token
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/allow_group_deploy_token.yml b/config/feature_flags/development/allow_group_deploy_token.yml
new file mode 100644
index 00000000000..f08614b45e9
--- /dev/null
+++ b/config/feature_flags/development/allow_group_deploy_token.yml
@@ -0,0 +1,7 @@
+---
+name: allow_group_deploy_token
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/allow_possible_spam.yml b/config/feature_flags/development/allow_possible_spam.yml
new file mode 100644
index 00000000000..658e775af91
--- /dev/null
+++ b/config/feature_flags/development/allow_possible_spam.yml
@@ -0,0 +1,7 @@
+---
+name: allow_possible_spam
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/allow_unsafe_ruby_regexp.yml b/config/feature_flags/development/allow_unsafe_ruby_regexp.yml
new file mode 100644
index 00000000000..4d3b13deda2
--- /dev/null
+++ b/config/feature_flags/development/allow_unsafe_ruby_regexp.yml
@@ -0,0 +1,7 @@
+---
+name: allow_unsafe_ruby_regexp
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/api_kaminari_count_with_limit.yml b/config/feature_flags/development/api_kaminari_count_with_limit.yml
new file mode 100644
index 00000000000..0224d606df1
--- /dev/null
+++ b/config/feature_flags/development/api_kaminari_count_with_limit.yml
@@ -0,0 +1,7 @@
+---
+name: api_kaminari_count_with_limit
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/application_settings_tokens_optional_encryption.yml b/config/feature_flags/development/application_settings_tokens_optional_encryption.yml
new file mode 100644
index 00000000000..b9a5b6420d1
--- /dev/null
+++ b/config/feature_flags/development/application_settings_tokens_optional_encryption.yml
@@ -0,0 +1,7 @@
+---
+name: application_settings_tokens_optional_encryption
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/approval_suggestions.yml b/config/feature_flags/development/approval_suggestions.yml
new file mode 100644
index 00000000000..ff66e9fa80c
--- /dev/null
+++ b/config/feature_flags/development/approval_suggestions.yml
@@ -0,0 +1,7 @@
+---
+name: approval_suggestions
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/approvals_commented_by.yml b/config/feature_flags/development/approvals_commented_by.yml
new file mode 100644
index 00000000000..cc34b1d165e
--- /dev/null
+++ b/config/feature_flags/development/approvals_commented_by.yml
@@ -0,0 +1,7 @@
+---
+name: approvals_commented_by
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/archive_rate_limit.yml b/config/feature_flags/development/archive_rate_limit.yml
new file mode 100644
index 00000000000..56e9fcd3f8d
--- /dev/null
+++ b/config/feature_flags/development/archive_rate_limit.yml
@@ -0,0 +1,7 @@
+---
+name: archive_rate_limit
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/artifacts_management_page.yml b/config/feature_flags/development/artifacts_management_page.yml
new file mode 100644
index 00000000000..94d99974859
--- /dev/null
+++ b/config/feature_flags/development/artifacts_management_page.yml
@@ -0,0 +1,7 @@
+---
+name: artifacts_management_page
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/async_commit_diff_files.yml b/config/feature_flags/development/async_commit_diff_files.yml
new file mode 100644
index 00000000000..90aed05e12a
--- /dev/null
+++ b/config/feature_flags/development/async_commit_diff_files.yml
@@ -0,0 +1,7 @@
+---
+name: async_commit_diff_files
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/auto_create_cluster_management_project.yml b/config/feature_flags/development/auto_create_cluster_management_project.yml
new file mode 100644
index 00000000000..ca87e401d4a
--- /dev/null
+++ b/config/feature_flags/development/auto_create_cluster_management_project.yml
@@ -0,0 +1,7 @@
+---
+name: auto_create_cluster_management_project
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/auto_devops_banner_disabled.yml b/config/feature_flags/development/auto_devops_banner_disabled.yml
new file mode 100644
index 00000000000..b74d3c723ee
--- /dev/null
+++ b/config/feature_flags/development/auto_devops_banner_disabled.yml
@@ -0,0 +1,7 @@
+---
+name: auto_devops_banner_disabled
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/backfill_partitioned_audit_events.yml b/config/feature_flags/development/backfill_partitioned_audit_events.yml
new file mode 100644
index 00000000000..ae986c941cb
--- /dev/null
+++ b/config/feature_flags/development/backfill_partitioned_audit_events.yml
@@ -0,0 +1,7 @@
+---
+name: backfill_partitioned_audit_events
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/batch_suggestions.yml b/config/feature_flags/development/batch_suggestions.yml
new file mode 100644
index 00000000000..0ef3c7df01e
--- /dev/null
+++ b/config/feature_flags/development/batch_suggestions.yml
@@ -0,0 +1,7 @@
+---
+name: batch_suggestions
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/bitbucket_server_user_mapping_by_username.yml b/config/feature_flags/development/bitbucket_server_user_mapping_by_username.yml
new file mode 100644
index 00000000000..3875cce4d28
--- /dev/null
+++ b/config/feature_flags/development/bitbucket_server_user_mapping_by_username.yml
@@ -0,0 +1,7 @@
+---
+name: bitbucket_server_user_mapping_by_username
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36885
+rollout_issue_url:
+group: group::import
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/block_anonymous_global_searches.yml b/config/feature_flags/development/block_anonymous_global_searches.yml
new file mode 100644
index 00000000000..527e99ad8a8
--- /dev/null
+++ b/config/feature_flags/development/block_anonymous_global_searches.yml
@@ -0,0 +1,7 @@
+---
+name: block_anonymous_global_searches
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41041
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/244276
+group: group::global search
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/boards_with_swimlanes.yml b/config/feature_flags/development/boards_with_swimlanes.yml
new file mode 100644
index 00000000000..e2db136b45c
--- /dev/null
+++ b/config/feature_flags/development/boards_with_swimlanes.yml
@@ -0,0 +1,7 @@
+---
+name: boards_with_swimlanes
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/branch_list_keyset_pagination.yml b/config/feature_flags/development/branch_list_keyset_pagination.yml
new file mode 100644
index 00000000000..11975c67561
--- /dev/null
+++ b/config/feature_flags/development/branch_list_keyset_pagination.yml
@@ -0,0 +1,7 @@
+---
+name: branch_list_keyset_pagination
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/branch_push_merge_commit_analyze.yml b/config/feature_flags/development/branch_push_merge_commit_analyze.yml
new file mode 100644
index 00000000000..f5a695a9ce9
--- /dev/null
+++ b/config/feature_flags/development/branch_push_merge_commit_analyze.yml
@@ -0,0 +1,7 @@
+---
+name: branch_push_merge_commit_analyze
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/broadcast_issue_updates.yml b/config/feature_flags/development/broadcast_issue_updates.yml
new file mode 100644
index 00000000000..2db27dfb2ed
--- /dev/null
+++ b/config/feature_flags/development/broadcast_issue_updates.yml
@@ -0,0 +1,7 @@
+---
+name: broadcast_issue_updates
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/build_service_proxy.yml b/config/feature_flags/development/build_service_proxy.yml
new file mode 100644
index 00000000000..165e3c15f81
--- /dev/null
+++ b/config/feature_flags/development/build_service_proxy.yml
@@ -0,0 +1,7 @@
+---
+name: build_service_proxy
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/builds.yml b/config/feature_flags/development/builds.yml
new file mode 100644
index 00000000000..6c17f2eb962
--- /dev/null
+++ b/config/feature_flags/development/builds.yml
@@ -0,0 +1,7 @@
+---
+name: builds
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/bulk_update_health_status.yml b/config/feature_flags/development/bulk_update_health_status.yml
new file mode 100644
index 00000000000..5553f2e077f
--- /dev/null
+++ b/config/feature_flags/development/bulk_update_health_status.yml
@@ -0,0 +1,7 @@
+---
+name: bulk_update_health_status
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/burnup_charts.yml b/config/feature_flags/development/burnup_charts.yml
new file mode 100644
index 00000000000..9484af49530
--- /dev/null
+++ b/config/feature_flags/development/burnup_charts.yml
@@ -0,0 +1,7 @@
+---
+name: burnup_charts
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/chatops.yml b/config/feature_flags/development/chatops.yml
new file mode 100644
index 00000000000..c548af50aa5
--- /dev/null
+++ b/config/feature_flags/development/chatops.yml
@@ -0,0 +1,7 @@
+---
+name: chatops
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_artifacts_exclude.yml b/config/feature_flags/development/ci_artifacts_exclude.yml
new file mode 100644
index 00000000000..6e9d27efe42
--- /dev/null
+++ b/config/feature_flags/development/ci_artifacts_exclude.yml
@@ -0,0 +1,7 @@
+---
+name: ci_artifacts_exclude
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_bridge_pipeline_details.yml b/config/feature_flags/development/ci_bridge_pipeline_details.yml
new file mode 100644
index 00000000000..59c5d978eb0
--- /dev/null
+++ b/config/feature_flags/development/ci_bridge_pipeline_details.yml
@@ -0,0 +1,7 @@
+---
+name: ci_bridge_pipeline_details
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41263
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/250683
+group: group::memory
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_build_metadata_config.yml b/config/feature_flags/development/ci_build_metadata_config.yml
new file mode 100644
index 00000000000..add7c963272
--- /dev/null
+++ b/config/feature_flags/development/ci_build_metadata_config.yml
@@ -0,0 +1,7 @@
+---
+name: ci_build_metadata_config
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_bulk_insert_on_create.yml b/config/feature_flags/development/ci_bulk_insert_on_create.yml
new file mode 100644
index 00000000000..3227497ecfc
--- /dev/null
+++ b/config/feature_flags/development/ci_bulk_insert_on_create.yml
@@ -0,0 +1,7 @@
+---
+name: ci_bulk_insert_on_create
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_child_of_child_pipeline.yml b/config/feature_flags/development/ci_child_of_child_pipeline.yml
new file mode 100644
index 00000000000..02122076434
--- /dev/null
+++ b/config/feature_flags/development/ci_child_of_child_pipeline.yml
@@ -0,0 +1,7 @@
+---
+name: ci_child_of_child_pipeline
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41102
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/243747
+group: 'group::continuous integration'
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_daily_code_coverage.yml b/config/feature_flags/development/ci_daily_code_coverage.yml
new file mode 100644
index 00000000000..c9add1bf460
--- /dev/null
+++ b/config/feature_flags/development/ci_daily_code_coverage.yml
@@ -0,0 +1,7 @@
+---
+name: ci_daily_code_coverage
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_disable_validates_dependencies.yml b/config/feature_flags/development/ci_disable_validates_dependencies.yml
new file mode 100644
index 00000000000..65358a04340
--- /dev/null
+++ b/config/feature_flags/development/ci_disable_validates_dependencies.yml
@@ -0,0 +1,7 @@
+---
+name: ci_disable_validates_dependencies
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_disallow_to_create_merge_request_pipelines_in_target_project.yml b/config/feature_flags/development/ci_disallow_to_create_merge_request_pipelines_in_target_project.yml
new file mode 100644
index 00000000000..81a0d014b12
--- /dev/null
+++ b/config/feature_flags/development/ci_disallow_to_create_merge_request_pipelines_in_target_project.yml
@@ -0,0 +1,7 @@
+---
+name: ci_disallow_to_create_merge_request_pipelines_in_target_project
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40724
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/235119
+group: group::progressive delivery
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_download_daily_code_coverage.yml b/config/feature_flags/development/ci_download_daily_code_coverage.yml
new file mode 100644
index 00000000000..d209f2bf9ad
--- /dev/null
+++ b/config/feature_flags/development/ci_download_daily_code_coverage.yml
@@ -0,0 +1,7 @@
+---
+name: ci_download_daily_code_coverage
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_dynamic_child_pipeline.yml b/config/feature_flags/development/ci_dynamic_child_pipeline.yml
new file mode 100644
index 00000000000..ac2afe77743
--- /dev/null
+++ b/config/feature_flags/development/ci_dynamic_child_pipeline.yml
@@ -0,0 +1,7 @@
+---
+name: ci_dynamic_child_pipeline
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_enable_live_trace.yml b/config/feature_flags/development/ci_enable_live_trace.yml
new file mode 100644
index 00000000000..e9fd998f6df
--- /dev/null
+++ b/config/feature_flags/development/ci_enable_live_trace.yml
@@ -0,0 +1,7 @@
+---
+name: ci_enable_live_trace
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_instance_variables_ui.yml b/config/feature_flags/development/ci_instance_variables_ui.yml
new file mode 100644
index 00000000000..0671d1a1a7c
--- /dev/null
+++ b/config/feature_flags/development/ci_instance_variables_ui.yml
@@ -0,0 +1,7 @@
+---
+name: ci_instance_variables_ui
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_job_heartbeats_runner.yml b/config/feature_flags/development/ci_job_heartbeats_runner.yml
new file mode 100644
index 00000000000..dcccd1512ed
--- /dev/null
+++ b/config/feature_flags/development/ci_job_heartbeats_runner.yml
@@ -0,0 +1,7 @@
+---
+name: ci_job_heartbeats_runner
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_job_jwt.yml b/config/feature_flags/development/ci_job_jwt.yml
new file mode 100644
index 00000000000..3d18472add4
--- /dev/null
+++ b/config/feature_flags/development/ci_job_jwt.yml
@@ -0,0 +1,7 @@
+---
+name: ci_job_jwt
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_jobs_finder_refactor.yml b/config/feature_flags/development/ci_jobs_finder_refactor.yml
new file mode 100644
index 00000000000..13b8fa03477
--- /dev/null
+++ b/config/feature_flags/development/ci_jobs_finder_refactor.yml
@@ -0,0 +1,7 @@
+---
+name: ci_jobs_finder_refactor
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36622
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/245183
+group: group::continuous integration
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_key_autocomplete.yml b/config/feature_flags/development/ci_key_autocomplete.yml
new file mode 100644
index 00000000000..1c6bfa90a9d
--- /dev/null
+++ b/config/feature_flags/development/ci_key_autocomplete.yml
@@ -0,0 +1,7 @@
+---
+name: ci_key_autocomplete
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_lint_creates_pipeline_with_dry_run.yml b/config/feature_flags/development/ci_lint_creates_pipeline_with_dry_run.yml
new file mode 100644
index 00000000000..8abb52486b6
--- /dev/null
+++ b/config/feature_flags/development/ci_lint_creates_pipeline_with_dry_run.yml
@@ -0,0 +1,7 @@
+---
+name: ci_lint_creates_pipeline_with_dry_run
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_lint_vue.yml b/config/feature_flags/development/ci_lint_vue.yml
new file mode 100644
index 00000000000..832f543ba3d
--- /dev/null
+++ b/config/feature_flags/development/ci_lint_vue.yml
@@ -0,0 +1,7 @@
+---
+name: ci_lint_vue
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/42401
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/249661
+group: group::continuous intergration
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/ci_new_artifact_file_reader.yml b/config/feature_flags/development/ci_new_artifact_file_reader.yml
new file mode 100644
index 00000000000..a6e9c67bd7e
--- /dev/null
+++ b/config/feature_flags/development/ci_new_artifact_file_reader.yml
@@ -0,0 +1,7 @@
+---
+name: ci_new_artifact_file_reader
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40268
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/249588
+group: group::pipeline authoring
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_pipeline_latest.yml b/config/feature_flags/development/ci_pipeline_latest.yml
new file mode 100644
index 00000000000..661d0714e53
--- /dev/null
+++ b/config/feature_flags/development/ci_pipeline_latest.yml
@@ -0,0 +1,7 @@
+---
+name: ci_pipeline_latest
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_pipeline_rewind_iid.yml b/config/feature_flags/development/ci_pipeline_rewind_iid.yml
new file mode 100644
index 00000000000..8b6bb378a0a
--- /dev/null
+++ b/config/feature_flags/development/ci_pipeline_rewind_iid.yml
@@ -0,0 +1,7 @@
+---
+name: ci_pipeline_rewind_iid
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_pipeline_status_omit_commit_sha_in_cache_key.yml b/config/feature_flags/development/ci_pipeline_status_omit_commit_sha_in_cache_key.yml
new file mode 100644
index 00000000000..eda5ab00ef1
--- /dev/null
+++ b/config/feature_flags/development/ci_pipeline_status_omit_commit_sha_in_cache_key.yml
@@ -0,0 +1,7 @@
+---
+name: ci_pipeline_status_omit_commit_sha_in_cache_key
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_raise_job_rules_without_workflow_rules_warning.yml b/config/feature_flags/development/ci_raise_job_rules_without_workflow_rules_warning.yml
new file mode 100644
index 00000000000..d2e25e7bf11
--- /dev/null
+++ b/config/feature_flags/development/ci_raise_job_rules_without_workflow_rules_warning.yml
@@ -0,0 +1,7 @@
+---
+name: ci_raise_job_rules_without_workflow_rules_warning
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_runners_tokens_optional_encryption.yml b/config/feature_flags/development/ci_runners_tokens_optional_encryption.yml
new file mode 100644
index 00000000000..76689452b2a
--- /dev/null
+++ b/config/feature_flags/development/ci_runners_tokens_optional_encryption.yml
@@ -0,0 +1,7 @@
+---
+name: ci_runners_tokens_optional_encryption
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_skip_persistent_ref_existence_check.yml b/config/feature_flags/development/ci_skip_persistent_ref_existence_check.yml
new file mode 100644
index 00000000000..a9a79f80512
--- /dev/null
+++ b/config/feature_flags/development/ci_skip_persistent_ref_existence_check.yml
@@ -0,0 +1,7 @@
+---
+name: ci_skip_persistent_ref_existence_check
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_store_pipeline_messages.yml b/config/feature_flags/development/ci_store_pipeline_messages.yml
new file mode 100644
index 00000000000..c7235ab2196
--- /dev/null
+++ b/config/feature_flags/development/ci_store_pipeline_messages.yml
@@ -0,0 +1,7 @@
+---
+name: ci_store_pipeline_messages
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_synchronous_artifact_parsing.yml b/config/feature_flags/development/ci_synchronous_artifact_parsing.yml
new file mode 100644
index 00000000000..c5d1a44b61f
--- /dev/null
+++ b/config/feature_flags/development/ci_synchronous_artifact_parsing.yml
@@ -0,0 +1,7 @@
+---
+name: ci_synchronous_artifact_parsing
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_update_queues_for_online_runners.yml b/config/feature_flags/development/ci_update_queues_for_online_runners.yml
new file mode 100644
index 00000000000..f2bce6e14b5
--- /dev/null
+++ b/config/feature_flags/development/ci_update_queues_for_online_runners.yml
@@ -0,0 +1,7 @@
+---
+name: ci_update_queues_for_online_runners
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ci_yaml_limit_size.yml b/config/feature_flags/development/ci_yaml_limit_size.yml
new file mode 100644
index 00000000000..06229c08af5
--- /dev/null
+++ b/config/feature_flags/development/ci_yaml_limit_size.yml
@@ -0,0 +1,7 @@
+---
+name: ci_yaml_limit_size
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/cleanup_lfs_during_gc.yml b/config/feature_flags/development/cleanup_lfs_during_gc.yml
new file mode 100644
index 00000000000..836784b1d9c
--- /dev/null
+++ b/config/feature_flags/development/cleanup_lfs_during_gc.yml
@@ -0,0 +1,7 @@
+---
+name: cleanup_lfs_during_gc
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/cluster_management_project.yml b/config/feature_flags/development/cluster_management_project.yml
new file mode 100644
index 00000000000..9d58efd5194
--- /dev/null
+++ b/config/feature_flags/development/cluster_management_project.yml
@@ -0,0 +1,7 @@
+---
+name: cluster_management_project
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/clusters_list_redesign.yml b/config/feature_flags/development/clusters_list_redesign.yml
new file mode 100644
index 00000000000..1a9ad73eb79
--- /dev/null
+++ b/config/feature_flags/development/clusters_list_redesign.yml
@@ -0,0 +1,7 @@
+---
+name: clusters_list_redesign
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/container_registry_api.yml b/config/feature_flags/development/container_registry_api.yml
new file mode 100644
index 00000000000..b0e128f1c3d
--- /dev/null
+++ b/config/feature_flags/development/container_registry_api.yml
@@ -0,0 +1,7 @@
+---
+name: container_registry_api
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/container_registry_cleanup.yml b/config/feature_flags/development/container_registry_cleanup.yml
new file mode 100644
index 00000000000..a03f530b339
--- /dev/null
+++ b/config/feature_flags/development/container_registry_cleanup.yml
@@ -0,0 +1,7 @@
+---
+name: container_registry_cleanup
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/container_registry_expiration_policies_throttling.yml b/config/feature_flags/development/container_registry_expiration_policies_throttling.yml
new file mode 100644
index 00000000000..5169bcdfa28
--- /dev/null
+++ b/config/feature_flags/development/container_registry_expiration_policies_throttling.yml
@@ -0,0 +1,7 @@
+---
+name: container_registry_expiration_policies_throttling
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/36319
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/238190
+group: group::package
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/container_registry_fast_tag_delete.yml b/config/feature_flags/development/container_registry_fast_tag_delete.yml
new file mode 100644
index 00000000000..dddac070355
--- /dev/null
+++ b/config/feature_flags/development/container_registry_fast_tag_delete.yml
@@ -0,0 +1,7 @@
+---
+name: container_registry_fast_tag_delete
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/context_commits.yml b/config/feature_flags/development/context_commits.yml
new file mode 100644
index 00000000000..f615846f6c0
--- /dev/null
+++ b/config/feature_flags/development/context_commits.yml
@@ -0,0 +1,7 @@
+---
+name: context_commits
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/create_cloud_run_clusters.yml b/config/feature_flags/development/create_cloud_run_clusters.yml
new file mode 100644
index 00000000000..30894fd2df1
--- /dev/null
+++ b/config/feature_flags/development/create_cloud_run_clusters.yml
@@ -0,0 +1,7 @@
+---
+name: create_cloud_run_clusters
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/dashboard_pipeline_status.yml b/config/feature_flags/development/dashboard_pipeline_status.yml
new file mode 100644
index 00000000000..241f5fea64f
--- /dev/null
+++ b/config/feature_flags/development/dashboard_pipeline_status.yml
@@ -0,0 +1,7 @@
+---
+name: dashboard_pipeline_status
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/deploy_from_footer.yml b/config/feature_flags/development/deploy_from_footer.yml
new file mode 100644
index 00000000000..8e31ab511b6
--- /dev/null
+++ b/config/feature_flags/development/deploy_from_footer.yml
@@ -0,0 +1,7 @@
+---
+name: deploy_from_footer
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/deploy_tokens_api.yml b/config/feature_flags/development/deploy_tokens_api.yml
new file mode 100644
index 00000000000..d8691842822
--- /dev/null
+++ b/config/feature_flags/development/deploy_tokens_api.yml
@@ -0,0 +1,7 @@
+---
+name: deploy_tokens_api
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/design_management_allow_dangerous_images.yml b/config/feature_flags/development/design_management_allow_dangerous_images.yml
new file mode 100644
index 00000000000..d1d09f154a4
--- /dev/null
+++ b/config/feature_flags/development/design_management_allow_dangerous_images.yml
@@ -0,0 +1,7 @@
+---
+name: design_management_allow_dangerous_images
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/design_management_reference_filter_gfm_pipeline.yml b/config/feature_flags/development/design_management_reference_filter_gfm_pipeline.yml
new file mode 100644
index 00000000000..e07b621ed23
--- /dev/null
+++ b/config/feature_flags/development/design_management_reference_filter_gfm_pipeline.yml
@@ -0,0 +1,7 @@
+---
+name: design_management_reference_filter_gfm_pipeline
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/reorder_designs.yml b/config/feature_flags/development/design_management_todo_button.yml
index 89c6bec7351..218ddf9f65c 100644
--- a/config/feature_flags/development/reorder_designs.yml
+++ b/config/feature_flags/development/design_management_todo_button.yml
@@ -1,7 +1,7 @@
---
-name: reorder_designs
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37835
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/232992
+name: design_management_todo_button
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39935
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/245074
group: group::knowledge
type: development
default_enabled: true
diff --git a/config/feature_flags/development/disable_metric_dashboard_refresh_rate.yml b/config/feature_flags/development/disable_metric_dashboard_refresh_rate.yml
new file mode 100644
index 00000000000..193579cd11b
--- /dev/null
+++ b/config/feature_flags/development/disable_metric_dashboard_refresh_rate.yml
@@ -0,0 +1,7 @@
+---
+name: disable_metric_dashboard_refresh_rate
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/drop_license_management_artifact.yml b/config/feature_flags/development/drop_license_management_artifact.yml
new file mode 100644
index 00000000000..59d749154b5
--- /dev/null
+++ b/config/feature_flags/development/drop_license_management_artifact.yml
@@ -0,0 +1,7 @@
+---
+name: drop_license_management_artifact
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/dynamic_image_resizing_owner.yml b/config/feature_flags/development/dynamic_image_resizing_owner.yml
new file mode 100644
index 00000000000..fd9881fba31
--- /dev/null
+++ b/config/feature_flags/development/dynamic_image_resizing_owner.yml
@@ -0,0 +1,7 @@
+---
+name: dynamic_image_resizing_owner
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40606
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241533
+group: group::memory
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/dynamic_image_resizing.yml b/config/feature_flags/development/dynamic_image_resizing_requester.yml
index 72547b7736e..e491b14d27d 100644
--- a/config/feature_flags/development/dynamic_image_resizing.yml
+++ b/config/feature_flags/development/dynamic_image_resizing_requester.yml
@@ -1,7 +1,7 @@
---
-name: dynamic_image_resizing
+name: dynamic_image_resizing_requester
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37342
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/233704
group: group::memory
type: development
-default_enabled: false \ No newline at end of file
+default_enabled: false
diff --git a/config/feature_flags/development/efficient_counter_attribute.yml b/config/feature_flags/development/efficient_counter_attribute.yml
new file mode 100644
index 00000000000..a1b16be7ce8
--- /dev/null
+++ b/config/feature_flags/development/efficient_counter_attribute.yml
@@ -0,0 +1,7 @@
+---
+name: efficient_counter_attribute
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/export_lfs_objects_projects.yml b/config/feature_flags/development/export_lfs_objects_projects.yml
new file mode 100644
index 00000000000..6ef3317de8d
--- /dev/null
+++ b/config/feature_flags/development/export_lfs_objects_projects.yml
@@ -0,0 +1,7 @@
+---
+name: export_lfs_objects_projects
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/export_reduce_relation_batch_size.yml b/config/feature_flags/development/export_reduce_relation_batch_size.yml
new file mode 100644
index 00000000000..b32e2232933
--- /dev/null
+++ b/config/feature_flags/development/export_reduce_relation_batch_size.yml
@@ -0,0 +1,7 @@
+---
+name: export_reduce_relation_batch_size
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/file_identifier_hash.yml b/config/feature_flags/development/file_identifier_hash.yml
new file mode 100644
index 00000000000..681054cf7fa
--- /dev/null
+++ b/config/feature_flags/development/file_identifier_hash.yml
@@ -0,0 +1,7 @@
+---
+name: file_identifier_hash
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/filter_pipelines_search.yml b/config/feature_flags/development/filter_pipelines_search.yml
new file mode 100644
index 00000000000..57bf61552d8
--- /dev/null
+++ b/config/feature_flags/development/filter_pipelines_search.yml
@@ -0,0 +1,7 @@
+---
+name: filter_pipelines_search
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/force_autodevops_on_by_default.yml b/config/feature_flags/development/force_autodevops_on_by_default.yml
new file mode 100644
index 00000000000..352a6d40bd1
--- /dev/null
+++ b/config/feature_flags/development/force_autodevops_on_by_default.yml
@@ -0,0 +1,7 @@
+---
+name: force_autodevops_on_by_default
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/forking.yml b/config/feature_flags/development/forking.yml
new file mode 100644
index 00000000000..d7d0cb79562
--- /dev/null
+++ b/config/feature_flags/development/forking.yml
@@ -0,0 +1,7 @@
+---
+name: forking
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/forward_deployment_enabled.yml b/config/feature_flags/development/forward_deployment_enabled.yml
new file mode 100644
index 00000000000..51cc99e39ae
--- /dev/null
+++ b/config/feature_flags/development/forward_deployment_enabled.yml
@@ -0,0 +1,7 @@
+---
+name: forward_deployment_enabled
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/g_compliance_dashboard_feature.yml b/config/feature_flags/development/g_compliance_dashboard_feature.yml
new file mode 100644
index 00000000000..3390bc18810
--- /dev/null
+++ b/config/feature_flags/development/g_compliance_dashboard_feature.yml
@@ -0,0 +1,7 @@
+---
+name: g_compliance_dashboard_feature
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/generic_packages.yml b/config/feature_flags/development/generic_packages.yml
new file mode 100644
index 00000000000..99b89b196ea
--- /dev/null
+++ b/config/feature_flags/development/generic_packages.yml
@@ -0,0 +1,7 @@
+---
+name: generic_packages
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40045
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/239133
+group: group::release management
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/geo_snippet_repository_replication.yml b/config/feature_flags/development/geo_snippet_repository_replication.yml
new file mode 100644
index 00000000000..7d121191d6c
--- /dev/null
+++ b/config/feature_flags/development/geo_snippet_repository_replication.yml
@@ -0,0 +1,7 @@
+---
+name: geo_snippet_repository_replication
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/38688
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/224168
+group: group::geo
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/git_push_create_all_pipelines.yml b/config/feature_flags/development/git_push_create_all_pipelines.yml
new file mode 100644
index 00000000000..62dbe9bb02f
--- /dev/null
+++ b/config/feature_flags/development/git_push_create_all_pipelines.yml
@@ -0,0 +1,7 @@
+---
+name: git_push_create_all_pipelines
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/gitaly_catfile-cache.yml b/config/feature_flags/development/gitaly_catfile-cache.yml
new file mode 100644
index 00000000000..1fdfacfb4d2
--- /dev/null
+++ b/config/feature_flags/development/gitaly_catfile-cache.yml
@@ -0,0 +1,7 @@
+---
+name: gitaly_catfile-cache
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/gitaly_deny_disk_access.yml b/config/feature_flags/development/gitaly_deny_disk_access.yml
new file mode 100644
index 00000000000..faf9bc6d71f
--- /dev/null
+++ b/config/feature_flags/development/gitaly_deny_disk_access.yml
@@ -0,0 +1,7 @@
+---
+name: gitaly_deny_disk_access
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/gitaly_enforce_requests_limits.yml b/config/feature_flags/development/gitaly_enforce_requests_limits.yml
new file mode 100644
index 00000000000..2e4aa4ab794
--- /dev/null
+++ b/config/feature_flags/development/gitaly_enforce_requests_limits.yml
@@ -0,0 +1,7 @@
+---
+name: gitaly_enforce_requests_limits
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/gitaly_mep_mep.yml b/config/feature_flags/development/gitaly_mep_mep.yml
new file mode 100644
index 00000000000..b657449a436
--- /dev/null
+++ b/config/feature_flags/development/gitaly_mep_mep.yml
@@ -0,0 +1,7 @@
+---
+name: gitaly_mep_mep
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_plan_needs_size_limit.yml b/config/feature_flags/development/gitlab_ci_yml_preview.yml
index 826aeb8f030..ea03b25874c 100644
--- a/config/feature_flags/development/ci_plan_needs_size_limit.yml
+++ b/config/feature_flags/development/gitlab_ci_yml_preview.yml
@@ -1,7 +1,7 @@
---
-name: ci_plan_needs_size_limit
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37568
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/238173
+name: gitlab_ci_yml_preview
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40880
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/244905
group: group::ci
type: development
-default_enabled: true \ No newline at end of file
+default_enabled: false
diff --git a/config/feature_flags/development/gitpod.yml b/config/feature_flags/development/gitpod.yml
new file mode 100644
index 00000000000..148ea7294ba
--- /dev/null
+++ b/config/feature_flags/development/gitpod.yml
@@ -0,0 +1,7 @@
+---
+name: gitpod
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37985
+rollout_issue_url:
+group: group::editor
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/global_default_branch_name.yml b/config/feature_flags/development/global_default_branch_name.yml
new file mode 100644
index 00000000000..57b324a6da2
--- /dev/null
+++ b/config/feature_flags/development/global_default_branch_name.yml
@@ -0,0 +1,7 @@
+---
+name: global_default_branch_name
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/go_proxy.yml b/config/feature_flags/development/go_proxy.yml
new file mode 100644
index 00000000000..bde614dd84d
--- /dev/null
+++ b/config/feature_flags/development/go_proxy.yml
@@ -0,0 +1,7 @@
+---
+name: go_proxy
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/go_proxy_disable_gomod_validation.yml b/config/feature_flags/development/go_proxy_disable_gomod_validation.yml
new file mode 100644
index 00000000000..5e9671c66d5
--- /dev/null
+++ b/config/feature_flags/development/go_proxy_disable_gomod_validation.yml
@@ -0,0 +1,7 @@
+---
+name: go_proxy_disable_gomod_validation
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/grape_gitlab_json.yml b/config/feature_flags/development/grape_gitlab_json.yml
new file mode 100644
index 00000000000..ab98ed981c9
--- /dev/null
+++ b/config/feature_flags/development/grape_gitlab_json.yml
@@ -0,0 +1,7 @@
+---
+name: grape_gitlab_json
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/graphql_board_lists.yml b/config/feature_flags/development/graphql_board_lists.yml
new file mode 100644
index 00000000000..4e6bf000a8f
--- /dev/null
+++ b/config/feature_flags/development/graphql_board_lists.yml
@@ -0,0 +1,7 @@
+---
+name: graphql_board_lists
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/graphql_logging.yml b/config/feature_flags/development/graphql_logging.yml
new file mode 100644
index 00000000000..cd2a5b109e8
--- /dev/null
+++ b/config/feature_flags/development/graphql_logging.yml
@@ -0,0 +1,7 @@
+---
+name: graphql_logging
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/graphql_lookahead_support.yml b/config/feature_flags/development/graphql_lookahead_support.yml
new file mode 100644
index 00000000000..2c8825f309e
--- /dev/null
+++ b/config/feature_flags/development/graphql_lookahead_support.yml
@@ -0,0 +1,7 @@
+---
+name: graphql_lookahead_support
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/graphql_milestone_stats.yml b/config/feature_flags/development/graphql_milestone_stats.yml
new file mode 100644
index 00000000000..daa72031879
--- /dev/null
+++ b/config/feature_flags/development/graphql_milestone_stats.yml
@@ -0,0 +1,7 @@
+---
+name: graphql_milestone_stats
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/graphql_release_data.yml b/config/feature_flags/development/graphql_release_data.yml
new file mode 100644
index 00000000000..c30fbf7fe13
--- /dev/null
+++ b/config/feature_flags/development/graphql_release_data.yml
@@ -0,0 +1,7 @@
+---
+name: graphql_release_data
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/group_export_ndjson.yml b/config/feature_flags/development/group_export_ndjson.yml
new file mode 100644
index 00000000000..af495df2e48
--- /dev/null
+++ b/config/feature_flags/development/group_export_ndjson.yml
@@ -0,0 +1,7 @@
+---
+name: group_export_ndjson
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/group_import_export.yml b/config/feature_flags/development/group_import_export.yml
new file mode 100644
index 00000000000..8a49fb29e45
--- /dev/null
+++ b/config/feature_flags/development/group_import_export.yml
@@ -0,0 +1,7 @@
+---
+name: group_import_export
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/group_import_ndjson.yml b/config/feature_flags/development/group_import_ndjson.yml
new file mode 100644
index 00000000000..cf438abe8cb
--- /dev/null
+++ b/config/feature_flags/development/group_import_ndjson.yml
@@ -0,0 +1,7 @@
+---
+name: group_import_ndjson
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/async_update_pages_config.yml b/config/feature_flags/development/group_level_integrations.yml
index 4408197f287..8fc7da47ba1 100644
--- a/config/feature_flags/development/async_update_pages_config.yml
+++ b/config/feature_flags/development/group_level_integrations.yml
@@ -1,7 +1,7 @@
---
-name: async_update_pages_config
-introduced_by_url:
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/230695
-group: 'team::Scalability'
+name: group_level_integrations
+introduced_by_url:
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/238575
+group: group::ecosystem
type: development
default_enabled: false
diff --git a/config/feature_flags/development/groups_tokens_optional_encryption.yml b/config/feature_flags/development/groups_tokens_optional_encryption.yml
new file mode 100644
index 00000000000..2c081e72e52
--- /dev/null
+++ b/config/feature_flags/development/groups_tokens_optional_encryption.yml
@@ -0,0 +1,7 @@
+---
+name: groups_tokens_optional_encryption
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/hide_jump_to_next_unresolved_in_threads.yml b/config/feature_flags/development/hide_jump_to_next_unresolved_in_threads.yml
new file mode 100644
index 00000000000..075f3e135ed
--- /dev/null
+++ b/config/feature_flags/development/hide_jump_to_next_unresolved_in_threads.yml
@@ -0,0 +1,7 @@
+---
+name: hide_jump_to_next_unresolved_in_threads
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/highlight_current_diff_row.yml b/config/feature_flags/development/highlight_current_diff_row.yml
new file mode 100644
index 00000000000..1133680c173
--- /dev/null
+++ b/config/feature_flags/development/highlight_current_diff_row.yml
@@ -0,0 +1,7 @@
+---
+name: highlight_current_diff_row
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/improved_mr_merged_at_queries.yml b/config/feature_flags/development/improved_mr_merged_at_queries.yml
index 9e717991a7d..bf4c8814540 100644
--- a/config/feature_flags/development/improved_mr_merged_at_queries.yml
+++ b/config/feature_flags/development/improved_mr_merged_at_queries.yml
@@ -4,4 +4,4 @@ introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39329
rollout_issue_url:
group: group::analytics
type: development
-default_enabled: false
+default_enabled: true
diff --git a/config/feature_flags/development/inactive_policy_condition.yml b/config/feature_flags/development/inactive_policy_condition.yml
new file mode 100644
index 00000000000..bf577fb3123
--- /dev/null
+++ b/config/feature_flags/development/inactive_policy_condition.yml
@@ -0,0 +1,7 @@
+---
+name: inactive_policy_condition
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/ingress_modsecurity.yml b/config/feature_flags/development/ingress_modsecurity.yml
new file mode 100644
index 00000000000..cf289bb3d45
--- /dev/null
+++ b/config/feature_flags/development/ingress_modsecurity.yml
@@ -0,0 +1,7 @@
+---
+name: ingress_modsecurity
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/instance_statistics.yml b/config/feature_flags/development/instance_statistics.yml
new file mode 100644
index 00000000000..212b7b39615
--- /dev/null
+++ b/config/feature_flags/development/instance_statistics.yml
@@ -0,0 +1,7 @@
+---
+name: instance_statistics
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40583
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241711
+group: group::analytics
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/invisible_captcha.yml b/config/feature_flags/development/invisible_captcha.yml
new file mode 100644
index 00000000000..ee38a9c657a
--- /dev/null
+++ b/config/feature_flags/development/invisible_captcha.yml
@@ -0,0 +1,7 @@
+---
+name: invisible_captcha
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/invite_email_experiment.yml b/config/feature_flags/development/invite_email_experiment.yml
new file mode 100644
index 00000000000..3797090724e
--- /dev/null
+++ b/config/feature_flags/development/invite_email_experiment.yml
@@ -0,0 +1,7 @@
+---
+name: invite_email_experiment
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/invite_your_teammates_banner_a.yml b/config/feature_flags/development/invite_your_teammates_banner_a.yml
new file mode 100644
index 00000000000..07aec532e16
--- /dev/null
+++ b/config/feature_flags/development/invite_your_teammates_banner_a.yml
@@ -0,0 +1,7 @@
+---
+name: invite_your_teammates_banner_a
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37658
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/231275
+group: group::expansion
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/issues.yml b/config/feature_flags/development/issues.yml
new file mode 100644
index 00000000000..6274767d4e1
--- /dev/null
+++ b/config/feature_flags/development/issues.yml
@@ -0,0 +1,7 @@
+---
+name: issues
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/json_limited_encoder.yml b/config/feature_flags/development/json_limited_encoder.yml
new file mode 100644
index 00000000000..3afed64b4cc
--- /dev/null
+++ b/config/feature_flags/development/json_limited_encoder.yml
@@ -0,0 +1,7 @@
+---
+name: json_limited_encoder
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/json_wrapper_legacy_mode.yml b/config/feature_flags/development/json_wrapper_legacy_mode.yml
new file mode 100644
index 00000000000..dc3da1867e9
--- /dev/null
+++ b/config/feature_flags/development/json_wrapper_legacy_mode.yml
@@ -0,0 +1,7 @@
+---
+name: json_wrapper_legacy_mode
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/junit_pipeline_screenshots_view.yml b/config/feature_flags/development/junit_pipeline_screenshots_view.yml
new file mode 100644
index 00000000000..d9f61b572be
--- /dev/null
+++ b/config/feature_flags/development/junit_pipeline_screenshots_view.yml
@@ -0,0 +1,7 @@
+---
+name: junit_pipeline_screenshots_view
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/lfs_check.yml b/config/feature_flags/development/lfs_check.yml
new file mode 100644
index 00000000000..39e7d9ba6e9
--- /dev/null
+++ b/config/feature_flags/development/lfs_check.yml
@@ -0,0 +1,7 @@
+---
+name: lfs_check
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/lfs_link_existing_object.yml b/config/feature_flags/development/lfs_link_existing_object.yml
new file mode 100644
index 00000000000..f38bb4525ec
--- /dev/null
+++ b/config/feature_flags/development/lfs_link_existing_object.yml
@@ -0,0 +1,7 @@
+---
+name: lfs_link_existing_object
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41770
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/249246
+group: group::source code
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/limit_projects_in_groups_api.yml b/config/feature_flags/development/limit_projects_in_groups_api.yml
new file mode 100644
index 00000000000..571c02578d3
--- /dev/null
+++ b/config/feature_flags/development/limit_projects_in_groups_api.yml
@@ -0,0 +1,7 @@
+---
+name: limit_projects_in_groups_api
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/log_import_export_relation_creation.yml b/config/feature_flags/development/log_import_export_relation_creation.yml
new file mode 100644
index 00000000000..bfd4b27752b
--- /dev/null
+++ b/config/feature_flags/development/log_import_export_relation_creation.yml
@@ -0,0 +1,7 @@
+---
+name: log_import_export_relation_creation
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/maintenance_mode.yml b/config/feature_flags/development/maintenance_mode.yml
new file mode 100644
index 00000000000..8fba1216834
--- /dev/null
+++ b/config/feature_flags/development/maintenance_mode.yml
@@ -0,0 +1,7 @@
+---
+name: maintenance_mode
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/marginalia.yml b/config/feature_flags/development/marginalia.yml
new file mode 100644
index 00000000000..9fcfa061bff
--- /dev/null
+++ b/config/feature_flags/development/marginalia.yml
@@ -0,0 +1,7 @@
+---
+name: marginalia
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/merge_orchestration_service.yml b/config/feature_flags/development/merge_orchestration_service.yml
new file mode 100644
index 00000000000..134553e7344
--- /dev/null
+++ b/config/feature_flags/development/merge_orchestration_service.yml
@@ -0,0 +1,7 @@
+---
+name: merge_orchestration_service
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_red_head_comments_position_on_demand.yml b/config/feature_flags/development/merge_red_head_comments_position_on_demand.yml
new file mode 100644
index 00000000000..5effc83b53e
--- /dev/null
+++ b/config/feature_flags/development/merge_red_head_comments_position_on_demand.yml
@@ -0,0 +1,7 @@
+---
+name: merge_red_head_comments_position_on_demand
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_ref_auto_sync.yml b/config/feature_flags/development/merge_ref_auto_sync.yml
new file mode 100644
index 00000000000..cc5ea34eb0e
--- /dev/null
+++ b/config/feature_flags/development/merge_ref_auto_sync.yml
@@ -0,0 +1,7 @@
+---
+name: merge_ref_auto_sync
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_ref_auto_sync_lock.yml b/config/feature_flags/development/merge_ref_auto_sync_lock.yml
new file mode 100644
index 00000000000..d9724712869
--- /dev/null
+++ b/config/feature_flags/development/merge_ref_auto_sync_lock.yml
@@ -0,0 +1,7 @@
+---
+name: merge_ref_auto_sync_lock
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_request_draft_filter.yml b/config/feature_flags/development/merge_request_draft_filter.yml
new file mode 100644
index 00000000000..113194c2a18
--- /dev/null
+++ b/config/feature_flags/development/merge_request_draft_filter.yml
@@ -0,0 +1,7 @@
+---
+name: merge_request_draft_filter
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_request_rebase_nowait_lock.yml b/config/feature_flags/development/merge_request_rebase_nowait_lock.yml
new file mode 100644
index 00000000000..06cbcd3da07
--- /dev/null
+++ b/config/feature_flags/development/merge_request_rebase_nowait_lock.yml
@@ -0,0 +1,7 @@
+---
+name: merge_request_rebase_nowait_lock
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_request_reviewers.yml b/config/feature_flags/development/merge_request_reviewers.yml
new file mode 100644
index 00000000000..2180662b9df
--- /dev/null
+++ b/config/feature_flags/development/merge_request_reviewers.yml
@@ -0,0 +1,7 @@
+---
+name: merge_request_reviewers
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40488
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/245190
+group: group::source code
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/merge_request_short_pipeline_serializer.yml b/config/feature_flags/development/merge_request_short_pipeline_serializer.yml
new file mode 100644
index 00000000000..c24dd106547
--- /dev/null
+++ b/config/feature_flags/development/merge_request_short_pipeline_serializer.yml
@@ -0,0 +1,7 @@
+---
+name: merge_request_short_pipeline_serializer
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/merge_request_widget_graphql.yml b/config/feature_flags/development/merge_request_widget_graphql.yml
new file mode 100644
index 00000000000..028553a47f8
--- /dev/null
+++ b/config/feature_flags/development/merge_request_widget_graphql.yml
@@ -0,0 +1,7 @@
+---
+name: merge_request_widget_graphql
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/merge_requests.yml b/config/feature_flags/development/merge_requests.yml
new file mode 100644
index 00000000000..05e8a301786
--- /dev/null
+++ b/config/feature_flags/development/merge_requests.yml
@@ -0,0 +1,7 @@
+---
+name: merge_requests
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/metrics_dashboard.yml b/config/feature_flags/development/metrics_dashboard.yml
new file mode 100644
index 00000000000..a252068aa9a
--- /dev/null
+++ b/config/feature_flags/development/metrics_dashboard.yml
@@ -0,0 +1,7 @@
+---
+name: metrics_dashboard
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/metrics_dashboard_exhaustive_validations.yml b/config/feature_flags/development/metrics_dashboard_exhaustive_validations.yml
new file mode 100644
index 00000000000..3e3a5b9de9a
--- /dev/null
+++ b/config/feature_flags/development/metrics_dashboard_exhaustive_validations.yml
@@ -0,0 +1,7 @@
+---
+name: metrics_dashboard_exhaustive_validations
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40103
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241697
+group: group::apm
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/migrate_bio_to_user_details.yml b/config/feature_flags/development/migrate_bio_to_user_details.yml
new file mode 100644
index 00000000000..f54e45f9bd3
--- /dev/null
+++ b/config/feature_flags/development/migrate_bio_to_user_details.yml
@@ -0,0 +1,7 @@
+---
+name: migrate_bio_to_user_details
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/migrate_user_mentions.yml b/config/feature_flags/development/migrate_user_mentions.yml
new file mode 100644
index 00000000000..3388fb020ad
--- /dev/null
+++ b/config/feature_flags/development/migrate_user_mentions.yml
@@ -0,0 +1,7 @@
+---
+name: migrate_user_mentions
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/modifed_path_ci_variables.yml b/config/feature_flags/development/modifed_path_ci_variables.yml
new file mode 100644
index 00000000000..a72a5ae56e1
--- /dev/null
+++ b/config/feature_flags/development/modifed_path_ci_variables.yml
@@ -0,0 +1,7 @@
+---
+name: modifed_path_ci_variables
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/monaco_blobs.yml b/config/feature_flags/development/monaco_blobs.yml
new file mode 100644
index 00000000000..bb1215493d5
--- /dev/null
+++ b/config/feature_flags/development/monaco_blobs.yml
@@ -0,0 +1,7 @@
+---
+name: monaco_blobs
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/monaco_ci.yml b/config/feature_flags/development/monaco_ci.yml
new file mode 100644
index 00000000000..5d6ace8d8ad
--- /dev/null
+++ b/config/feature_flags/development/monaco_ci.yml
@@ -0,0 +1,7 @@
+---
+name: monaco_ci
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/mr_commit_neighbor_nav.yml b/config/feature_flags/development/mr_commit_neighbor_nav.yml
new file mode 100644
index 00000000000..5fcacbdd3fe
--- /dev/null
+++ b/config/feature_flags/development/mr_commit_neighbor_nav.yml
@@ -0,0 +1,7 @@
+---
+name: mr_commit_neighbor_nav
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/multi_select_board.yml b/config/feature_flags/development/multi_select_board.yml
new file mode 100644
index 00000000000..35718606d62
--- /dev/null
+++ b/config/feature_flags/development/multi_select_board.yml
@@ -0,0 +1,7 @@
+---
+name: multi_select_board
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/multiline_comments.yml b/config/feature_flags/development/multiline_comments.yml
new file mode 100644
index 00000000000..cb80d381e18
--- /dev/null
+++ b/config/feature_flags/development/multiline_comments.yml
@@ -0,0 +1,7 @@
+---
+name: multiline_comments
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/new_pipeline_form.yml b/config/feature_flags/development/new_pipeline_form.yml
new file mode 100644
index 00000000000..96c7268ded0
--- /dev/null
+++ b/config/feature_flags/development/new_pipeline_form.yml
@@ -0,0 +1,7 @@
+---
+name: new_pipeline_form
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/new_release_page.yml b/config/feature_flags/development/new_release_page.yml
new file mode 100644
index 00000000000..a17438ba949
--- /dev/null
+++ b/config/feature_flags/development/new_release_page.yml
@@ -0,0 +1,7 @@
+---
+name: new_release_page
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/new_variables_ui.yml b/config/feature_flags/development/new_variables_ui.yml
new file mode 100644
index 00000000000..7621b356f5d
--- /dev/null
+++ b/config/feature_flags/development/new_variables_ui.yml
@@ -0,0 +1,7 @@
+---
+name: new_variables_ui
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/not_issuable_queries.yml b/config/feature_flags/development/not_issuable_queries.yml
new file mode 100644
index 00000000000..f6bbceff505
--- /dev/null
+++ b/config/feature_flags/development/not_issuable_queries.yml
@@ -0,0 +1,7 @@
+---
+name: not_issuable_queries
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/notes_create_service_tracking.yml b/config/feature_flags/development/notes_create_service_tracking.yml
new file mode 100644
index 00000000000..38636b7ee53
--- /dev/null
+++ b/config/feature_flags/development/notes_create_service_tracking.yml
@@ -0,0 +1,7 @@
+---
+name: notes_create_service_tracking
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/oj_json.yml b/config/feature_flags/development/oj_json.yml
new file mode 100644
index 00000000000..b7e112ae544
--- /dev/null
+++ b/config/feature_flags/development/oj_json.yml
@@ -0,0 +1,7 @@
+---
+name: oj_json
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/optimized_issuable_label_filter.yml b/config/feature_flags/development/optimized_issuable_label_filter.yml
new file mode 100644
index 00000000000..12db63b03fb
--- /dev/null
+++ b/config/feature_flags/development/optimized_issuable_label_filter.yml
@@ -0,0 +1,7 @@
+---
+name: optimized_issuable_label_filter
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/34503
+rollout_issue_url:
+group: group::analytics
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/optimized_timebox_queries.yml b/config/feature_flags/development/optimized_timebox_queries.yml
new file mode 100644
index 00000000000..d5301e20f3e
--- /dev/null
+++ b/config/feature_flags/development/optimized_timebox_queries.yml
@@ -0,0 +1,7 @@
+---
+name: optimized_timebox_queries
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/packages_coming_soon.yml b/config/feature_flags/development/packages_coming_soon.yml
new file mode 100644
index 00000000000..0a0d1f989dc
--- /dev/null
+++ b/config/feature_flags/development/packages_coming_soon.yml
@@ -0,0 +1,7 @@
+---
+name: packages_coming_soon
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/pages.yml b/config/feature_flags/development/pages.yml
new file mode 100644
index 00000000000..0afdc891e51
--- /dev/null
+++ b/config/feature_flags/development/pages.yml
@@ -0,0 +1,7 @@
+---
+name: pages
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/pages_artifacts_archive.yml b/config/feature_flags/development/pages_artifacts_archive.yml
new file mode 100644
index 00000000000..5cd4f4bd62b
--- /dev/null
+++ b/config/feature_flags/development/pages_artifacts_archive.yml
@@ -0,0 +1,7 @@
+---
+name: pages_artifacts_archive
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40361
+rollout_issue_url:
+group: group::release management
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/paginated_notes.yml b/config/feature_flags/development/paginated_notes.yml
new file mode 100644
index 00000000000..cd98b3b1bbf
--- /dev/null
+++ b/config/feature_flags/development/paginated_notes.yml
@@ -0,0 +1,7 @@
+---
+name: paginated_notes
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/periodic_project_authorization_recalculation.yml b/config/feature_flags/development/periodic_project_authorization_recalculation.yml
new file mode 100644
index 00000000000..90b9babcfca
--- /dev/null
+++ b/config/feature_flags/development/periodic_project_authorization_recalculation.yml
@@ -0,0 +1,7 @@
+---
+name: periodic_project_authorization_recalculation
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/personal_snippet_reference_filters.yml b/config/feature_flags/development/personal_snippet_reference_filters.yml
index 6a9aefbb379..44b9ac2f862 100644
--- a/config/feature_flags/development/personal_snippet_reference_filters.yml
+++ b/config/feature_flags/development/personal_snippet_reference_filters.yml
@@ -1,7 +1,7 @@
---
name: personal_snippet_reference_filters
-introduced_by_url:
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/38571
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/235155
group: group::editor
type: development
-default_enabled: false \ No newline at end of file
+default_enabled: false
diff --git a/config/feature_flags/development/phabricator_import.yml b/config/feature_flags/development/phabricator_import.yml
new file mode 100644
index 00000000000..32ccfed557e
--- /dev/null
+++ b/config/feature_flags/development/phabricator_import.yml
@@ -0,0 +1,7 @@
+---
+name: phabricator_import
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/pipelines_security_report_summary.yml b/config/feature_flags/development/pipelines_security_report_summary.yml
new file mode 100644
index 00000000000..943997f1a4f
--- /dev/null
+++ b/config/feature_flags/development/pipelines_security_report_summary.yml
@@ -0,0 +1,7 @@
+---
+name: pipelines_security_report_summary
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/product_analytics.yml b/config/feature_flags/development/product_analytics.yml
new file mode 100644
index 00000000000..85bef678251
--- /dev/null
+++ b/config/feature_flags/development/product_analytics.yml
@@ -0,0 +1,7 @@
+---
+name: product_analytics
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/prohibit_hexadecimal_branch_names.yml b/config/feature_flags/development/prohibit_hexadecimal_branch_names.yml
new file mode 100644
index 00000000000..d1977765b81
--- /dev/null
+++ b/config/feature_flags/development/prohibit_hexadecimal_branch_names.yml
@@ -0,0 +1,7 @@
+---
+name: prohibit_hexadecimal_branch_names
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/project_export_as_ndjson.yml b/config/feature_flags/development/project_export_as_ndjson.yml
new file mode 100644
index 00000000000..eee61f4ce26
--- /dev/null
+++ b/config/feature_flags/development/project_export_as_ndjson.yml
@@ -0,0 +1,7 @@
+---
+name: project_export_as_ndjson
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/project_import_ndjson.yml b/config/feature_flags/development/project_import_ndjson.yml
new file mode 100644
index 00000000000..a7971d462fe
--- /dev/null
+++ b/config/feature_flags/development/project_import_ndjson.yml
@@ -0,0 +1,7 @@
+---
+name: project_import_ndjson
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/project_list_filter_bar.yml b/config/feature_flags/development/project_list_filter_bar.yml
new file mode 100644
index 00000000000..6040fe9edf5
--- /dev/null
+++ b/config/feature_flags/development/project_list_filter_bar.yml
@@ -0,0 +1,7 @@
+---
+name: project_list_filter_bar
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/project_statistics_sync.yml b/config/feature_flags/development/project_statistics_sync.yml
new file mode 100644
index 00000000000..ece3f1e49df
--- /dev/null
+++ b/config/feature_flags/development/project_statistics_sync.yml
@@ -0,0 +1,7 @@
+---
+name: project_statistics_sync
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/project_transactionless_destroy.yml b/config/feature_flags/development/project_transactionless_destroy.yml
new file mode 100644
index 00000000000..07018632e7a
--- /dev/null
+++ b/config/feature_flags/development/project_transactionless_destroy.yml
@@ -0,0 +1,7 @@
+---
+name: project_transactionless_destroy
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/projects_tokens_optional_encryption.yml b/config/feature_flags/development/projects_tokens_optional_encryption.yml
new file mode 100644
index 00000000000..76d76bca923
--- /dev/null
+++ b/config/feature_flags/development/projects_tokens_optional_encryption.yml
@@ -0,0 +1,7 @@
+---
+name: projects_tokens_optional_encryption
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/prometheus_computed_alerts.yml b/config/feature_flags/development/prometheus_computed_alerts.yml
new file mode 100644
index 00000000000..ddba72b2f46
--- /dev/null
+++ b/config/feature_flags/development/prometheus_computed_alerts.yml
@@ -0,0 +1,7 @@
+---
+name: prometheus_computed_alerts
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/push_mirror_syncs_lfs.yml b/config/feature_flags/development/push_mirror_syncs_lfs.yml
new file mode 100644
index 00000000000..d78fe679baa
--- /dev/null
+++ b/config/feature_flags/development/push_mirror_syncs_lfs.yml
@@ -0,0 +1,7 @@
+---
+name: push_mirror_syncs_lfs
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40137
+rollout_issue_url:
+group: group::source code
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/reactive_caching_limit_environment.yml b/config/feature_flags/development/reactive_caching_limit_environment.yml
new file mode 100644
index 00000000000..84db37d1d34
--- /dev/null
+++ b/config/feature_flags/development/reactive_caching_limit_environment.yml
@@ -0,0 +1,7 @@
+---
+name: reactive_caching_limit_environment
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/real_time_issue_sidebar.yml b/config/feature_flags/development/real_time_issue_sidebar.yml
new file mode 100644
index 00000000000..7cbaabe643f
--- /dev/null
+++ b/config/feature_flags/development/real_time_issue_sidebar.yml
@@ -0,0 +1,7 @@
+---
+name: real_time_issue_sidebar
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rebalance_issues.yml b/config/feature_flags/development/rebalance_issues.yml
new file mode 100644
index 00000000000..4c14824a35d
--- /dev/null
+++ b/config/feature_flags/development/rebalance_issues.yml
@@ -0,0 +1,7 @@
+---
+name: rebalance_issues
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40124
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/239344
+group: 'group::project management'
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/release_asset_link_editing.yml b/config/feature_flags/development/release_asset_link_editing.yml
new file mode 100644
index 00000000000..6e6cce2c343
--- /dev/null
+++ b/config/feature_flags/development/release_asset_link_editing.yml
@@ -0,0 +1,7 @@
+---
+name: release_asset_link_editing
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/release_asset_link_type.yml b/config/feature_flags/development/release_asset_link_type.yml
new file mode 100644
index 00000000000..baeb2e59f82
--- /dev/null
+++ b/config/feature_flags/development/release_asset_link_type.yml
@@ -0,0 +1,7 @@
+---
+name: release_asset_link_type
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/release_evidence.yml b/config/feature_flags/development/release_evidence.yml
new file mode 100644
index 00000000000..a19994d51a7
--- /dev/null
+++ b/config/feature_flags/development/release_evidence.yml
@@ -0,0 +1,7 @@
+---
+name: release_evidence
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/release_evidence_collection.yml b/config/feature_flags/development/release_evidence_collection.yml
new file mode 100644
index 00000000000..c5ab8f8e5c0
--- /dev/null
+++ b/config/feature_flags/development/release_evidence_collection.yml
@@ -0,0 +1,7 @@
+---
+name: release_evidence_collection
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/release_issue_summary.yml b/config/feature_flags/development/release_issue_summary.yml
new file mode 100644
index 00000000000..ebd8ef2e4d0
--- /dev/null
+++ b/config/feature_flags/development/release_issue_summary.yml
@@ -0,0 +1,7 @@
+---
+name: release_issue_summary
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/release_mr_issue_urls.yml b/config/feature_flags/development/release_mr_issue_urls.yml
new file mode 100644
index 00000000000..f6abf50f535
--- /dev/null
+++ b/config/feature_flags/development/release_mr_issue_urls.yml
@@ -0,0 +1,7 @@
+---
+name: release_mr_issue_urls
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/release_show_page.yml b/config/feature_flags/development/release_show_page.yml
new file mode 100644
index 00000000000..5a3f1709452
--- /dev/null
+++ b/config/feature_flags/development/release_show_page.yml
@@ -0,0 +1,7 @@
+---
+name: release_show_page
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/remove_legacy_github_client.yml b/config/feature_flags/development/remove_legacy_github_client.yml
new file mode 100644
index 00000000000..adb0c7b5d03
--- /dev/null
+++ b/config/feature_flags/development/remove_legacy_github_client.yml
@@ -0,0 +1,7 @@
+---
+name: remove_legacy_github_client
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/repack_after_shard_migration.yml b/config/feature_flags/development/repack_after_shard_migration.yml
new file mode 100644
index 00000000000..addfcf66537
--- /dev/null
+++ b/config/feature_flags/development/repack_after_shard_migration.yml
@@ -0,0 +1,7 @@
+---
+name: repack_after_shard_migration
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/repository.yml b/config/feature_flags/development/repository.yml
new file mode 100644
index 00000000000..2ae4abc42bc
--- /dev/null
+++ b/config/feature_flags/development/repository.yml
@@ -0,0 +1,7 @@
+---
+name: repository
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/repository_archive_hotlinking_interception.yml b/config/feature_flags/development/repository_archive_hotlinking_interception.yml
new file mode 100644
index 00000000000..bc9efb2e4bc
--- /dev/null
+++ b/config/feature_flags/development/repository_archive_hotlinking_interception.yml
@@ -0,0 +1,7 @@
+---
+name: repository_archive_hotlinking_interception
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/resource_access_token.yml b/config/feature_flags/development/resource_access_token.yml
new file mode 100644
index 00000000000..80c5b2a5eb4
--- /dev/null
+++ b/config/feature_flags/development/resource_access_token.yml
@@ -0,0 +1,7 @@
+---
+name: resource_access_token
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/rugged_commit_is_ancestor.yml b/config/feature_flags/development/rugged_commit_is_ancestor.yml
new file mode 100644
index 00000000000..06f894b79b3
--- /dev/null
+++ b/config/feature_flags/development/rugged_commit_is_ancestor.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_commit_is_ancestor
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rugged_commit_tree_entry.yml b/config/feature_flags/development/rugged_commit_tree_entry.yml
new file mode 100644
index 00000000000..a0cb28e6ca9
--- /dev/null
+++ b/config/feature_flags/development/rugged_commit_tree_entry.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_commit_tree_entry
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rugged_find_commit.yml b/config/feature_flags/development/rugged_find_commit.yml
new file mode 100644
index 00000000000..b84e056d9f5
--- /dev/null
+++ b/config/feature_flags/development/rugged_find_commit.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_find_commit
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rugged_list_commits_by_oid.yml b/config/feature_flags/development/rugged_list_commits_by_oid.yml
new file mode 100644
index 00000000000..10093f2977f
--- /dev/null
+++ b/config/feature_flags/development/rugged_list_commits_by_oid.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_list_commits_by_oid
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rugged_tree_entries.yml b/config/feature_flags/development/rugged_tree_entries.yml
new file mode 100644
index 00000000000..6ef296c43a6
--- /dev/null
+++ b/config/feature_flags/development/rugged_tree_entries.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_tree_entries
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/rugged_tree_entry.yml b/config/feature_flags/development/rugged_tree_entry.yml
new file mode 100644
index 00000000000..8ae0a71960b
--- /dev/null
+++ b/config/feature_flags/development/rugged_tree_entry.yml
@@ -0,0 +1,7 @@
+---
+name: rugged_tree_entry
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/safezip_use_rubyzip.yml b/config/feature_flags/development/safezip_use_rubyzip.yml
new file mode 100644
index 00000000000..139283d93d2
--- /dev/null
+++ b/config/feature_flags/development/safezip_use_rubyzip.yml
@@ -0,0 +1,7 @@
+---
+name: safezip_use_rubyzip
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/save_raw_usage_data.yml b/config/feature_flags/development/save_raw_usage_data.yml
new file mode 100644
index 00000000000..9556f699b9b
--- /dev/null
+++ b/config/feature_flags/development/save_raw_usage_data.yml
@@ -0,0 +1,7 @@
+---
+name: save_raw_usage_data
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/schema_linting.yml b/config/feature_flags/development/schema_linting.yml
new file mode 100644
index 00000000000..1220b02be0d
--- /dev/null
+++ b/config/feature_flags/development/schema_linting.yml
@@ -0,0 +1,7 @@
+---
+name: schema_linting
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/search_track_unique_users.yml b/config/feature_flags/development/search_track_unique_users.yml
new file mode 100644
index 00000000000..a5d4940c96a
--- /dev/null
+++ b/config/feature_flags/development/search_track_unique_users.yml
@@ -0,0 +1,7 @@
+---
+name: search_track_unique_users
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40134
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/240906
+group: group::global search
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/security_on_demand_scans_site_validation.yml b/config/feature_flags/development/security_on_demand_scans_site_validation.yml
new file mode 100644
index 00000000000..27ec926d9ac
--- /dev/null
+++ b/config/feature_flags/development/security_on_demand_scans_site_validation.yml
@@ -0,0 +1,7 @@
+---
+name: security_on_demand_scans_site_validation
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40685
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241815
+group: group::dynamic analysis
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/serverless_domain.yml b/config/feature_flags/development/serverless_domain.yml
new file mode 100644
index 00000000000..160730117d6
--- /dev/null
+++ b/config/feature_flags/development/serverless_domain.yml
@@ -0,0 +1,7 @@
+---
+name: serverless_domain
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/service_desk_custom_address.yml b/config/feature_flags/development/service_desk_custom_address.yml
new file mode 100644
index 00000000000..25cab0059c7
--- /dev/null
+++ b/config/feature_flags/development/service_desk_custom_address.yml
@@ -0,0 +1,7 @@
+---
+name: service_desk_custom_address
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/settings_operations_prometheus_service.yml b/config/feature_flags/development/settings_operations_prometheus_service.yml
new file mode 100644
index 00000000000..de2df4b219d
--- /dev/null
+++ b/config/feature_flags/development/settings_operations_prometheus_service.yml
@@ -0,0 +1,7 @@
+---
+name: settings_operations_prometheus_service
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/show_author_on_note.yml b/config/feature_flags/development/show_author_on_note.yml
new file mode 100644
index 00000000000..1f67392a306
--- /dev/null
+++ b/config/feature_flags/development/show_author_on_note.yml
@@ -0,0 +1,7 @@
+---
+name: show_author_on_note
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40198
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/250282
+group: group::project management
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/show_contributor_on_note.yml b/config/feature_flags/development/show_contributor_on_note.yml
new file mode 100644
index 00000000000..89533037244
--- /dev/null
+++ b/config/feature_flags/development/show_contributor_on_note.yml
@@ -0,0 +1,7 @@
+---
+name: show_contributor_on_note
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40198
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/249179
+group: group::project management
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/similarity_search.yml b/config/feature_flags/development/similarity_search.yml
new file mode 100644
index 00000000000..b7d48c5b986
--- /dev/null
+++ b/config/feature_flags/development/similarity_search.yml
@@ -0,0 +1,7 @@
+---
+name: similarity_search
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/snippet_multiple_files.yml b/config/feature_flags/development/snippet_multiple_files.yml
new file mode 100644
index 00000000000..28520cea19c
--- /dev/null
+++ b/config/feature_flags/development/snippet_multiple_files.yml
@@ -0,0 +1,7 @@
+---
+name: snippet_multiple_files
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/snippets.yml b/config/feature_flags/development/snippets.yml
new file mode 100644
index 00000000000..14f37feaa3f
--- /dev/null
+++ b/config/feature_flags/development/snippets.yml
@@ -0,0 +1,7 @@
+---
+name: snippets
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/snippets_binary_blob.yml b/config/feature_flags/development/snippets_binary_blob.yml
new file mode 100644
index 00000000000..c8d1b5d6ba2
--- /dev/null
+++ b/config/feature_flags/development/snippets_binary_blob.yml
@@ -0,0 +1,7 @@
+---
+name: snippets_binary_blob
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/ci_if_parenthesis_enabled.yml b/config/feature_flags/development/snippets_edit_vue.yml
index 5de7f9cf09a..d62926a8337 100644
--- a/config/feature_flags/development/ci_if_parenthesis_enabled.yml
+++ b/config/feature_flags/development/snippets_edit_vue.yml
@@ -1,7 +1,7 @@
---
-name: ci_if_parenthesis_enabled
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37574
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/238174
-group: group::ci
+name: snippets_edit_vue
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25667
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/207239
+group: group::editor
type: development
-default_enabled: true \ No newline at end of file
+default_enabled: true
diff --git a/config/feature_flags/development/snippets_vue.yml b/config/feature_flags/development/snippets_vue.yml
new file mode 100644
index 00000000000..b3b7e525a6e
--- /dev/null
+++ b/config/feature_flags/development/snippets_vue.yml
@@ -0,0 +1,7 @@
+---
+name: snippets_vue
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/soft_email_confirmation.yml b/config/feature_flags/development/soft_email_confirmation.yml
new file mode 100644
index 00000000000..d471cf442de
--- /dev/null
+++ b/config/feature_flags/development/soft_email_confirmation.yml
@@ -0,0 +1,7 @@
+---
+name: soft_email_confirmation
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/specialized_project_authorization_project_share_worker.yml b/config/feature_flags/development/specialized_project_authorization_project_share_worker.yml
new file mode 100644
index 00000000000..c09c5ad519b
--- /dev/null
+++ b/config/feature_flags/development/specialized_project_authorization_project_share_worker.yml
@@ -0,0 +1,7 @@
+---
+name: specialized_project_authorization_project_share_worker
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/specialized_project_authorization_workers.yml b/config/feature_flags/development/specialized_project_authorization_workers.yml
new file mode 100644
index 00000000000..7fceff532f3
--- /dev/null
+++ b/config/feature_flags/development/specialized_project_authorization_workers.yml
@@ -0,0 +1,7 @@
+---
+name: specialized_project_authorization_workers
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/sql-set-operators.yml b/config/feature_flags/development/sql-set-operators.yml
new file mode 100644
index 00000000000..cefe2a83782
--- /dev/null
+++ b/config/feature_flags/development/sql-set-operators.yml
@@ -0,0 +1,7 @@
+---
+name: sql-set-operators
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39786
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39786
+group: group::access
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/sql_set_operators.yml b/config/feature_flags/development/sql_set_operators.yml
new file mode 100644
index 00000000000..b8a838a13f1
--- /dev/null
+++ b/config/feature_flags/development/sql_set_operators.yml
@@ -0,0 +1,7 @@
+---
+name: sql_set_operators
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/squash_options.yml b/config/feature_flags/development/squash_options.yml
new file mode 100644
index 00000000000..9ba5129b9a3
--- /dev/null
+++ b/config/feature_flags/development/squash_options.yml
@@ -0,0 +1,7 @@
+---
+name: squash_options
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/sse_image_uploads.yml b/config/feature_flags/development/sse_image_uploads.yml
new file mode 100644
index 00000000000..469af524c87
--- /dev/null
+++ b/config/feature_flags/development/sse_image_uploads.yml
@@ -0,0 +1,7 @@
+---
+name: sse_image_uploads
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/store_instance_statistics_measurements.yml b/config/feature_flags/development/store_instance_statistics_measurements.yml
new file mode 100644
index 00000000000..9483b9005df
--- /dev/null
+++ b/config/feature_flags/development/store_instance_statistics_measurements.yml
@@ -0,0 +1,7 @@
+---
+name: store_instance_statistics_measurements
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41300
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/247871
+group: group::analytics
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/store_mentioned_users_to_db.yml b/config/feature_flags/development/store_mentioned_users_to_db.yml
new file mode 100644
index 00000000000..e19076f2b84
--- /dev/null
+++ b/config/feature_flags/development/store_mentioned_users_to_db.yml
@@ -0,0 +1,7 @@
+---
+name: store_mentioned_users_to_db
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/suggest_pipeline.yml b/config/feature_flags/development/suggest_pipeline.yml
new file mode 100644
index 00000000000..bd467f4bcca
--- /dev/null
+++ b/config/feature_flags/development/suggest_pipeline.yml
@@ -0,0 +1,7 @@
+---
+name: suggest_pipeline
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/track_editor_edit_actions.yml b/config/feature_flags/development/track_editor_edit_actions.yml
new file mode 100644
index 00000000000..a0a1a3ea873
--- /dev/null
+++ b/config/feature_flags/development/track_editor_edit_actions.yml
@@ -0,0 +1,7 @@
+---
+name: track_editor_edit_actions
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39694
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/240928
+group: group::editor
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/track_issue_activity_actions.yml b/config/feature_flags/development/track_issue_activity_actions.yml
new file mode 100644
index 00000000000..034b697ab52
--- /dev/null
+++ b/config/feature_flags/development/track_issue_activity_actions.yml
@@ -0,0 +1,7 @@
+---
+name: track_issue_activity_actions
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40904
+rollout_issue_url:
+group: group::project_management
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/track_resource_state_change_events.yml b/config/feature_flags/development/track_resource_state_change_events.yml
new file mode 100644
index 00000000000..3bfde5cf05e
--- /dev/null
+++ b/config/feature_flags/development/track_resource_state_change_events.yml
@@ -0,0 +1,7 @@
+---
+name: track_resource_state_change_events
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/track_unique_visits.yml b/config/feature_flags/development/track_unique_visits.yml
new file mode 100644
index 00000000000..6a60d327e87
--- /dev/null
+++ b/config/feature_flags/development/track_unique_visits.yml
@@ -0,0 +1,7 @@
+---
+name: track_unique_visits
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/tribute_autocomplete.yml b/config/feature_flags/development/tribute_autocomplete.yml
new file mode 100644
index 00000000000..31ee1b932d3
--- /dev/null
+++ b/config/feature_flags/development/tribute_autocomplete.yml
@@ -0,0 +1,7 @@
+---
+name: tribute_autocomplete
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/unified_diff_lines.yml b/config/feature_flags/development/unified_diff_lines.yml
new file mode 100644
index 00000000000..a676f0732dd
--- /dev/null
+++ b/config/feature_flags/development/unified_diff_lines.yml
@@ -0,0 +1,7 @@
+---
+name: unified_diff_lines
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40131
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241188
+group: group::source code
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/unlink_fork_network_upon_visibility_decrease.yml b/config/feature_flags/development/unlink_fork_network_upon_visibility_decrease.yml
new file mode 100644
index 00000000000..bfe3356cb8e
--- /dev/null
+++ b/config/feature_flags/development/unlink_fork_network_upon_visibility_decrease.yml
@@ -0,0 +1,7 @@
+---
+name: unlink_fork_network_upon_visibility_decrease
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/upload_middleware_jwt_params_handler.yml b/config/feature_flags/development/upload_middleware_jwt_params_handler.yml
new file mode 100644
index 00000000000..b467ade8609
--- /dev/null
+++ b/config/feature_flags/development/upload_middleware_jwt_params_handler.yml
@@ -0,0 +1,7 @@
+---
+name: upload_middleware_jwt_params_handler
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/33277
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/233895
+group: group::package
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/usage_data_api.yml b/config/feature_flags/development/usage_data_api.yml
new file mode 100644
index 00000000000..0976b27d417
--- /dev/null
+++ b/config/feature_flags/development/usage_data_api.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_api
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41301
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/235459
+group: group::telemetry
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/usage_data_g_compliance_dashboard.yml b/config/feature_flags/development/usage_data_g_compliance_dashboard.yml
new file mode 100644
index 00000000000..6f971788d88
--- /dev/null
+++ b/config/feature_flags/development/usage_data_g_compliance_dashboard.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_g_compliance_dashboard
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/usage_data_incident_management_alert_assigned.yml b/config/feature_flags/development/usage_data_incident_management_alert_assigned.yml
new file mode 100644
index 00000000000..22589d00ae0
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_alert_assigned.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_alert_assigned
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_alert_status_changed.yml b/config/feature_flags/development/usage_data_incident_management_alert_status_changed.yml
new file mode 100644
index 00000000000..10f987ecd65
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_alert_status_changed.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_alert_status_changed
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_alert_todo.yml b/config/feature_flags/development/usage_data_incident_management_alert_todo.yml
new file mode 100644
index 00000000000..67d18480a56
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_alert_todo.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_alert_todo
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_assigned.yml b/config/feature_flags/development/usage_data_incident_management_incident_assigned.yml
new file mode 100644
index 00000000000..1b48fe4ac9c
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_assigned.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_assigned
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_change_confidential.yml b/config/feature_flags/development/usage_data_incident_management_incident_change_confidential.yml
new file mode 100644
index 00000000000..6235382fd59
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_change_confidential.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_change_confidential
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_closed.yml b/config/feature_flags/development/usage_data_incident_management_incident_closed.yml
new file mode 100644
index 00000000000..4f8f9b951ed
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_closed.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_closed
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_comment.yml b/config/feature_flags/development/usage_data_incident_management_incident_comment.yml
new file mode 100644
index 00000000000..b41c96d3b04
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_comment.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_comment
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_created.yml b/config/feature_flags/development/usage_data_incident_management_incident_created.yml
new file mode 100644
index 00000000000..693cc23dc3b
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_created.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_created
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_relate.yml b/config/feature_flags/development/usage_data_incident_management_incident_relate.yml
new file mode 100644
index 00000000000..70b4c5c3f65
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_relate.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_relate
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_reopened.yml b/config/feature_flags/development/usage_data_incident_management_incident_reopened.yml
new file mode 100644
index 00000000000..ccb108a4a28
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_reopened.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_reopened
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_todo.yml b/config/feature_flags/development/usage_data_incident_management_incident_todo.yml
new file mode 100644
index 00000000000..c517a66a151
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_todo.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_todo
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_unrelate.yml b/config/feature_flags/development/usage_data_incident_management_incident_unrelate.yml
new file mode 100644
index 00000000000..da418eb79a4
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_unrelate.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_unrelate
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/usage_data_incident_management_incident_zoom_meeting.yml b/config/feature_flags/development/usage_data_incident_management_incident_zoom_meeting.yml
new file mode 100644
index 00000000000..bbe81fdf3ed
--- /dev/null
+++ b/config/feature_flags/development/usage_data_incident_management_incident_zoom_meeting.yml
@@ -0,0 +1,7 @@
+---
+name: usage_data_incident_management_incident_zoom_meeting
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/use_workhorse_s3_client.yml b/config/feature_flags/development/use_workhorse_s3_client.yml
new file mode 100644
index 00000000000..dd152996c0c
--- /dev/null
+++ b/config/feature_flags/development/use_workhorse_s3_client.yml
@@ -0,0 +1,7 @@
+---
+name: use_workhorse_s3_client
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/user_mode_in_session.yml b/config/feature_flags/development/user_mode_in_session.yml
new file mode 100644
index 00000000000..2a373ece4f4
--- /dev/null
+++ b/config/feature_flags/development/user_mode_in_session.yml
@@ -0,0 +1,7 @@
+---
+name: user_mode_in_session
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/user_time_settings.yml b/config/feature_flags/development/user_time_settings.yml
new file mode 100644
index 00000000000..a63f229f903
--- /dev/null
+++ b/config/feature_flags/development/user_time_settings.yml
@@ -0,0 +1,7 @@
+---
+name: user_time_settings
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/users_search.yml b/config/feature_flags/development/users_search.yml
new file mode 100644
index 00000000000..0397ee60225
--- /dev/null
+++ b/config/feature_flags/development/users_search.yml
@@ -0,0 +1,7 @@
+---
+name: users_search
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/validate_import_decompressed_archive_size.yml b/config/feature_flags/development/validate_import_decompressed_archive_size.yml
new file mode 100644
index 00000000000..28876f5180f
--- /dev/null
+++ b/config/feature_flags/development/validate_import_decompressed_archive_size.yml
@@ -0,0 +1,7 @@
+---
+name: validate_import_decompressed_archive_size
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/view_diffs_file_by_file.yml b/config/feature_flags/development/view_diffs_file_by_file.yml
new file mode 100644
index 00000000000..4df755943ab
--- /dev/null
+++ b/config/feature_flags/development/view_diffs_file_by_file.yml
@@ -0,0 +1,7 @@
+---
+name: view_diffs_file_by_file
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/vue_group_members_list.yml b/config/feature_flags/development/vue_group_members_list.yml
new file mode 100644
index 00000000000..c5a5ad638e4
--- /dev/null
+++ b/config/feature_flags/development/vue_group_members_list.yml
@@ -0,0 +1,7 @@
+---
+name: vue_group_members_list
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/40548
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/241194
+group: group::access
+type: development
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/development/vue_issuable_sidebar.yml b/config/feature_flags/development/vue_issuable_sidebar.yml
new file mode 100644
index 00000000000..d57852c9491
--- /dev/null
+++ b/config/feature_flags/development/vue_issuable_sidebar.yml
@@ -0,0 +1,7 @@
+---
+name: vue_issuable_sidebar
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/vue_issuables_list.yml b/config/feature_flags/development/vue_issuables_list.yml
new file mode 100644
index 00000000000..79ade237824
--- /dev/null
+++ b/config/feature_flags/development/vue_issuables_list.yml
@@ -0,0 +1,7 @@
+---
+name: vue_issuables_list
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/web_ide_primary_edit.yml b/config/feature_flags/development/web_ide_primary_edit.yml
new file mode 100644
index 00000000000..8bea7fd94e7
--- /dev/null
+++ b/config/feature_flags/development/web_ide_primary_edit.yml
@@ -0,0 +1,7 @@
+---
+name: web_ide_primary_edit
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/webauthn.yml b/config/feature_flags/development/webauthn.yml
new file mode 100644
index 00000000000..7b360e884ae
--- /dev/null
+++ b/config/feature_flags/development/webauthn.yml
@@ -0,0 +1,7 @@
+---
+name: webauthn
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/webperf_experiment.yml b/config/feature_flags/development/webperf_experiment.yml
new file mode 100644
index 00000000000..02c2a12cfaf
--- /dev/null
+++ b/config/feature_flags/development/webperf_experiment.yml
@@ -0,0 +1,7 @@
+---
+name: webperf_experiment
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/whats_new_drawer.yml b/config/feature_flags/development/whats_new_drawer.yml
new file mode 100644
index 00000000000..6e31b17e05a
--- /dev/null
+++ b/config/feature_flags/development/whats_new_drawer.yml
@@ -0,0 +1,7 @@
+---
+name: whats_new_drawer
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/widget_visibility_polling.yml b/config/feature_flags/development/widget_visibility_polling.yml
new file mode 100644
index 00000000000..c0c6962a46d
--- /dev/null
+++ b/config/feature_flags/development/widget_visibility_polling.yml
@@ -0,0 +1,7 @@
+---
+name: widget_visibility_polling
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/wiki.yml b/config/feature_flags/development/wiki.yml
new file mode 100644
index 00000000000..9f36fd7c6aa
--- /dev/null
+++ b/config/feature_flags/development/wiki.yml
@@ -0,0 +1,7 @@
+---
+name: wiki
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: true
diff --git a/config/feature_flags/development/wiki_events_on_git_push.yml b/config/feature_flags/development/wiki_events_on_git_push.yml
new file mode 100644
index 00000000000..abab9029bae
--- /dev/null
+++ b/config/feature_flags/development/wiki_events_on_git_push.yml
@@ -0,0 +1,7 @@
+---
+name: wiki_events_on_git_push
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/wiki_front_matter.yml b/config/feature_flags/development/wiki_front_matter.yml
new file mode 100644
index 00000000000..6b388aaa5d2
--- /dev/null
+++ b/config/feature_flags/development/wiki_front_matter.yml
@@ -0,0 +1,7 @@
+---
+name: wiki_front_matter
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/development/workhorse_archive_cache_disabled.yml b/config/feature_flags/development/workhorse_archive_cache_disabled.yml
new file mode 100644
index 00000000000..b708d21ad89
--- /dev/null
+++ b/config/feature_flags/development/workhorse_archive_cache_disabled.yml
@@ -0,0 +1,7 @@
+---
+name: workhorse_archive_cache_disabled
+introduced_by_url:
+rollout_issue_url:
+group:
+type: development
+default_enabled: false
diff --git a/config/feature_flags/ops/ci_accept_trace.yml b/config/feature_flags/ops/ci_accept_trace.yml
new file mode 100644
index 00000000000..e32a3819844
--- /dev/null
+++ b/config/feature_flags/ops/ci_accept_trace.yml
@@ -0,0 +1,7 @@
+---
+name: ci_accept_trace
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41304
+rollout_issue_url:
+group: group::continuous integration
+type: ops
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/ops/ci_trace_overwrite.yml b/config/feature_flags/ops/ci_trace_overwrite.yml
new file mode 100644
index 00000000000..7996b957262
--- /dev/null
+++ b/config/feature_flags/ops/ci_trace_overwrite.yml
@@ -0,0 +1,7 @@
+---
+name: ci_trace_overwrite
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41304
+rollout_issue_url:
+group: group::continuous integration
+type: ops
+default_enabled: false \ No newline at end of file
diff --git a/config/feature_flags/ops/kubernetes_agent_internal_api.yml b/config/feature_flags/ops/kubernetes_agent_internal_api.yml
new file mode 100644
index 00000000000..f1dfdbb3950
--- /dev/null
+++ b/config/feature_flags/ops/kubernetes_agent_internal_api.yml
@@ -0,0 +1,7 @@
+---
+name: kubernetes_agent_internal_api
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41045
+rollout_issue_url:
+group: group::configure
+type: ops
+default_enabled: true
diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
index 5d217332634..605729a1435 100644
--- a/config/gitlab.yml.example
+++ b/config/gitlab.yml.example
@@ -456,6 +456,10 @@ production: &base
schedule_migrate_external_diffs_worker:
cron: "15 * * * *"
+ # Update CI Platform Metrics daily
+ ci_platform_metrics_update_cron_worker:
+ cron: "47 9 * * *"
+
# GitLab EE only jobs. These jobs are automatically enabled for an EE
# installation, and ignored for a CE installation.
ee_cron_jobs:
@@ -890,8 +894,10 @@ production: &base
# Allow users with existing accounts to sign in and auto link their account via OmniAuth
# login, without having to do a manual login first and manually add OmniAuth. Links on email.
+ # Define the allowed providers using an array, e.g. ["saml", "twitter"], or as true/false to
+ # allow all providers or none.
# (default: false)
- auto_link_user: false
+ auto_link_user: ["saml", "twitter"]
# Set different Omniauth providers as external so that all users creating accounts
# via these providers will not be able to have access to internal projects. You
@@ -1093,6 +1099,11 @@ production: &base
# Default is '.gitlab_workhorse_secret' relative to Rails.root (i.e. root of the GitLab app).
# secret_file: /home/git/gitlab/.gitlab_workhorse_secret
+ gitlab_kas:
+ # File that contains the secret key for verifying access for gitlab-kas.
+ # Default is '.gitlab_kas_secret' relative to Rails.root (i.e. root of the GitLab app).
+ # secret_file: /home/git/gitlab/.gitlab_kas_secret
+
## GitLab Elasticsearch settings
elasticsearch:
indexer_path: /home/git/gitlab-elasticsearch-indexer/
@@ -1125,6 +1136,7 @@ production: &base
# Sidekiq exporter is webserver built in to Sidekiq to expose Prometheus metrics
sidekiq_exporter:
# enabled: true
+ # log_enabled: false
# address: localhost
# port: 8082
@@ -1142,8 +1154,15 @@ production: &base
# yourself, and then update the values here.
# https://docs.gitlab.com/ee/administration/monitoring/prometheus/
prometheus:
+ # Do not use `enable` and `listen_address` in any new code, as they are deprecated. Use `server_address` instead.
+ # https://gitlab.com/gitlab-org/gitlab/-/issues/227111
# enable: true
# listen_address: 'localhost:9090'
+ # server_address: 'localhost:9090'
+
+ ## Consul settings
+ consul:
+ # api_url: 'http://localhost:8500'
shutdown:
# # blackout_seconds:
@@ -1397,6 +1416,11 @@ test:
app_id: 'YOUR_CLIENT_ID',
app_secret: 'YOUR_CLIENT_SECRET'
}
+ - { name: 'atlassian_oauth2',
+ app_id: 'YOUR_CLIENT_ID',
+ app_secret: 'YOUR_CLIENT_SECRET',
+ args: { scope: 'offline_access read:jira-user read:jira-work', prompt: 'consent' }
+ }
ldap:
enabled: false
servers:
diff --git a/config/helpers/is_eslint.js b/config/helpers/is_eslint.js
index 5dfb7e533e4..55ec42e68c1 100644
--- a/config/helpers/is_eslint.js
+++ b/config/helpers/is_eslint.js
@@ -5,7 +5,7 @@ const isESLint = mod => {
let parent = mod.parent;
while (parent) {
- if (parent.filename.includes('/eslint')) {
+ if (parent.filename && parent.filename.includes('/eslint')) {
return true;
}
diff --git a/config/initializers/0_inject_feature_flags.rb b/config/initializers/0_inject_feature_flags.rb
index 45e6546e294..5b33b3bb4ea 100644
--- a/config/initializers/0_inject_feature_flags.rb
+++ b/config/initializers/0_inject_feature_flags.rb
@@ -3,3 +3,4 @@
Feature.register_feature_groups
Feature.register_definitions
+Feature.register_hot_reloader unless Rails.configuration.cache_classes
diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb
index 628d9c65ce0..6ccd027dd5d 100644
--- a/config/initializers/1_settings.rb
+++ b/config/initializers/1_settings.rb
@@ -176,8 +176,8 @@ Settings.gitlab['user'] ||= 'git'
Settings.gitlab['ssh_user'] ||= Settings.gitlab.user
Settings.gitlab['user_home'] ||= begin
Etc.getpwnam(Settings.gitlab['user']).dir
-rescue ArgumentError # no user configured
- '/home/' + Settings.gitlab['user']
+ rescue ArgumentError # no user configured
+ '/home/' + Settings.gitlab['user']
end
Settings.gitlab['time_zone'] ||= nil
Settings.gitlab['signup_enabled'] ||= true if Settings.gitlab['signup_enabled'].nil?
@@ -511,6 +511,12 @@ Settings.cron_jobs['update_container_registry_info_worker']['job_class'] = 'Upda
Settings.cron_jobs['postgres_dynamic_partitions_creator'] ||= Settingslogic.new({})
Settings.cron_jobs['postgres_dynamic_partitions_creator']['cron'] ||= '21 */6 * * *'
Settings.cron_jobs['postgres_dynamic_partitions_creator']['job_class'] ||= 'PartitionCreationWorker'
+Settings.cron_jobs['ci_platform_metrics_update_cron_worker'] ||= Settingslogic.new({})
+Settings.cron_jobs['ci_platform_metrics_update_cron_worker']['cron'] ||= '47 9 * * *'
+Settings.cron_jobs['ci_platform_metrics_update_cron_worker']['job_class'] = 'CiPlatformMetricsUpdateCronWorker'
+Settings.cron_jobs['analytics_instance_statistics_count_job_trigger_worker'] ||= Settingslogic.new({})
+Settings.cron_jobs['analytics_instance_statistics_count_job_trigger_worker']['cron'] ||= '50 23 */1 * *'
+Settings.cron_jobs['analytics_instance_statistics_count_job_trigger_worker']['job_class'] ||= 'Analytics::InstanceStatistics::CountJobTriggerWorker'
Gitlab.ee do
Settings.cron_jobs['adjourned_group_deletion_worker'] ||= Settingslogic.new({})
@@ -635,6 +641,12 @@ Settings['workhorse'] ||= Settingslogic.new({})
Settings.workhorse['secret_file'] ||= Rails.root.join('.gitlab_workhorse_secret')
#
+# GitLab KAS
+#
+Settings['gitlab_kas'] ||= Settingslogic.new({})
+Settings.gitlab_kas['secret_file'] ||= Rails.root.join('.gitlab_kas_secret')
+
+#
# Repositories
#
Settings['repositories'] ||= Settingslogic.new({})
@@ -772,6 +784,7 @@ Settings.monitoring['ip_whitelist'] ||= ['127.0.0.1/8']
Settings.monitoring['unicorn_sampler_interval'] ||= 10
Settings.monitoring['sidekiq_exporter'] ||= Settingslogic.new({})
Settings.monitoring.sidekiq_exporter['enabled'] ||= false
+Settings.monitoring.sidekiq_exporter['log_enabled'] ||= false
Settings.monitoring.sidekiq_exporter['address'] ||= 'localhost'
Settings.monitoring.sidekiq_exporter['port'] ||= 8082
Settings.monitoring['web_exporter'] ||= Settingslogic.new({})
diff --git a/config/initializers/7_prometheus_metrics.rb b/config/initializers/7_prometheus_metrics.rb
index cec1a213ed2..d5d8587f1c8 100644
--- a/config/initializers/7_prometheus_metrics.rb
+++ b/config/initializers/7_prometheus_metrics.rb
@@ -16,7 +16,7 @@ def prometheus_default_multiproc_dir
end
Prometheus::Client.configure do |config|
- config.logger = Rails.logger # rubocop:disable Gitlab/RailsLogger
+ config.logger = Gitlab::AppLogger
config.initial_mmap_file_size = 4 * 1024
@@ -46,6 +46,10 @@ if !Rails.env.test? && Gitlab::Metrics.prometheus_metrics_enabled?
Gitlab::Metrics::Samplers::DatabaseSampler.initialize_instance.start
Gitlab::Metrics::Samplers::ThreadsSampler.initialize_instance.start
+ if Gitlab::Runtime.action_cable?
+ Gitlab::Metrics::Samplers::ActionCableSampler.instance.start
+ end
+
if Gitlab.ee? && Gitlab::Runtime.sidekiq?
Gitlab::Metrics::Samplers::GlobalSearchSampler.instance.start
end
diff --git a/config/initializers/8_devise.rb b/config/initializers/8_devise.rb
index 2be6e535fee..b91a4622ce8 100644
--- a/config/initializers/8_devise.rb
+++ b/config/initializers/8_devise.rb
@@ -41,7 +41,7 @@ Devise.setup do |config|
# Configure which authentication keys should be case-insensitive.
# These keys will be downcased upon creating or modifying a user and when used
# to authenticate or find a user. Default is :email.
- config.case_insensitive_keys = [:email, :email_confirmation]
+ config.case_insensitive_keys = [:email]
# Configure which authentication keys should have whitespace stripped.
# These keys will have whitespace before and after removed upon creating or
diff --git a/config/initializers/active_record_lifecycle.rb b/config/initializers/active_record_lifecycle.rb
index 493d328b93e..4d63ffaf711 100644
--- a/config/initializers/active_record_lifecycle.rb
+++ b/config/initializers/active_record_lifecycle.rb
@@ -7,7 +7,7 @@ if defined?(ActiveRecord::Base) && !Gitlab::Runtime.sidekiq?
ActiveSupport.on_load(:active_record) do
ActiveRecord::Base.establish_connection
- Rails.logger.debug("ActiveRecord connection established") # rubocop:disable Gitlab/RailsLogger
+ Gitlab::AppLogger.debug("ActiveRecord connection established")
end
end
end
@@ -20,6 +20,6 @@ if defined?(ActiveRecord::Base)
# as there's no need for the master process to hold a connection
ActiveRecord::Base.connection.disconnect!
- Rails.logger.debug("ActiveRecord connection disconnected") # rubocop:disable Gitlab/RailsLogger
+ Gitlab::AppLogger.debug("ActiveRecord connection disconnected")
end
end
diff --git a/config/initializers/backtrace_silencers.rb b/config/initializers/backtrace_silencers.rb
index f25bb7d25fa..2f892f78112 100644
--- a/config/initializers/backtrace_silencers.rb
+++ b/config/initializers/backtrace_silencers.rb
@@ -2,7 +2,7 @@ Rails.backtrace_cleaner.remove_silencers!
# This allows us to see the proper caller of SQL calls in {development,test}.log
if (Rails.env.development? || Rails.env.test?) && Gitlab.ee?
- Rails.backtrace_cleaner.add_silencer { |line| line =~ %r(^ee/lib/gitlab/database/load_balancing) }
+ Rails.backtrace_cleaner.add_silencer { |line| %r(^ee/lib/gitlab/database/load_balancing).match?(line) }
end
-Rails.backtrace_cleaner.add_silencer { |line| line !~ Gitlab::APP_DIRS_PATTERN }
+Rails.backtrace_cleaner.add_silencer { |line| !Gitlab::APP_DIRS_PATTERN.match?(line) }
diff --git a/config/initializers/carrierwave_patch.rb b/config/initializers/carrierwave_patch.rb
index 53fba307926..ad3ff36138f 100644
--- a/config/initializers/carrierwave_patch.rb
+++ b/config/initializers/carrierwave_patch.rb
@@ -7,7 +7,9 @@ require "carrierwave/storage/fog"
#
# This patch also incorporates
# https://github.com/carrierwaveuploader/carrierwave/pull/2375 to
-# provide Azure support. This is already in CarrierWave v2.1.x, but
+# provide Azure support
+# and https://github.com/carrierwaveuploader/carrierwave/pull/2397 to
+# support custom expire_at. This is already in CarrierWave v2.1.x, but
# upgrading this gem is a significant task:
# https://gitlab.com/gitlab-org/gitlab/-/issues/216067
module CarrierWave
@@ -28,7 +30,7 @@ module CarrierWave
# avoid a get by using local references
local_directory = connection.directories.new(key: @uploader.fog_directory)
local_file = local_directory.files.new(key: path)
- expire_at = ::Fog::Time.now + @uploader.fog_authenticated_url_expiration
+ expire_at = options[:expire_at] || ::Fog::Time.now + @uploader.fog_authenticated_url_expiration
case @uploader.fog_credentials[:provider]
when 'AWS', 'Google'
# Older versions of fog-google do not support options as a parameter
diff --git a/config/initializers/deprecations.rb b/config/initializers/deprecations.rb
index 0d096e34eb7..2b07ca665e2 100644
--- a/config/initializers/deprecations.rb
+++ b/config/initializers/deprecations.rb
@@ -2,7 +2,7 @@ if Rails.env.development? || ENV['GITLAB_LEGACY_PATH_LOG_MESSAGE']
deprecator = ActiveSupport::Deprecation.new('11.0', 'GitLab')
deprecator.behavior = -> (message, callstack) {
- Rails.logger.warn("#{message}: #{callstack[1..20].join}") # rubocop:disable Gitlab/RailsLogger
+ Gitlab::AppLogger.warn("#{message}: #{callstack[1..20].join}")
}
ActiveSupport::Deprecation.deprecate_methods(Gitlab::GitalyClient::StorageSettings, :legacy_disk_path, deprecator: deprecator)
diff --git a/config/initializers/direct_upload_support.rb b/config/initializers/direct_upload_support.rb
index 94e90727f0c..919b80b79c0 100644
--- a/config/initializers/direct_upload_support.rb
+++ b/config/initializers/direct_upload_support.rb
@@ -1,5 +1,7 @@
class DirectUploadsValidator
- SUPPORTED_DIRECT_UPLOAD_PROVIDERS = %w(Google AWS AzureRM).freeze
+ SUPPORTED_DIRECT_UPLOAD_PROVIDERS = [ObjectStorage::Config::GOOGLE_PROVIDER,
+ ObjectStorage::Config::AWS_PROVIDER,
+ ObjectStorage::Config::AZURE_PROVIDER].freeze
ValidationError = Class.new(StandardError)
@@ -24,7 +26,7 @@ class DirectUploadsValidator
def provider_loaded?(provider)
return false unless SUPPORTED_DIRECT_UPLOAD_PROVIDERS.include?(provider)
- require 'fog/azurerm' if provider == 'AzureRM'
+ require 'fog/azurerm' if provider == ObjectStorage::Config::AZURE_PROVIDER
true
end
diff --git a/config/initializers/doorkeeper.rb b/config/initializers/doorkeeper.rb
index ad0b0c2008f..6b54b5074d5 100644
--- a/config/initializers/doorkeeper.rb
+++ b/config/initializers/doorkeeper.rb
@@ -3,6 +3,10 @@ Doorkeeper.configure do
# Currently supported options are :active_record, :mongoid2, :mongoid3, :mongo_mapper
orm :active_record
+ # Restore to pre-5.1 generator due to breaking change.
+ # See https://gitlab.com/gitlab-org/gitlab/-/issues/244371
+ default_generator_method :hex
+
# This block will be called to check whether the resource owner is authenticated or not.
resource_owner_authenticator do
# Put your resource owner authentication logic here.
@@ -79,13 +83,6 @@ Doorkeeper.configure do
# Check out the wiki for more information on customization
access_token_methods :from_access_token_param, :from_bearer_authorization, :from_bearer_param
- # Change the native redirect uri for client apps
- # When clients register with the following redirect uri, they won't be redirected to any server and the authorization code will be displayed within the provider
- # The value can be any string. Use nil to disable this feature. When disabled, clients must provide a valid URL
- # (Similar behaviour: https://developers.google.com/accounts/docs/OAuth2InstalledApp#choosingredirecturi)
- #
- native_redirect_uri nil # 'urn:ietf:wg:oauth:2.0:oob'
-
# Specify what grant flows are enabled in array of Strings. The valid
# strings and the flows they enable are:
#
diff --git a/config/initializers/forbid_sidekiq_in_transactions.rb b/config/initializers/forbid_sidekiq_in_transactions.rb
index 9bade443aae..6bcd4dbd52f 100644
--- a/config/initializers/forbid_sidekiq_in_transactions.rb
+++ b/config/initializers/forbid_sidekiq_in_transactions.rb
@@ -28,7 +28,7 @@ module Sidekiq
Use an `after_commit` hook, or include `AfterCommitQueue` and use a `run_after_commit` block instead.
MSG
rescue Sidekiq::Worker::EnqueueFromTransactionError => e
- ::Rails.logger.error(e.message) if ::Rails.env.production?
+ Gitlab::AppLogger.error(e.message) if ::Rails.env.production?
Gitlab::ErrorTracking.track_and_raise_for_dev_exception(e)
end
end
diff --git a/config/initializers/gitlab_kas_secret.rb b/config/initializers/gitlab_kas_secret.rb
new file mode 100644
index 00000000000..5e86e954684
--- /dev/null
+++ b/config/initializers/gitlab_kas_secret.rb
@@ -0,0 +1 @@
+Gitlab::Kas.ensure_secret!
diff --git a/config/initializers/remove_active_job_execute_callback.rb b/config/initializers/remove_active_job_execute_callback.rb
new file mode 100644
index 00000000000..c8efcb11202
--- /dev/null
+++ b/config/initializers/remove_active_job_execute_callback.rb
@@ -0,0 +1,27 @@
+# frozen_string_literal: true
+
+return unless Rails.env.test?
+
+Rails.application.configure do
+ config.after_initialize do
+ # We don't care about ActiveJob reloading the code in test env as we run
+ # jobs inline in test env.
+ # So in test, we remove this callback, which calls app.reloader.wrap, and
+ # ultimately calls FileUpdateChecker#updated? which is slow on macOS
+ #
+ # https://github.com/rails/rails/blob/6-0-stable/activejob/lib/active_job/railtie.rb#L39-L46
+ def active_job_railtie_callback?
+ callbacks = ActiveJob::Callbacks.singleton_class.__callbacks[:execute]
+
+ callbacks &&
+ callbacks.send(:chain).size == 1 &&
+ callbacks.first.kind == :around &&
+ callbacks.first.raw_filter.is_a?(Proc) &&
+ callbacks.first.raw_filter.source_location.first.ends_with?('lib/active_job/railtie.rb')
+ end
+
+ if active_job_railtie_callback?
+ ActiveJob::Callbacks.singleton_class.reset_callbacks(:execute)
+ end
+ end
+end
diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb
index febcedfee82..a33c28090e2 100644
--- a/config/initializers/sidekiq.rb
+++ b/config/initializers/sidekiq.rb
@@ -18,7 +18,7 @@ queues_config_hash[:namespace] = Gitlab::Redis::Queues::SIDEKIQ_NAMESPACE
enable_json_logs = Gitlab.config.sidekiq.log_format == 'json'
enable_sidekiq_memory_killer = ENV['SIDEKIQ_MEMORY_KILLER_MAX_RSS'].to_i.nonzero?
-use_sidekiq_daemon_memory_killer = ENV["SIDEKIQ_DAEMON_MEMORY_KILLER"].to_i.nonzero?
+use_sidekiq_daemon_memory_killer = ENV.fetch("SIDEKIQ_DAEMON_MEMORY_KILLER", 1).to_i.nonzero?
use_sidekiq_legacy_memory_killer = !use_sidekiq_daemon_memory_killer
Sidekiq.configure_server do |config|
@@ -70,7 +70,7 @@ Sidekiq.configure_server do |config|
cron_jobs[k]['class'] = cron_jobs[k].delete('job_class')
else
cron_jobs.delete(k)
- Rails.logger.error("Invalid cron_jobs config key: '#{k}'. Check your gitlab config file.") # rubocop:disable Gitlab/RailsLogger
+ Gitlab::AppLogger.error("Invalid cron_jobs config key: '#{k}'. Check your gitlab config file.")
end
end
Sidekiq::Cron::Job.load_from_hash! cron_jobs
diff --git a/config/initializers/trusted_proxies.rb b/config/initializers/trusted_proxies.rb
index 13896408806..93c4d2b10cc 100644
--- a/config/initializers/trusted_proxies.rb
+++ b/config/initializers/trusted_proxies.rb
@@ -15,7 +15,7 @@ end
gitlab_trusted_proxies = Array(Gitlab.config.gitlab.trusted_proxies).map do |proxy|
IPAddr.new(proxy)
-rescue IPAddr::InvalidAddressError
+ rescue IPAddr::InvalidAddressError
end.compact
Rails.application.config.action_dispatch.trusted_proxies = (
diff --git a/config/initializers/warden.rb b/config/initializers/warden.rb
index d8a4da8cdf9..84bda81a33a 100644
--- a/config/initializers/warden.rb
+++ b/config/initializers/warden.rb
@@ -19,7 +19,7 @@ Rails.application.configure do |config|
Warden::Manager.after_authentication(scope: :user) do |user, auth, opts|
ActiveSession.cleanup(user)
- Gitlab::AnonymousSession.new(auth.request.remote_ip, session_id: auth.request.session.id).cleanup_session_per_ip_entries
+ Gitlab::AnonymousSession.new(auth.request.remote_ip).cleanup_session_per_ip_count
end
Warden::Manager.after_set_user(scope: :user, only: :fetch) do |user, auth, opts|
diff --git a/config/initializers/webauthn.rb b/config/initializers/webauthn.rb
new file mode 100644
index 00000000000..8dc5dfd56ed
--- /dev/null
+++ b/config/initializers/webauthn.rb
@@ -0,0 +1,35 @@
+WebAuthn.configure do |config|
+ # This value needs to match `window.location.origin` evaluated by
+ # the User Agent during registration and authentication ceremonies.
+ config.origin = Settings.gitlab['base_url']
+
+ # Relying Party name for display purposes
+ # config.rp_name = "Example Inc."
+
+ # Optionally configure a client timeout hint, in milliseconds.
+ # This hint specifies how long the browser should wait for any
+ # interaction with the user.
+ # This hint may be overridden by the browser.
+ # https://www.w3.org/TR/webauthn/#dom-publickeycredentialcreationoptions-timeout
+ # config.credential_options_timeout = 120_000
+
+ # You can optionally specify a different Relying Party ID
+ # (https://www.w3.org/TR/webauthn/#relying-party-identifier)
+ # if it differs from the default one.
+ #
+ # In this case the default would be "auth.example.com", but you can set it to
+ # the suffix "example.com"
+ #
+ # config.rp_id = "example.com"
+
+ # Configure preferred binary-to-text encoding scheme. This should match the encoding scheme
+ # used in your client-side (user agent) code before sending the credential to the server.
+ # Supported values: `:base64url` (default), `:base64` or `false` to disable all encoding.
+ #
+ config.encoding = :base64
+
+ # Possible values: "ES256", "ES384", "ES512", "PS256", "PS384", "PS512", "RS256", "RS384", "RS512", "RS1"
+ # Default: ["ES256", "PS256", "RS256"]
+ #
+ # config.algorithms << "ES384"
+end
diff --git a/config/initializers_before_autoloader/000_inflections.rb b/config/initializers_before_autoloader/000_inflections.rb
index 938f9ca9028..a34b75d0382 100644
--- a/config/initializers_before_autoloader/000_inflections.rb
+++ b/config/initializers_before_autoloader/000_inflections.rb
@@ -28,6 +28,7 @@ ActiveSupport::Inflector.inflections do |inflect|
terraform_state_registry
vulnerabilities_feedback
vulnerability_feedback
+ snippet_repository_registry
)
inflect.acronym 'EE'
inflect.acronym 'CSP'
diff --git a/config/locales/devise.en.yml b/config/locales/devise.en.yml
index e8110e21766..e4a46be9bf3 100644
--- a/config/locales/devise.en.yml
+++ b/config/locales/devise.en.yml
@@ -25,6 +25,8 @@ en:
subject: "Unlock instructions"
password_change:
subject: "Password Changed"
+ password_change_by_admin:
+ subject: "Password changed by administrator"
omniauth_callbacks:
failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
success: "Successfully authenticated from %{kind} account."
diff --git a/config/locales/doorkeeper.en.yml b/config/locales/doorkeeper.en.yml
index 8469b72c312..81e4f73e6b2 100644
--- a/config/locales/doorkeeper.en.yml
+++ b/config/locales/doorkeeper.en.yml
@@ -30,7 +30,6 @@ en:
errors:
messages:
# Common error messages
- invalid_request: 'The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed.'
invalid_redirect_uri: 'The redirect URI included is not valid.'
unauthorized_client: 'The client is not authorized to perform this request using this method.'
access_denied: 'The resource owner or authorization server denied the request.'
@@ -54,6 +53,12 @@ en:
# Password Access token errors
invalid_resource_owner: 'The provided resource owner credentials are not valid, or resource owner cannot be found'
+ invalid_request:
+ unknown: 'The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed.'
+ missing_param: 'Missing required parameter: %{value}.'
+ not_support_pkce: 'Invalid code_verifier parameter. Server does not support pkce.'
+ request_not_authorized: 'Request need to be authorized. Required parameter for authorizing request is missing or invalid.'
+
invalid_token:
revoked: "The access token was revoked"
expired: "The access token expired"
diff --git a/config/routes.rb b/config/routes.rb
index b1ab4ec6bab..9bd68bfeef6 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -32,13 +32,10 @@ Rails.application.routes.draw do
# This prefixless path is required because Jira gets confused if we set it up with a path
# More information: https://gitlab.com/gitlab-org/gitlab/issues/6752
scope path: '/login/oauth', controller: 'oauth/jira/authorizations', as: :oauth_jira do
- Gitlab.ee do
- get :authorize, action: :new
- get :callback
- post :access_token
- end
+ get :authorize, action: :new
+ get :callback
+ post :access_token
- # This helps minimize merge conflicts with CE for this scope block
match '*all', via: [:get, :post], to: proc { [404, {}, ['']] }
end
@@ -72,6 +69,10 @@ Rails.application.routes.draw do
# Begin of the /-/ scope.
# Use this scope for all new global routes.
scope path: '-' do
+ # remove in 13.5
+ get '/instance_statistics', to: redirect('admin/dev_ops_report')
+ get '/instance_statistics/dev_ops_score', to: redirect('admin/dev_ops_report')
+ get '/instance_statistics/cohorts', to: redirect('admin/cohorts')
# Autocomplete
get '/autocomplete/users' => 'autocomplete#users'
get '/autocomplete/users/:id' => 'autocomplete#user'
@@ -123,19 +124,17 @@ Rails.application.routes.draw do
get 'ide/*vueroute' => 'ide#index', format: false
draw :operations
- draw :instance_statistics
+ draw :jira_connect
Gitlab.ee do
draw :security
draw :smartcard
- draw :jira_connect
draw :username
draw :trial
draw :trial_registration
draw :country
draw :country_state
draw :subscription
- draw :analytics
scope '/push_from_secondary/:geo_node_id' do
draw :git_http
diff --git a/config/routes/admin.rb b/config/routes/admin.rb
index f3b7fb5ed45..bac8247de2e 100644
--- a/config/routes/admin.rb
+++ b/config/routes/admin.rb
@@ -89,6 +89,12 @@ namespace :admin do
resources :projects, only: [:index]
+ resources :instance_statistics, only: :index
+ resource :dev_ops_report, controller: 'dev_ops_report', only: :show
+ # remove in 13.5
+ get '/dev_ops_score', to: redirect('admin/dev_ops_report')
+ resources :cohorts, only: :index
+
scope(path: 'projects/*namespace_id',
as: :namespace,
constraints: { namespace_id: Gitlab::PathRegex.full_namespace_route_regex }) do
@@ -135,6 +141,8 @@ namespace :admin do
get :status_delete_self_monitoring_project
end
+ resources :plan_limits, only: :create
+
resources :labels
resources :runners, only: [:index, :show, :update, :destroy] do
diff --git a/config/routes/group.rb b/config/routes/group.rb
index e07ed0fab05..e5bbfdf7548 100644
--- a/config/routes/group.rb
+++ b/config/routes/group.rb
@@ -23,9 +23,7 @@ constraints(::Constraints::GroupUrlConstrainer.new) do
get 'archived', action: :show, as: :group_archived # rubocop:disable Cop/PutGroupRoutesUnderScope
end
- # These routes are legit and the cop rule will be improved in
- # https://gitlab.com/gitlab-org/gitlab/-/issues/230703
- get '/', action: :show, as: :group_canonical # rubocop:disable Cop/PutGroupRoutesUnderScope
+ get '/', action: :show, as: :group_canonical
end
scope(path: 'groups/*group_id/-',
@@ -112,11 +110,9 @@ constraints(::Constraints::GroupUrlConstrainer.new) do
as: :group,
constraints: { id: Gitlab::PathRegex.full_namespace_route_regex, format: /(html|json|atom)/ },
controller: :groups) do
- # These routes are legit and the cop rule will be improved in
- # https://gitlab.com/gitlab-org/gitlab/-/issues/230703
- get '/', action: :show # rubocop:disable Cop/PutGroupRoutesUnderScope
- patch '/', action: :update # rubocop:disable Cop/PutGroupRoutesUnderScope
- put '/', action: :update # rubocop:disable Cop/PutGroupRoutesUnderScope
- delete '/', action: :destroy # rubocop:disable Cop/PutGroupRoutesUnderScope
+ get '/', action: :show
+ patch '/', action: :update
+ put '/', action: :update
+ delete '/', action: :destroy
end
end
diff --git a/config/routes/instance_statistics.rb b/config/routes/instance_statistics.rb
deleted file mode 100644
index 967255d5b82..00000000000
--- a/config/routes/instance_statistics.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-# frozen_string_literal: true
-
-namespace :instance_statistics do
- root to: redirect('-/instance_statistics/dev_ops_score')
-
- resources :cohorts, only: :index
- resources :dev_ops_score, only: :index
-end
diff --git a/config/routes/issues.rb b/config/routes/issues.rb
index eae1cacfcf7..cc4399693ed 100644
--- a/config/routes/issues.rb
+++ b/config/routes/issues.rb
@@ -22,4 +22,6 @@ resources :issues, concerns: :awardable, constraints: { id: /\d+/ } do
post :import_csv
post :export_csv
end
+
+ resources :issue_links, only: [:index, :create, :destroy], as: 'links', path: 'links'
end
diff --git a/config/routes/jira_connect.rb b/config/routes/jira_connect.rb
new file mode 100644
index 00000000000..a3b786b60f0
--- /dev/null
+++ b/config/routes/jira_connect.rb
@@ -0,0 +1,15 @@
+# frozen_string_literal: true
+
+namespace :jira_connect do
+ # This is so we can have a named route helper for the base URL
+ root to: proc { [404, {}, ['']] }, as: 'base'
+
+ get 'app_descriptor' => 'app_descriptor#show'
+
+ namespace :events do
+ post 'installed'
+ post 'uninstalled'
+ end
+
+ resources :subscriptions, only: [:index, :create, :destroy]
+end
diff --git a/config/routes/profile.rb b/config/routes/profile.rb
index 6126a3b593b..3eda53318e3 100644
--- a/config/routes/profile.rb
+++ b/config/routes/profile.rb
@@ -63,9 +63,11 @@ resource :profile, only: [:show, :update] do
post :create_u2f
post :codes
patch :skip
+ post :create_webauthn
end
end
resources :u2f_registrations, only: [:destroy]
+ resources :webauthn_registrations, only: [:destroy]
end
end
diff --git a/config/routes/project.rb b/config/routes/project.rb
index d02dc974434..24b44646d95 100644
--- a/config/routes/project.rb
+++ b/config/routes/project.rb
@@ -25,7 +25,10 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
# Use this scope for all new project routes.
scope '-' do
get 'archive/*id', constraints: { format: Gitlab::PathRegex.archive_formats_regex, id: /.+?/ }, to: 'repositories#archive', as: 'archive'
- get 'metrics(/:dashboard_path)(/:page)', constraints: { dashboard_path: /.+\.yml/, page: 'panel/new' },
+ # Since the page parameter can contain slashes (panel/new), use Rails'
+ # "Route Globbing" syntax (/*page) so that the route helpers do not encode
+ # the slash character.
+ get 'metrics(/:dashboard_path)(/*page)', constraints: { dashboard_path: /.+\.yml/, page: 'panel/new' },
to: 'metrics_dashboard#show', as: :metrics_dashboard, format: false
namespace :metrics, module: :metrics do
@@ -367,6 +370,19 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
post :mark_as_spam
end
end
+
+ resources :feature_flags, param: :iid do
+ resources :feature_flag_issues, only: [:index, :create, :destroy], as: 'issues', path: 'issues'
+ end
+ resource :feature_flags_client, only: [] do
+ post :reset_token
+ end
+ resources :feature_flags_user_lists, param: :iid, only: [:new, :edit, :show]
+
+ get '/schema/:branch/*filename',
+ to: 'web_ide_schemas#show',
+ format: false,
+ as: :schema
end
# End of the /-/ scope.
@@ -564,3 +580,37 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do
# rubocop: enable Cop/PutProjectRoutesUnderScope
end
end
+
+# It's under /-/jira scope but cop is only checking /-/
+# rubocop: disable Cop/PutProjectRoutesUnderScope
+scope path: '(/-/jira)', constraints: ::Constraints::JiraEncodedUrlConstrainer.new, as: :jira do
+ scope path: '*namespace_id/:project_id',
+ namespace_id: Gitlab::Jira::Dvcs::ENCODED_ROUTE_REGEX,
+ project_id: Gitlab::Jira::Dvcs::ENCODED_ROUTE_REGEX do
+ get '/', to: redirect { |params, req|
+ ::Gitlab::Jira::Dvcs.restore_full_path(
+ namespace: params[:namespace_id],
+ project: params[:project_id]
+ )
+ }
+
+ get 'commit/:id', constraints: { id: /\h{7,40}/ }, to: redirect { |params, req|
+ project_full_path = ::Gitlab::Jira::Dvcs.restore_full_path(
+ namespace: params[:namespace_id],
+ project: params[:project_id]
+ )
+
+ "/#{project_full_path}/commit/#{params[:id]}"
+ }
+
+ get 'tree/*id', as: nil, to: redirect { |params, req|
+ project_full_path = ::Gitlab::Jira::Dvcs.restore_full_path(
+ namespace: params[:namespace_id],
+ project: params[:project_id]
+ )
+
+ "/#{project_full_path}/-/tree/#{params[:id]}"
+ }
+ end
+end
+# rubocop: enable Cop/PutProjectRoutesUnderScope
diff --git a/config/routes/user.rb b/config/routes/user.rb
index c7a5a56d9ed..63329277e33 100644
--- a/config/routes/user.rb
+++ b/config/routes/user.rb
@@ -55,7 +55,7 @@ end
constraints(::Constraints::UserUrlConstrainer.new) do
# Get all keys of user
- get ':username.keys', controller: :users, action: :ssh_keys, constraints: { username: Gitlab::PathRegex.root_namespace_route_regex }
+ get ':username.keys' => 'profiles/keys#get_keys', constraints: { username: Gitlab::PathRegex.root_namespace_route_regex }
scope(path: ':username',
as: :user,
diff --git a/config/sidekiq_queues.yml b/config/sidekiq_queues.yml
index cda830de8f6..823ec2eddb3 100644
--- a/config/sidekiq_queues.yml
+++ b/config/sidekiq_queues.yml
@@ -30,6 +30,8 @@
- 1
- - analytics_code_review_metrics
- 1
+- - analytics_instance_statistics_counter_job
+ - 1
- - authorized_keys
- 2
- - authorized_project_update
@@ -138,6 +140,10 @@
- 2
- - irker
- 1
+- - issue_placement
+ - 2
+- - issue_rebalancing
+ - 1
- - jira_connect
- 1
- - jira_importer
@@ -150,8 +156,12 @@
- 2
- - merge
- 5
+- - merge_request_cleanup_refs
+ - 1
- - merge_request_mergeability_check
- 1
+- - merge_request_reset_approvals
+ - 1
- - metrics_dashboard_prune_old_annotations
- 1
- - migrate_external_diffs
@@ -178,6 +188,10 @@
- 1
- - pages_domain_verification
- 1
+- - pages_remove
+ - 1
+- - pages_transfer
+ - 1
- - pages_update_configuration
- 1
- - personal_access_tokens
diff --git a/config/spring.rb b/config/spring.rb
index c9119b40c08..0092d0fd1b0 100644
--- a/config/spring.rb
+++ b/config/spring.rb
@@ -4,3 +4,13 @@
tmp/restart.txt
tmp/caching-dev.txt
).each { |path| Spring.watch(path) }
+
+Spring.after_fork do
+ if ENV['DEBUGGER_STORED_RUBYLIB']
+ ENV['DEBUGGER_STORED_RUBYLIB'].split(File::PATH_SEPARATOR).each do |path|
+ next unless path =~ /ruby-debug-ide/
+
+ load path + '/ruby-debug-ide/multiprocess/starter.rb'
+ end
+ end
+end
diff --git a/config/webpack.config.js b/config/webpack.config.js
index a5b5d0f987d..652ada1d832 100644
--- a/config/webpack.config.js
+++ b/config/webpack.config.js
@@ -79,6 +79,7 @@ function generateEntries() {
const manualEntries = {
default: defaultEntries,
sentry: './sentry/index.js',
+ performance_bar: './performance_bar/index.js',
chrome_84_icon_fix: './lib/chrome_84_icon_fix.js',
};
@@ -327,6 +328,8 @@ module.exports = {
chunks: false,
modules: false,
assets: true,
+ errors: !IS_PRODUCTION,
+ warnings: !IS_PRODUCTION,
});
// tell our rails helper where to find the DLL files
@@ -545,6 +548,7 @@ module.exports = {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Headers': '*',
},
+ contentBase: false,
stats: 'errors-only',
hot: DEV_SERVER_LIVERELOAD,
inline: DEV_SERVER_LIVERELOAD,