diff --git a/.gitlab/ci/setup.gitlab-ci.yml b/.gitlab/ci/setup.gitlab-ci.yml
index 7264d5fdfc6..561e6d2d395 100644
--- a/.gitlab/ci/setup.gitlab-ci.yml
+++ b/.gitlab/ci/setup.gitlab-ci.yml
@@ -136,15 +136,16 @@ detect-tests:
stage: prepare
variables:
RSPEC_TESTS_MAPPING_ENABLED: "true"
+ MAPPING_ARCHIVE: $RSPEC_PACKED_TESTS_MAPPING_PATH
before_script:
- apt update && apt install -y curl
- script:
- source ./scripts/utils.sh
- source ./scripts/rspec_helpers.sh
- install_gitlab_gem
- install_tff_gem
- - retrieve_tests_mapping
+ - retrieve_tests_mapping "$MAPPING_ARCHIVE"
- retrieve_frontend_fixtures_mapping
+ script:
- |
# $FIND_CHANGES_MERGE_REQUEST_IID is defined in as-if-foss.gitlab-ci.yml
if [ -n "$CI_MERGE_REQUEST_IID" ] || [ -n "$FIND_CHANGES_MERGE_REQUEST_IID" ]; then
@@ -182,6 +183,14 @@ detect-tests:
- ${RSPEC_MATCHING_TESTS_PATH}
- ${RSPEC_VIEWS_INCLUDING_PARTIALS_PATH}
+# This job is used for evaluating rspec test mappings created based on coverage strategy
+# See: https://gitlab.com/groups/gitlab-org/quality/analytics/-/epics/13
+detect-tests-alt:
+ extends: detect-tests
+ variables:
+ MAPPING_ARCHIVE: $RSPEC_PACKED_TESTS_MAPPING_ALT_PATH
+ PREDICTIVE_TESTS_STRATEGY: coverage
+
detect-previous-failed-tests:
extends:
- detect-tests
diff --git a/GITALY_SERVER_VERSION b/GITALY_SERVER_VERSION
index 764ab1cea07..346f3ce1323 100644
--- a/GITALY_SERVER_VERSION
+++ b/GITALY_SERVER_VERSION
@@ -1 +1 @@
-64e5702b727ea069f6f987d33cf87264a761e997
+9a811d8cd0a428c6a2a6c7037d0792855d1fd1bc
diff --git a/app/assets/javascripts/environments/environment_details/environment_breadcrumbs.vue b/app/assets/javascripts/environments/environment_details/environment_breadcrumbs.vue
index 3cc4f6ceec3..766cce3be05 100644
--- a/app/assets/javascripts/environments/environment_details/environment_breadcrumbs.vue
+++ b/app/assets/javascripts/environments/environment_details/environment_breadcrumbs.vue
@@ -5,6 +5,13 @@ export default {
components: {
GlBreadcrumb,
},
+ props: {
+ staticBreadcrumbs: {
+ type: Object,
+ required: false,
+ default: () => ({ items: [] }),
+ },
+ },
computed: {
rootRoute() {
const rootName = this.$route.meta.environmentName;
@@ -30,7 +37,7 @@ export default {
if (!this.isLoaded) {
return [];
}
- const breadCrumbs = [this.rootRoute];
+ const breadCrumbs = [...this.staticBreadcrumbs.items, this.rootRoute];
if (!this.isRootRoute) {
breadCrumbs.push(this.logsRoute);
diff --git a/app/assets/javascripts/environments/mount_show.js b/app/assets/javascripts/environments/mount_show.js
index 6be199bce13..d08f4c1771f 100644
--- a/app/assets/javascripts/environments/mount_show.js
+++ b/app/assets/javascripts/environments/mount_show.js
@@ -109,7 +109,7 @@ export const initPage = async () => {
},
});
- injectVueAppBreadcrumbs(router, EnvironmentBreadcrumbs);
+ injectVueAppBreadcrumbs(router, EnvironmentBreadcrumbs, null, {}, { singleNavOptIn: true });
return new Vue({
el,
diff --git a/app/services/packages/nuget/update_package_from_metadata_service.rb b/app/services/packages/nuget/update_package_from_metadata_service.rb
index 6427051b5f1..4c064616056 100644
--- a/app/services/packages/nuget/update_package_from_metadata_service.rb
+++ b/app/services/packages/nuget/update_package_from_metadata_service.rb
@@ -13,7 +13,10 @@ module Packages
INVALID_METADATA_ERROR_SYMBOL_MESSAGE = 'package name, version and/or description not found in metadata'
MISSING_MATCHING_PACKAGE_ERROR_MESSAGE = 'symbol package is invalid, matching package does not exist'
- InvalidMetadataError = ZipError = DuplicatePackageError = ProtectedPackageError = Class.new(StandardError)
+ DuplicatePackageError = Class.new(StandardError)
+ InvalidMetadataError = Class.new(StandardError)
+ ProtectedPackageError = Class.new(StandardError)
+ ZipError = Class.new(StandardError)
def initialize(package_file, package_zip_file)
@package_file = package_file
diff --git a/config/feature_flags/wip/virtual_registry_maven.yml b/config/feature_flags/wip/virtual_registry_maven.yml
deleted file mode 100644
index fb8b77ec954..00000000000
--- a/config/feature_flags/wip/virtual_registry_maven.yml
+++ /dev/null
@@ -1,9 +0,0 @@
----
-name: virtual_registry_maven
-feature_issue_url: https://gitlab.com/groups/gitlab-org/-/epics/14137
-introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160891
-rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/474863
-milestone: '17.3'
-group: group::package registry
-type: wip
-default_enabled: false
diff --git a/db/docs/batched_background_migrations/backfill_description_versions_namespace.yml b/db/docs/batched_background_migrations/backfill_description_versions_namespace.yml
index 099af87858c..31234db4ccd 100644
--- a/db/docs/batched_background_migrations/backfill_description_versions_namespace.yml
+++ b/db/docs/batched_background_migrations/backfill_description_versions_namespace.yml
@@ -5,4 +5,4 @@ feature_category: team_planning
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/183903
milestone: '17.11'
queued_migration_version: 20250317222744
-finalized_by: # version of the migration that finalized this BBM
+finalized_by: 20250519120927
diff --git a/db/docs/description_versions.yml b/db/docs/description_versions.yml
index 6af8b7eed70..1aec7b4c3c2 100644
--- a/db/docs/description_versions.yml
+++ b/db/docs/description_versions.yml
@@ -7,6 +7,7 @@ feature_categories:
description: The diff of the change when an edit is made to an Issue, MR or Epic description
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/17147
milestone: '12.4'
-gitlab_schema: gitlab_main
-sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/514600
+gitlab_schema: gitlab_main_cell
+sharding_key:
+ namespace_id: namespaces
table_size: over_limit
diff --git a/db/migrate/20250514054305_add_status_widget_definition_to_issues.rb b/db/migrate/20250514054305_add_status_widget_definition_to_issues.rb
new file mode 100644
index 00000000000..547b5f0cebc
--- /dev/null
+++ b/db/migrate/20250514054305_add_status_widget_definition_to_issues.rb
@@ -0,0 +1,25 @@
+# frozen_string_literal: true
+
+class AddStatusWidgetDefinitionToIssues < Gitlab::Database::Migration[2.3]
+ include Gitlab::Database::MigrationHelpers::WorkItems::Widgets
+
+ restrict_gitlab_migration gitlab_schema: :gitlab_main
+ disable_ddl_transaction!
+ milestone '18.1'
+
+ WORK_ITEM_TYPE_ENUM_VALUES = [0] # issues
+ WIDGETS = [
+ {
+ name: 'Status',
+ widget_type: 26
+ }
+ ]
+
+ def up
+ add_widget_definitions(type_enum_values: WORK_ITEM_TYPE_ENUM_VALUES, widgets: WIDGETS)
+ end
+
+ def down
+ remove_widget_definitions(type_enum_values: WORK_ITEM_TYPE_ENUM_VALUES, widgets: WIDGETS)
+ end
+end
diff --git a/db/post_migrate/20250519120927_finalize_backfill_description_versions_namespace.rb b/db/post_migrate/20250519120927_finalize_backfill_description_versions_namespace.rb
new file mode 100644
index 00000000000..00b1db72be7
--- /dev/null
+++ b/db/post_migrate/20250519120927_finalize_backfill_description_versions_namespace.rb
@@ -0,0 +1,23 @@
+# frozen_string_literal: true
+
+class FinalizeBackfillDescriptionVersionsNamespace < Gitlab::Database::Migration[2.3]
+ MIGRATION = "BackfillDescriptionVersionsNamespace"
+
+ disable_ddl_transaction!
+ restrict_gitlab_migration gitlab_schema: :gitlab_main
+ milestone '18.1'
+
+ def up
+ ensure_batched_background_migration_is_finished(
+ job_class_name: MIGRATION,
+ table_name: :description_versions,
+ column_name: :id,
+ job_arguments: [],
+ finalize: true
+ )
+ end
+
+ def down
+ # no-op
+ end
+end
diff --git a/db/post_migrate/20250519121623_add_description_versions_namespace_id_index.rb b/db/post_migrate/20250519121623_add_description_versions_namespace_id_index.rb
new file mode 100644
index 00000000000..c0cb842400e
--- /dev/null
+++ b/db/post_migrate/20250519121623_add_description_versions_namespace_id_index.rb
@@ -0,0 +1,16 @@
+# frozen_string_literal: true
+
+class AddDescriptionVersionsNamespaceIdIndex < Gitlab::Database::Migration[2.3]
+ INDEX_NAME = 'idx_description_versions_on_namespace_id'
+
+ disable_ddl_transaction!
+ milestone '18.1'
+
+ def up
+ add_concurrent_index :description_versions, :namespace_id, name: INDEX_NAME # rubocop:disable Migration/PreventIndexCreation -- Sharding keys are an exception
+ end
+
+ def down
+ remove_concurrent_index_by_name :description_versions, name: INDEX_NAME
+ end
+end
diff --git a/db/post_migrate/20250519122020_validate_description_versions_parent_not_null_constraint.rb b/db/post_migrate/20250519122020_validate_description_versions_parent_not_null_constraint.rb
new file mode 100644
index 00000000000..168fe1b33d9
--- /dev/null
+++ b/db/post_migrate/20250519122020_validate_description_versions_parent_not_null_constraint.rb
@@ -0,0 +1,19 @@
+# frozen_string_literal: true
+
+class ValidateDescriptionVersionsParentNotNullConstraint < Gitlab::Database::Migration[2.3]
+ CONSTRAINT_NAME = 'check_76c1eb7122'
+
+ milestone '18.1'
+
+ def up
+ validate_multi_column_not_null_constraint :description_versions,
+ :issue_id,
+ :merge_request_id,
+ :epic_id,
+ constraint_name: CONSTRAINT_NAME
+ end
+
+ def down
+ # no-op
+ end
+end
diff --git a/db/post_migrate/20250519123127_add_description_versions_namespace_id_foreign_key.rb b/db/post_migrate/20250519123127_add_description_versions_namespace_id_foreign_key.rb
new file mode 100644
index 00000000000..ecde2cf1301
--- /dev/null
+++ b/db/post_migrate/20250519123127_add_description_versions_namespace_id_foreign_key.rb
@@ -0,0 +1,16 @@
+# frozen_string_literal: true
+
+class AddDescriptionVersionsNamespaceIdForeignKey < Gitlab::Database::Migration[2.3]
+ disable_ddl_transaction!
+ milestone '18.1'
+
+ def up
+ add_concurrent_foreign_key :description_versions, :namespaces, column: :namespace_id, reverse_lock_order: true
+ end
+
+ def down
+ with_lock_retries do
+ remove_foreign_key :description_versions, column: :namespace_id
+ end
+ end
+end
diff --git a/db/schema_migrations/20250514054305 b/db/schema_migrations/20250514054305
new file mode 100644
index 00000000000..b3067369bfc
--- /dev/null
+++ b/db/schema_migrations/20250514054305
@@ -0,0 +1 @@
+3c906a2d6678e67796db3f3c747c6292918afb0bf50b2b1e870a8662563221cc
\ No newline at end of file
diff --git a/db/schema_migrations/20250519120927 b/db/schema_migrations/20250519120927
new file mode 100644
index 00000000000..3439ab658f5
--- /dev/null
+++ b/db/schema_migrations/20250519120927
@@ -0,0 +1 @@
+0b2704a6ed7771436a1a7162b4b18c3919d289c1ca8e301bf054a86e5079615f
\ No newline at end of file
diff --git a/db/schema_migrations/20250519121623 b/db/schema_migrations/20250519121623
new file mode 100644
index 00000000000..d7639d5eb13
--- /dev/null
+++ b/db/schema_migrations/20250519121623
@@ -0,0 +1 @@
+8f46177086b14092eee689a654b21f4e3a6e335a5471319910a54a95cbd52efd
\ No newline at end of file
diff --git a/db/schema_migrations/20250519122020 b/db/schema_migrations/20250519122020
new file mode 100644
index 00000000000..de49f2ebb24
--- /dev/null
+++ b/db/schema_migrations/20250519122020
@@ -0,0 +1 @@
+d738c6e86e47f82690f0eff2c5e396ed823cdee50b54459c31169b6be0afb96a
\ No newline at end of file
diff --git a/db/schema_migrations/20250519123127 b/db/schema_migrations/20250519123127
new file mode 100644
index 00000000000..e72f0809b28
--- /dev/null
+++ b/db/schema_migrations/20250519123127
@@ -0,0 +1 @@
+edd0af1ca8b6140920ae6005a640e2df1ca304a7cefd29e6487a98b566a47740
\ No newline at end of file
diff --git a/db/structure.sql b/db/structure.sql
index 7695b2b21f5..a2232eef5e9 100644
--- a/db/structure.sql
+++ b/db/structure.sql
@@ -13545,7 +13545,8 @@ CREATE TABLE description_versions (
epic_id bigint,
description text,
deleted_at timestamp with time zone,
- namespace_id bigint NOT NULL
+ namespace_id bigint NOT NULL,
+ CONSTRAINT check_76c1eb7122 CHECK ((num_nonnulls(epic_id, issue_id, merge_request_id) = 1))
);
CREATE SEQUENCE description_versions_id_seq
@@ -29107,9 +29108,6 @@ ALTER TABLE ONLY project_type_ci_runners
ALTER TABLE lists
ADD CONSTRAINT check_6dadb82d36 CHECK ((num_nonnulls(group_id, project_id) = 1)) NOT VALID;
-ALTER TABLE description_versions
- ADD CONSTRAINT check_76c1eb7122 CHECK ((num_nonnulls(epic_id, issue_id, merge_request_id) = 1)) NOT VALID;
-
ALTER TABLE ONLY group_type_ci_runners
ADD CONSTRAINT check_81b90172a6 UNIQUE (id);
@@ -33139,6 +33137,8 @@ CREATE INDEX idx_dep_proxy_pkgs_settings_enabled_maven_on_project_id ON dependen
CREATE INDEX idx_deployment_clusters_on_cluster_id_and_kubernetes_namespace ON deployment_clusters USING btree (cluster_id, kubernetes_namespace);
+CREATE INDEX idx_description_versions_on_namespace_id ON description_versions USING btree (namespace_id);
+
CREATE INDEX idx_devops_adoption_segments_namespace_end_time ON analytics_devops_adoption_snapshots USING btree (namespace_id, end_time);
CREATE INDEX idx_devops_adoption_segments_namespace_recorded_at ON analytics_devops_adoption_snapshots USING btree (namespace_id, recorded_at);
@@ -43267,6 +43267,9 @@ ALTER TABLE ONLY packages_conan_file_metadata
ALTER TABLE ONLY catalog_resource_versions
ADD CONSTRAINT fk_b670eae96b FOREIGN KEY (catalog_resource_id) REFERENCES catalog_resources(id) ON DELETE CASCADE;
+ALTER TABLE ONLY description_versions
+ ADD CONSTRAINT fk_b688e93ee1 FOREIGN KEY (namespace_id) REFERENCES namespaces(id) ON DELETE CASCADE;
+
ALTER TABLE ONLY bulk_import_entities
ADD CONSTRAINT fk_b69fa2b2df FOREIGN KEY (bulk_import_id) REFERENCES bulk_imports(id) ON DELETE CASCADE;
diff --git a/doc/administration/gitlab_duo_self_hosted/_index.md b/doc/administration/gitlab_duo_self_hosted/_index.md
index cf38bec7e08..671ed49fb15 100644
--- a/doc/administration/gitlab_duo_self_hosted/_index.md
+++ b/doc/administration/gitlab_duo_self_hosted/_index.md
@@ -2,7 +2,7 @@
stage: AI-powered
group: Custom Models
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
-description: Get started with GitLab Duo Self-Hosted.
+description: Host your own AI gateway and language models.
title: GitLab Duo Self-Hosted
---
diff --git a/doc/api/maven_virtual_registries.md b/doc/api/maven_virtual_registries.md
index 1dcb2f2a872..55cc51daef9 100644
--- a/doc/api/maven_virtual_registries.md
+++ b/doc/api/maven_virtual_registries.md
@@ -32,6 +32,8 @@ Use the following endpoints to create and manage Maven virtual registries.
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161615) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -75,6 +77,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161615) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -119,6 +123,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161615) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -160,6 +166,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/189070) in GitLab 18.0 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -192,6 +200,8 @@ If successful, returns a [`200 OK`](rest/troubleshooting.md#status-codes) status
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161615) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -224,6 +234,8 @@ Use the following endpoints to configure and manage upstream Maven registries.
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162019) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -274,6 +286,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162019) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -331,6 +345,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162019) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -375,6 +391,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162019) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -418,6 +436,8 @@ If successful, returns a [`200 OK`](rest/troubleshooting.md#status-codes) status
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186890) in GitLab 18.0 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -448,6 +468,8 @@ If successful, returns a [`200 OK`](rest/troubleshooting.md#status-codes) status
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162019) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -480,6 +502,8 @@ Use the following endpoints to manage cache entries for a Maven virtual registry
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162614) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -532,6 +556,8 @@ Example response:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/162614) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -578,6 +604,8 @@ see [Maven package registry](../user/packages/maven_repository/_index.md). Undoc
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160891) in GitLab 17.3 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -615,6 +643,8 @@ the following response headers:
{{< history >}}
- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163641) in GitLab 17.4 [with a flag](../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
diff --git a/doc/development/documentation/experiment_beta.md b/doc/development/documentation/experiment_beta.md
index 49f043300cd..646fda8966f 100644
--- a/doc/development/documentation/experiment_beta.md
+++ b/doc/development/documentation/experiment_beta.md
@@ -65,7 +65,7 @@ Follow these guidelines when you document GitLab Duo features.
When documenting a GitLab Duo experiment:
-- On the [top-level GitLab Duo page](../../user/gitlab_duo/_index.md#summary-of-gitlab-duo-features):
+- On the [top-level GitLab Duo page](../../user/gitlab_duo/feature_summary.md):
- Add a row to the table.
- Add the feature to an area at the top of the page, near other features that are available
during a similar stage of the software development lifecycle.
@@ -80,7 +80,7 @@ When documenting a GitLab Duo experiment:
When a GitLab Duo experiment moves to beta:
-- On the [top-level GitLab Duo page](../../user/gitlab_duo/_index.md#summary-of-gitlab-duo-features),
+- On the [top-level GitLab Duo page](../../user/gitlab_duo/feature_summary.md),
update the row in the table.
- Make sure you update the history and status values, including any
[add-on information](styleguide/availability_details.md#add-ons).
@@ -92,7 +92,7 @@ When a GitLab Duo experiment moves to beta:
When a GitLab Duo feature becomes generally available:
-- On the [top-level GitLab Duo page](../../user/gitlab_duo/_index.md#summary-of-gitlab-duo-features),
+- On the [top-level GitLab Duo page](../../user/gitlab_duo/feature_summary.md),
update the row in the table.
- Make sure you update the history and status values, including any
[add-on information](styleguide/availability_details.md#add-ons).
diff --git a/doc/subscriptions/subscription-add-ons.md b/doc/subscriptions/subscription-add-ons.md
index 52a8ef6297d..e5289f0ea17 100644
--- a/doc/subscriptions/subscription-add-ons.md
+++ b/doc/subscriptions/subscription-add-ons.md
@@ -26,7 +26,7 @@ and gain deeper insights across your projects.
Three add-ons are available: GitLab Duo Core, Pro, and Enterprise.
Each add-on provides access to
-[a set of GitLab Duo features](../user/gitlab_duo/_index.md#summary-of-gitlab-duo-features).
+[a set of GitLab Duo features](../user/gitlab_duo/feature_summary.md).
## GitLab Duo Core
diff --git a/doc/user/application_security/vulnerabilities/_index.md b/doc/user/application_security/vulnerabilities/_index.md
index 00ba431587f..184db7cc6a8 100644
--- a/doc/user/application_security/vulnerabilities/_index.md
+++ b/doc/user/application_security/vulnerabilities/_index.md
@@ -65,6 +65,8 @@ GitLab can help you with a vulnerability by using a large language model to:
- Help developers and security analysts to understand the vulnerability, how it could be exploited, and how to fix it.
- Provide a suggested mitigation.
+ [Watch an overview](https://www.youtube.com/watch?v=MMVFvGrmMzw&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
+
### Vulnerability Explanation
Explain a vulnerability with GitLab Duo Vulnerability Explanation. Use the explanation to better
@@ -137,6 +139,8 @@ You should always review the proposed change before merging it. When reviewing,
- Your application's existing functionality is preserved.
- The vulnerability is resolved in accordance with your organization's standards.
+ [Watch an overview](https://www.youtube.com/watch?v=VJmsw_C125E&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
+
Prerequisites:
- You must have the GitLab Ultimate subscription tier and GitLab Duo Enterprise.
diff --git a/doc/user/discussions/_index.md b/doc/user/discussions/_index.md
index f6702b836f1..4160dbd9436 100644
--- a/doc/user/discussions/_index.md
+++ b/doc/user/discussions/_index.md
@@ -386,6 +386,9 @@ such as:
Generate a summary of discussions on an issue.
+ [Watch an overview](https://www.youtube.com/watch?v=IcdxLfTIUgc)
+
+
Prerequisites:
- You must have permission to view the issue.
diff --git a/doc/user/get_started/getting_started_gitlab_duo.md b/doc/user/get_started/getting_started_gitlab_duo.md
index dc5abdb66a9..e2796a09c7a 100644
--- a/doc/user/get_started/getting_started_gitlab_duo.md
+++ b/doc/user/get_started/getting_started_gitlab_duo.md
@@ -28,7 +28,7 @@ can check the health of the installation.
For more information, see:
-- [GitLab Duo features by add-on](../gitlab_duo/_index.md#summary-of-gitlab-duo-features).
+- [GitLab Duo features by add-on](../gitlab_duo/feature_summary.md).
- [How to purchase an add-on](../../subscriptions/subscription-add-ons.md).
- [GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md).
- [Health check details](../gitlab_duo/setup.md#run-a-health-check-for-gitlab-duo).
diff --git a/doc/user/gitlab_duo/_index.md b/doc/user/gitlab_duo/_index.md
index dcb49230799..aa3e2f84ee3 100644
--- a/doc/user/gitlab_duo/_index.md
+++ b/doc/user/gitlab_duo/_index.md
@@ -20,140 +20,10 @@ These features aim to help increase velocity and solve key pain points across th
GitLab Duo features are available in [IDE extensions](../../editor_extensions/_index.md) and the GitLab UI.
Some features are also available as part of [GitLab Duo Chat](../gitlab_duo_chat_examples.md).
-- [Get started with GitLab Duo](../get_started/getting_started_gitlab_duo.md).
-- [View a walkthrough of GitLab Duo Enterprise features](https://gitlab.navattic.com/duo-enterprise).
+{{< walkthrough data="duo-walkthrough" >}}
-## GitLab Duo language models
+- [View list of all GitLab Duo features](feature_summary.md)
+- [Set up GitLab Duo on Self-Managed GitLab](setup.md)
+- [Use your own models with GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md)
-The language models that are the source for GitLab Duo depend on where you're using it.
-
-- On GitLab.com: GitLab hosts the models and connects to them through the cloud-based AI gateway.
-- On GitLab Self-Managed, two options exist:
-
- - **GitLab** can [host the models and the cloud-based AI gateway](setup.md).
- - **Your organization** can [use GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md),
- which means you host the AI gateway and language models. You can use GitLab AI vendor models
- or the other supported language models.
- [Watch overview](https://youtu.be/TQoO3sFnb28?si=w_gFAYLYIzPEbhEl)
-
-
-## Working across the entire software development lifecycle
-
-To improve your workflow across the entire software development lifecycle, try these features:
-
-- [GitLab Duo Chat](../gitlab_duo_chat/_index.md): Write and understand code, get up to speed on the status of projects,
- and learn about GitLab by asking your questions in a chat window.
- [Watch overview](https://www.youtube.com/watch?v=ZQBAuf-CTAY)
-
-- [GitLab Duo Workflow](../duo_workflow/_index.md): Automate tasks and help increase productivity in your development workflow.
-- [AI Impact Dashboard](../analytics/ai_impact_analytics.md): Measure the AI effectiveness and impact on SDLC metrics.
-
-## Planning work
-
-To improve your workflow while planning work, try these features:
-
-- [Issue Description Generation](../project/issues/managing_issues.md#populate-an-issue-with-issue-description-generation): Generate a more in-depth issue description based on a short summary.
- [Watch overview](https://www.youtube.com/watch?v=-BWBQat7p5M)
-
-- [Discussion Summary](../discussions/_index.md#summarize-issue-discussions-with-duo-chat): Summarize lengthy conversations in an issue.
- [Watch overview](https://www.youtube.com/watch?v=IcdxLfTIUgc)
-
-
-## Authoring code
-
-To improve your workflow while authoring code, try these features:
-
-- [Code Suggestions](../project/repository/code_suggestions/_index.md): Generate code and show suggestions as you type.
- [Watch overview](https://youtu.be/ds7SG1wgcVM)
-- Code Explanation: Have code explained. View docs for explaining code in:
-
- - [The IDE](../gitlab_duo_chat/examples.md#explain-selected-code).
- - [A file](../project/repository/code_explain.md).
- - [A merge request](../project/merge_requests/changes.md#explain-code-in-a-merge-request).
- - [Watch overview](https://youtu.be/1izKaLmmaCA?si=O2HDokLLujRro_3O)
-
-- [Test Generation](../gitlab_duo_chat/examples.md#write-tests-in-the-ide): Test your code by generating tests.
- [Watch overview](https://www.youtube.com/watch?v=zWhwuixUkYU)
-- [Refactor Code](../gitlab_duo_chat/examples.md#refactor-code-in-the-ide): Improve or refactor the selected code.
- [Watch overview](https://youtu.be/oxziu7_mWVk?si=fS2JUO-8doARS169)
-- [Fix Code](../gitlab_duo_chat/examples.md#fix-code-in-the-ide): Fix quality problems, like bugs or typos, in the selected code.
-- [GitLab Duo for the CLI](../../editor_extensions/gitlab_cli/_index.md#gitlab-duo-for-the-cli): Discover or recall `git` commands.
-
-## Reviewing code
-
-To improve your workflow while reviewing code in merge requests, try these features:
-
-- [Merge Request Summary](../project/merge_requests/duo_in_merge_requests.md#generate-a-description-by-summarizing-code-changes): Generate a description based on the code changes.
- [Watch overview](https://www.youtube.com/watch?v=CKjkVsfyFd8&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
-- [Code Review](../project/merge_requests/duo_in_merge_requests.md#have-gitlab-duo-review-your-code): Review proposed code changes.
-- [Code Review Summary](../project/merge_requests/duo_in_merge_requests.md#summarize-a-code-review): Summarize all the comments in a review.
- [Watch overview](https://www.youtube.com/watch?v=Bx6Zajyuy9k)
-- [Merge Commit Message Generation](../project/merge_requests/duo_in_merge_requests.md#generate-a-merge-commit-message): Generate commit messages.
- [Watch overview](https://www.youtube.com/watch?v=fUHPNT4uByQ)
-
-## Testing and deploying code
-
-To improve your testing and deployment workflow, try these features:
-
-- [Root Cause Analysis](../gitlab_duo_chat/examples.md#troubleshoot-failed-cicd-jobs-with-root-cause-analysis): Research the root cause for a CI/CD job failure by analyzing the logs.
- [Watch overview](https://www.youtube.com/watch?v=MLjhVbMjFAY&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
-
-## Securing code
-
-To improve your security, try these features:
-
-- [Vulnerability Explanation](../application_security/vulnerabilities/_index.md#explaining-a-vulnerability): Learn more about vulnerabilities, how they can be exploited, and how to fix them.
- [Watch overview](https://www.youtube.com/watch?v=MMVFvGrmMzw&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
-- [Vulnerability Resolution](../application_security/vulnerabilities/_index.md#vulnerability-resolution): Generate a merge request that addresses a vulnerability.
- [Watch overview](https://www.youtube.com/watch?v=VJmsw_C125E&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
-
-## Summary of GitLab Duo features
-
-The following features are generally available on GitLab.com, GitLab Self-Managed, and GitLab Dedicated.
-
-They require a Premium or Ultimate subscription and one of the available add-ons.
-
-| Feature | GitLab Duo Core | GitLab Duo Pro | GitLab Duo Enterprise |
-|---------|----------|---------|----------------|
-| [Code Suggestions](../project/repository/code_suggestions/_index.md) | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [GitLab Duo Chat](../gitlab_duo_chat/_index.md) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Code Explanation](../gitlab_duo_chat/examples.md#explain-selected-code) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Refactor Code](../gitlab_duo_chat/examples.md#refactor-code-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Fix Code](../gitlab_duo_chat/examples.md#fix-code-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Test Generation](../gitlab_duo_chat/examples.md#write-tests-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [GitLab Duo Chat](../gitlab_duo_chat/_index.md) in GitLab UI | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Code Explanation](../project/repository/code_explain.md) in GitLab UI | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
-| [Discussion Summary](../discussions/_index.md#summarize-issue-discussions-with-duo-chat) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [GitLab Duo for the CLI](../../editor_extensions/gitlab_cli/_index.md#gitlab-duo-for-the-cli) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [Merge Commit Message Generation](../project/merge_requests/duo_in_merge_requests.md#generate-a-merge-commit-message) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [Root Cause Analysis](../gitlab_duo_chat/examples.md#troubleshoot-failed-cicd-jobs-with-root-cause-analysis) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [Vulnerability Explanation](../application_security/vulnerabilities/_index.md#explaining-a-vulnerability) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [Vulnerability Resolution](../application_security/vulnerabilities/_index.md#vulnerability-resolution) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-| [AI Impact Dashboard](../analytics/ai_impact_analytics.md) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
-
-### Features available in GitLab Duo Self-Hosted
-
-Your organization can use [GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md)
-to self-host the AI gateway and language models if you:
-
-- Have the GitLab Duo Enterprise add-on.
-- Are a GitLab Self-Managed customer.
-
-To check which GitLab Duo features are available for use with GitLab Duo Self-Hosted,
-and the status of those features, see the
-[supported GitLab Duo features for GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md#supported-gitlab-duo-features).
-
-### Beta and experimental features
-
-The following features are not generally available.
-
-They require a Premium or Ultimate subscription and one of the available add-ons.
-
-| Feature | GitLab Duo Core | GitLab Duo Pro | GitLab Duo Enterprise | GitLab.com | GitLab Self-Managed | GitLab Dedicated | GitLab Duo Self-Hosted |
-|---------|----------|---------|----------------|-----------|-------------|-----------|------------------------|
-| [Code Review Summary](../project/merge_requests/duo_in_merge_requests.md#summarize-a-code-review) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Experiment | Experiment | {{< icon name="dash-circle" >}} No | Experiment |
-| [Issue Description Generation](../project/issues/managing_issues.md#populate-an-issue-with-issue-description-generation) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Experiment | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | N/A |
-| [Code Review](../project/merge_requests/duo_in_merge_requests.md#have-gitlab-duo-review-your-code) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Beta | Beta | Beta | N/A |
-| [Merge Request Summary](../project/merge_requests/duo_in_merge_requests.md#generate-a-description-by-summarizing-code-changes) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Beta | Beta | {{< icon name="dash-circle" >}} No | Beta |
-
-[GitLab Duo Workflow](../duo_workflow/_index.md) is in private beta, does not require an add-on, and is not supported for GitLab Duo Self-Hosted.
+{{< /walkthrough >}}
diff --git a/doc/user/gitlab_duo/feature_summary.md b/doc/user/gitlab_duo/feature_summary.md
new file mode 100644
index 00000000000..357c9652036
--- /dev/null
+++ b/doc/user/gitlab_duo/feature_summary.md
@@ -0,0 +1,50 @@
+---
+stage: AI-powered
+group: AI Framework
+info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
+description: AI-native features and functionality.
+title: Summary of GitLab Duo features
+---
+
+The following features are generally available on GitLab.com, GitLab Self-Managed, and GitLab Dedicated.
+
+They require a Premium or Ultimate subscription and one of the available add-ons.
+
+| Feature | GitLab Duo Core | GitLab Duo Pro | GitLab Duo Enterprise |
+|---------|----------|---------|----------------|
+| [Code Suggestions](../project/repository/code_suggestions/_index.md) | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [GitLab Duo Chat](../gitlab_duo_chat/_index.md) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Code Explanation](../gitlab_duo_chat/examples.md#explain-selected-code) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Refactor Code](../gitlab_duo_chat/examples.md#refactor-code-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Fix Code](../gitlab_duo_chat/examples.md#fix-code-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Test Generation](../gitlab_duo_chat/examples.md#write-tests-in-the-ide) in IDEs | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [GitLab Duo Chat](../gitlab_duo_chat/_index.md) in GitLab UI | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Code Explanation](../project/repository/code_explain.md) in GitLab UI | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | {{< icon name="check-circle-filled" >}} Yes |
+| [Discussion Summary](../discussions/_index.md#summarize-issue-discussions-with-duo-chat) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [GitLab Duo for the CLI](../../editor_extensions/gitlab_cli/_index.md#gitlab-duo-for-the-cli) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [Merge Commit Message Generation](../project/merge_requests/duo_in_merge_requests.md#generate-a-merge-commit-message) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [Root Cause Analysis](../gitlab_duo_chat/examples.md#troubleshoot-failed-cicd-jobs-with-root-cause-analysis) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [Vulnerability Explanation](../application_security/vulnerabilities/_index.md#explaining-a-vulnerability) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [Vulnerability Resolution](../application_security/vulnerabilities/_index.md#vulnerability-resolution) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+| [AI Impact Dashboard](../analytics/ai_impact_analytics.md) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes |
+
+In addition:
+
+- All GitLab Duo Core and Pro features include generally available support for
+ [GitLab Duo Self-Hosted](../../administration/gitlab_duo_self_hosted/_index.md).
+- All GitLab Duo Enterprise-only features include beta support for GitLab Duo Self-Hosted.
+
+## Beta and experimental features
+
+The following features are not generally available.
+
+They require a Premium or Ultimate subscription and one of the available add-ons.
+
+| Feature | GitLab Duo Core | GitLab Duo Pro | GitLab Duo Enterprise | GitLab.com | GitLab Self-Managed | GitLab Dedicated | GitLab Duo Self-Hosted |
+|---------|----------|---------|----------------|-----------|-------------|-----------|------------------------|
+| [Code Review Summary](../project/merge_requests/duo_in_merge_requests.md#summarize-a-code-review) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Experiment | Experiment | {{< icon name="dash-circle" >}} No | Experiment |
+| [Issue Description Generation](../project/issues/managing_issues.md#populate-an-issue-with-issue-description-generation) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Experiment | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | N/A |
+| [Code Review](../project/merge_requests/duo_in_merge_requests.md#have-gitlab-duo-review-your-code) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Beta | Beta | Beta | N/A |
+| [Merge Request Summary](../project/merge_requests/duo_in_merge_requests.md#generate-a-description-by-summarizing-code-changes) | {{< icon name="dash-circle" >}} No | {{< icon name="dash-circle" >}} No | {{< icon name="check-circle-filled" >}} Yes | Beta | Beta | {{< icon name="dash-circle" >}} No | Beta |
+
+[GitLab Duo Workflow](../duo_workflow/_index.md) is in private beta, does not require an add-on, and is not supported for GitLab Duo Self-Hosted.
diff --git a/doc/user/gitlab_duo/setup.md b/doc/user/gitlab_duo/setup.md
index 509dc53b47b..cbbe157b358 100644
--- a/doc/user/gitlab_duo/setup.md
+++ b/doc/user/gitlab_duo/setup.md
@@ -2,6 +2,7 @@
stage: AI-powered
group: AI Framework
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
+description: Ensure GitLab Duo is configured and operating correctly.
title: Configure GitLab Duo on a GitLab Self-Managed instance
gitlab_dedicated: no
---
diff --git a/doc/user/gitlab_duo_chat/_index.md b/doc/user/gitlab_duo_chat/_index.md
index acfd42147fb..eccad5dbbaf 100644
--- a/doc/user/gitlab_duo_chat/_index.md
+++ b/doc/user/gitlab_duo_chat/_index.md
@@ -35,6 +35,9 @@ contextual, conversational AI. Chat:
- Integrates directly in the GitLab UI, Web IDE, VS Code, JetBrains IDEs, and Visual Studio.
- Can include information from your repositories and projects to deliver targeted improvements.
+ [Watch an overview](https://www.youtube.com/watch?v=ZQBAuf-CTAY)
+
+
## Supported editor extensions
You can use GitLab Duo Chat in:
diff --git a/doc/user/gitlab_duo_chat/examples.md b/doc/user/gitlab_duo_chat/examples.md
index 586aa20c9de..320741a93db 100644
--- a/doc/user/gitlab_duo_chat/examples.md
+++ b/doc/user/gitlab_duo_chat/examples.md
@@ -451,8 +451,11 @@ You can include additional instructions to be considered. For example:
- Focus on performance, for example `/refactor improving performance`.
- Focus on potential vulnerabilities, for example `/refactor avoiding memory leaks and exploits`.
-For more information, see [Application modernization with GitLab Duo (C++ to Java)](https://youtu.be/FjoAmt5eeXA?si=SLv9Mv8eSUAVwW5Z).
+For more information, see:
+
+- [Application modernization with GitLab Duo (C++ to Java)](https://youtu.be/FjoAmt5eeXA?si=SLv9Mv8eSUAVwW5Z).
+- [Watch an overview](https://youtu.be/oxziu7_mWVk?si=fS2JUO-8doARS169)
## Fix code in the IDE
@@ -526,6 +529,8 @@ You can include additional instructions to be considered. For example:
For more information, see [Use GitLab Duo Chat in VS Code](_index.md#use-gitlab-duo-chat-in-vs-code).
+ [Watch an overview](https://www.youtube.com/watch?v=zWhwuixUkYU)
+
## Ask about CI/CD
{{< details >}}
@@ -593,6 +598,8 @@ It analyzes the last 100,000 characters of the job log to determine the cause of
You can access this feature either from the **Pipelines** tab in merge requests or directly from the job log.
+ [Watch overview](https://www.youtube.com/watch?v=MLjhVbMjFAY&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
+
Root Cause Analysis does not support:
- Trigger jobs
diff --git a/doc/user/group/issues_analytics/_index.md b/doc/user/group/issues_analytics/_index.md
index 5c81b20cd99..44bc1f0c005 100644
--- a/doc/user/group/issues_analytics/_index.md
+++ b/doc/user/group/issues_analytics/_index.md
@@ -68,3 +68,5 @@ You can also access issue analytics from the [Value Streams Dashboard](../../ana
Enhanced issue analytics display the additional metric `Issues closed`, which represents the total number of resolved issues in your group over a selected period.
You can use this metric to improve the overall turn-around time and value delivered to your customers.
+
+
diff --git a/doc/user/group/issues_analytics/img/enhanced_issue_analytics_v17_8.png b/doc/user/group/issues_analytics/img/enhanced_issue_analytics_v17_8.png
new file mode 100644
index 00000000000..454ed8528c7
Binary files /dev/null and b/doc/user/group/issues_analytics/img/enhanced_issue_analytics_v17_8.png differ
diff --git a/doc/user/group/issues_analytics/img/issue_analytics_v17_8.png b/doc/user/group/issues_analytics/img/issue_analytics_v17_8.png
index 454ed8528c7..9e9fdbd66e3 100644
Binary files a/doc/user/group/issues_analytics/img/issue_analytics_v17_8.png and b/doc/user/group/issues_analytics/img/issue_analytics_v17_8.png differ
diff --git a/doc/user/packages/virtual_registry/_index.md b/doc/user/packages/virtual_registry/_index.md
index d2f19080ddc..64649b58506 100644
--- a/doc/user/packages/virtual_registry/_index.md
+++ b/doc/user/packages/virtual_registry/_index.md
@@ -9,13 +9,15 @@ title: Virtual registry
- Tier: Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed
-- Status: Experiment
+- Status: Beta
{{< /details >}}
{{< history >}}
- [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/14137) in GitLab 18.0 [with a flag](../../../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -23,7 +25,7 @@ title: Virtual registry
The availability of this feature is controlled by a feature flag.
For more information, see the history.
-This feature is available in [experiment](../../../policy/development_stages_support.md#experiment).
+This feature is available in [beta](../../../policy/development_stages_support.md#beta).
Review the documentation carefully before you use this feature.
{{< /alert >}}
diff --git a/doc/user/packages/virtual_registry/maven/_index.md b/doc/user/packages/virtual_registry/maven/_index.md
index b2799e7d034..ec73b406eaa 100644
--- a/doc/user/packages/virtual_registry/maven/_index.md
+++ b/doc/user/packages/virtual_registry/maven/_index.md
@@ -9,13 +9,15 @@ title: Maven virtual registry
- Tier: Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed
-- Status: Experiment
+- Status: Beta
{{< /details >}}
{{< history >}}
- [Introduced](https://gitlab.com/groups/gitlab-org/-/epics/14137) in GitLab 18.0 [with a flag](../../../../administration/feature_flags.md) named `virtual_registry_maven`. Disabled by default.
+- Feature flag [renamed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) to `maven_virtual_registry` in GitLab 18.1.
+- [Changed](https://gitlab.com/gitlab-org/gitlab/-/issues/540276) from experiment to beta in GitLab 18.1.
{{< /history >}}
@@ -23,7 +25,7 @@ title: Maven virtual registry
The availability of this feature is controlled by a feature flag.
For more information, see the history.
-This feature is available in [experiment](../../../../policy/development_stages_support.md#experiment).
+This feature is available in [beta](../../../../policy/development_stages_support.md#beta).
Review the documentation carefully before you use this feature.
{{< /alert >}}
diff --git a/doc/user/project/issues/managing_issues.md b/doc/user/project/issues/managing_issues.md
index 13b5ee0000f..982231a7f5a 100644
--- a/doc/user/project/issues/managing_issues.md
+++ b/doc/user/project/issues/managing_issues.md
@@ -64,6 +64,9 @@ To edit an issue:
Generate a detailed description for an issue based on a short summary you provide.
+ [Watch an overview](https://www.youtube.com/watch?v=-BWBQat7p5M)
+
+
Prerequisites:
- You must belong to at least one group with the [experiment and beta features setting](../../gitlab_duo/turn_on_off.md#turn-on-beta-and-experimental-features) enabled.
diff --git a/doc/user/project/merge_requests/changes.md b/doc/user/project/merge_requests/changes.md
index 900dd189102..ca68352e127 100644
--- a/doc/user/project/merge_requests/changes.md
+++ b/doc/user/project/merge_requests/changes.md
@@ -267,6 +267,9 @@ If you spend a lot of time trying to understand code that others have created, o
you struggle to understand code written in a language you are not familiar with,
you can ask GitLab Duo to explain the code to you.
+- [Watch an overview](https://youtu.be/1izKaLmmaCA?si=O2HDokLLujRro_3O)
+
+
Prerequisites:
- You must belong to at least one group with the
diff --git a/doc/user/project/merge_requests/duo_in_merge_requests.md b/doc/user/project/merge_requests/duo_in_merge_requests.md
index f364565e191..1f094e173bd 100644
--- a/doc/user/project/merge_requests/duo_in_merge_requests.md
+++ b/doc/user/project/merge_requests/duo_in_merge_requests.md
@@ -43,6 +43,8 @@ to create a merge request description.
The description is inserted where your cursor was.
+ [Watch an overview](https://www.youtube.com/watch?v=CKjkVsfyFd8&list=PLFGfElNsQthZGazU1ZdfDpegu0HflunXW)
+
Provide feedback on this feature in [issue 443236](https://gitlab.com/gitlab-org/gitlab/-/issues/443236).
Data usage: The diff of changes between the source branch's head and the target branch is sent to the large language model.
@@ -156,6 +158,8 @@ When you've completed your review of a merge request and are ready to [submit yo
The summary is displayed in the comment box. You can edit and refine the summary prior to submitting your review.
+ [Watch an overview](https://www.youtube.com/watch?v=Bx6Zajyuy9k)
+
Provide feedback on this experimental feature in [issue 408991](https://gitlab.com/gitlab-org/gitlab/-/issues/408991).
Data usage: When you use this feature, the following data is sent to the large language model referenced above:
@@ -191,6 +195,8 @@ by using GitLab Duo Merge Commit Message Generation.
1. Select **Generate commit message**.
1. Review the commit message provided and choose **Insert** to add it to the commit.
+ [Watch an overview](https://www.youtube.com/watch?v=fUHPNT4uByQ)
+
Data usage: When you use this feature, the following data is sent to the large language model:
- Contents of the file
diff --git a/doc/user/project/repository/code_suggestions/_index.md b/doc/user/project/repository/code_suggestions/_index.md
index 119d072a966..d995bb7f886 100644
--- a/doc/user/project/repository/code_suggestions/_index.md
+++ b/doc/user/project/repository/code_suggestions/_index.md
@@ -35,9 +35,10 @@ title: Code Suggestions
Use GitLab Duo Code Suggestions to write code more efficiently by using generative AI to suggest code while you're developing.
-
-[View a click-through demo](https://gitlab.navattic.com/code-suggestions).
-
+-
+ [View a click-through demo](https://gitlab.navattic.com/code-suggestions).
+
+- [Watch an overview](https://youtu.be/ds7SG1wgcVM)
## Prerequisites
diff --git a/lib/gitlab/database_importers/work_items/base_type_importer.rb b/lib/gitlab/database_importers/work_items/base_type_importer.rb
index ec1b24e0403..a0adab353f9 100644
--- a/lib/gitlab/database_importers/work_items/base_type_importer.rb
+++ b/lib/gitlab/database_importers/work_items/base_type_importer.rb
@@ -60,7 +60,8 @@ module Gitlab
:start_and_due_date,
:time_tracking,
:vulnerabilities,
- [:weight, { editable: true, rollup: false }]
+ [:weight, { editable: true, rollup: false }],
+ :status
],
incident: [
:assignees,
diff --git a/locale/gitlab.pot b/locale/gitlab.pot
index c55abdd2cb6..4ccfe268392 100644
--- a/locale/gitlab.pot
+++ b/locale/gitlab.pot
@@ -35572,6 +35572,9 @@ msgstr ""
msgid "LDAP|Server"
msgstr ""
+msgid "LDAP|Start typing"
+msgstr ""
+
msgid "LDAP|Sync method"
msgstr ""
@@ -35584,6 +35587,9 @@ msgstr ""
msgid "LDAP|User filter"
msgstr ""
+msgid "LDAP|View more information on %{linkStart}user filters%{linkEnd}."
+msgstr ""
+
msgid "LDAP|You can manage permission levels for individual group members in the Members tab."
msgstr ""
diff --git a/qa/knapsack/example_runtimes/master_report.json b/qa/knapsack/example_runtimes/master_report.json
index 4d08ddf54dd..30efd83975c 100644
--- a/qa/knapsack/example_runtimes/master_report.json
+++ b/qa/knapsack/example_runtimes/master_report.json
@@ -1,521 +1,523 @@
{
- "./qa/specs/features/api/10_govern/group_access_token_spec.rb[1:1:1]": 19.622407143,
- "./qa/specs/features/api/10_govern/group_access_token_spec.rb[1:1:2]": 13.367585937,
- "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:1:1]": 17.809082389,
- "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:1:2]": 15.7929937,
- "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:2:1]": 23.979754862,
- "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:2:2]": 18.043521259,
- "./qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb[1:1:1]": 66.806835574,
- "./qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb[1:1:2:1]": 31.16457133,
- "./qa/specs/features/api/12_systems/gitaly/backend_node_recovery_spec.rb[1:1:1]": 99.394917952,
- "./qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb[1:1:1]": 52.596430217,
- "./qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb[1:1:2:1]": 58.606479186,
- "./qa/specs/features/api/12_systems/gitaly/gitaly_mtls_spec.rb[1:1:1]": 23.128792633,
- "./qa/specs/features/api/1_manage/import/import_github_repo_spec.rb[1:1:1:1]": 98.601690677,
- "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:1]": 12.579267718,
- "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:2]": 12.138697134,
- "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:3]": 15.831599416,
- "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:4]": 11.951984228,
- "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:5]": 11.382760942,
- "./qa/specs/features/api/1_manage/migration/gitlab_migration_group_spec.rb[1:1:2:1]": 60.555716827,
- "./qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb[1:1:2:1]": 95.74637414,
- "./qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb[1:1:3:1]": 89.373776451,
- "./qa/specs/features/api/1_manage/migration/gitlab_migration_pipeline_spec.rb[1:1:1:1]": 97.451122042,
- "./qa/specs/features/api/1_manage/migration/gitlab_migration_project_spec.rb[1:1:4:1]": 101.663654195,
- "./qa/specs/features/api/1_manage/rate_limits_spec.rb[1:1:1]": 14.907381728,
- "./qa/specs/features/api/2_plan/closes_issue_via_pushing_a_commit_spec.rb[1:1:1]": 25.755076546,
- "./qa/specs/features/api/3_create/merge_request/push_options_mwps_spec.rb[1:1:1]": 16.82332341,
- "./qa/specs/features/api/3_create/merge_request/push_options_remove_source_branch_spec.rb[1:1:1]": 22.433046338,
- "./qa/specs/features/api/3_create/merge_request/push_options_spec.rb[1:1:1]": 15.885700713,
- "./qa/specs/features/api/3_create/merge_request/push_options_spec.rb[1:1:2]": 23.919461707,
- "./qa/specs/features/api/3_create/merge_request/view_merge_requests_spec.rb[1:1:1:1]": 1.38181908,
- "./qa/specs/features/api/3_create/repository/add_list_delete_branches_spec.rb[1:1:1]": 25.431371545,
- "./qa/specs/features/api/3_create/repository/commit_to_templated_project_spec.rb[1:1:1]": 22.631262867,
- "./qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb[1:1:1]": 10.744866525,
- "./qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb[1:1:2]": 16.048828318,
- "./qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb[1:1:1]": 16.670677201,
- "./qa/specs/features/api/3_create/repository/push_postreceive_idempotent_spec.rb[1:1:1]": 25.454150535,
- "./qa/specs/features/api/3_create/repository/storage_size_spec.rb[1:1:1]": 28.961005929,
- "./qa/specs/features/api/3_create/repository/tag_revision_trigger_prereceive_hook_spec.rb[1:1:1:1:1]": 10.547959073,
- "./qa/specs/features/api/4_verify/api_variable_inheritance_with_forward_pipeline_variables_spec.rb[1:1:1]": 95.84142065,
- "./qa/specs/features/api/4_verify/cancel_pipeline_when_block_user_spec.rb[1:1:1]": 26.575834034,
- "./qa/specs/features/api/4_verify/file_variable_spec.rb[1:1:1]": 38.339438099,
- "./qa/specs/features/api/4_verify/file_variable_spec.rb[1:1:2]": 22.450624381,
- "./qa/specs/features/api/4_verify/job_downloads_artifacts_spec.rb[1:1:1]": 39.828565691,
- "./qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb[1:1:1]": 69.770433031,
- "./qa/specs/features/api/8_monitor/metrics_spec.rb[1:1:2:1]": 3.441019971,
- "./qa/specs/features/api/8_monitor/metrics_spec.rb[1:2:1:1]": 2.555842671,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:1]": 19.348896522,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:2]": 24.170824672,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:3]": 14.626259052,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:1]": 51.001471196,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:2]": 23.674467476,
- "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:3]": 13.010208369,
- "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:1]": 1.336549888,
- "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:2]": 1.366246076,
- "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:3]": 1.184921356,
- "./qa/specs/features/browser_ui/10_govern/group/group_access_token_spec.rb[1:1:1]": 18.955245548,
- "./qa/specs/features/browser_ui/10_govern/login/2fa_recovery_spec.rb[1:1:1]": 51.379482902,
- "./qa/specs/features/browser_ui/10_govern/login/2fa_ssh_recovery_spec.rb[1:1:1]": 63.15838517,
- "./qa/specs/features/browser_ui/10_govern/login/log_in_spec.rb[1:1:1]": 13.427990734,
- "./qa/specs/features/browser_ui/10_govern/login/log_in_with_2fa_spec.rb[1:1:1]": 94.549567111,
- "./qa/specs/features/browser_ui/10_govern/login/log_into_gitlab_via_ldap_spec.rb[1:1:1]": 4.26200593,
- "./qa/specs/features/browser_ui/10_govern/login/log_into_mattermost_via_gitlab_spec.rb[1:1:1]": 30.355360322,
- "./qa/specs/features/browser_ui/10_govern/login/login_via_instance_wide_saml_sso_spec.rb[1:1:1]": 16.78395848,
- "./qa/specs/features/browser_ui/10_govern/login/oauth_login_with_github_spec.rb[1:1:1]": 41.820836674,
- "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:1:1]": 5.349373207,
- "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:1:1:1]": 30.407343205,
- "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:1:2:1]": 11.27543333,
- "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:2:1]": 54.859950452,
- "./qa/specs/features/browser_ui/10_govern/project/project_access_token_spec.rb[1:1:1]": 25.906346348,
- "./qa/specs/features/browser_ui/10_govern/user/impersonation_token_spec.rb[1:1:1]": 30.138602861,
- "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:1]": 17.501210842,
- "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:2]": 14.857275617,
- "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:3]": 11.779740276,
- "./qa/specs/features/browser_ui/14_analytics/performance_bar_spec.rb[1:1:1:1]": 60.04423653,
- "./qa/specs/features/browser_ui/14_analytics/service_ping_default_enabled_spec.rb[1:1:1:1]": 18.762676849,
- "./qa/specs/features/browser_ui/14_analytics/service_ping_disabled_spec.rb[1:1:1:1]": 13.578009866,
- "./qa/specs/features/browser_ui/1_manage/integrations/jenkins/jenkins_build_status_spec.rb[1:1:1]": 61.994387357,
- "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb[1:1:1]": 32.323934519,
- "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb[1:1:2]": 32.903286345,
- "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_issue_import_spec.rb[1:1:1]": 46.776170762,
- "./qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb[1:1:1:1]": 31.463382563,
- "./qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb[1:1:2:1]": 42.321370407,
- "./qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_group_spec.rb[1:1:1]": 57.03791635,
- "./qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_user_contribution_reassignment_spec.rb[1:1:1:1]": 181.520241604,
- "./qa/specs/features/browser_ui/2_plan/design_management/add_design_content_spec.rb[1:1:1]": 23.031130269,
- "./qa/specs/features/browser_ui/2_plan/design_management/archive_design_content_spec.rb[1:1:1]": 29.780177896,
- "./qa/specs/features/browser_ui/2_plan/design_management/modify_design_content_spec.rb[1:1:1]": 30.636613756,
- "./qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb[1:1:1]": 16.470446876,
- "./qa/specs/features/browser_ui/2_plan/issue/collapse_comments_in_discussions_spec.rb[1:1:1]": 23.402340109,
- "./qa/specs/features/browser_ui/2_plan/issue/comment_issue_spec.rb[1:1:1]": 26.608420993,
- "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:1]": 50.166656359,
- "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:2]": 79.755011129,
- "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:3:1]": 19.192317945,
- "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:3]": 41.653582947,
- "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:4:1]": 35.53447155,
- "./qa/specs/features/browser_ui/2_plan/issue/custom_issue_template_spec.rb[1:1:1]": 30.203090855,
- "./qa/specs/features/browser_ui/2_plan/issue/export_as_csv_spec.rb[1:1:1]": 40.13231434,
- "./qa/specs/features/browser_ui/2_plan/issue/filter_issue_comments_spec.rb[1:1:1]": 24.860881753,
- "./qa/specs/features/browser_ui/2_plan/issue/issue_suggestions_spec.rb[1:1:1]": 24.575106282,
- "./qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb[1:1:1]": 33.018544554,
- "./qa/specs/features/browser_ui/2_plan/issue/real_time_assignee_spec.rb[1:1:1]": 26.291870234,
- "./qa/specs/features/browser_ui/2_plan/issue_boards/focus_mode_spec.rb[1:1:1]": 17.561810633,
- "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:1:1:1]": 22.440761271,
- "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:1:2:1]": 31.444776575,
- "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:2:1:1]": 23.178259523,
- "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:2:2:1]": 29.272861013,
- "./qa/specs/features/browser_ui/2_plan/milestone/create_group_milestone_spec.rb[1:1:1]": 22.587552274,
- "./qa/specs/features/browser_ui/2_plan/milestone/create_project_milestone_spec.rb[1:1:1]": 28.049283666,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:1]": 23.12513144,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:2]": 23.443624658,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:3]": 20.226439048,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:4]": 21.256583969,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:5]": 20.823287252,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:1]": 21.090504447,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:2]": 25.64451491,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:3]": 22.684120766,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_directory_management_spec.rb[1:1:1]": 25.037219196,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_file_upload_spec.rb[1:1:1]": 38.413254353,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb[1:1:1:1]": 26.433149641,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb[1:1:2:1]": 44.164948365,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb[1:1:1]": 21.702903312,
- "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb[1:1:2]": 37.389795155,
- "./qa/specs/features/browser_ui/2_plan/related_issues/related_issues_spec.rb[1:1:1]": 24.049024633,
- "./qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb[1:1:1]": 39.380097829,
- "./qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb[1:1:2]": 43.974151901,
- "./qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_a_merge_spec.rb[1:1:1]": 65.769218013,
- "./qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_commit_spec.rb[1:1:1]": 30.017509364,
- "./qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb[1:1:1]": 43.686323806,
- "./qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb[1:1:2]": 48.765681966,
- "./qa/specs/features/browser_ui/3_create/merge_request/merge_merge_request_from_fork_spec.rb[1:1:1]": 46.535589667,
- "./qa/specs/features/browser_ui/3_create/merge_request/merge_request_set_to_auto_merge_spec.rb[1:1:1]": 85.059614424,
- "./qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb[1:1:1]": 58.678788745,
- "./qa/specs/features/browser_ui/3_create/merge_request/revert/revert_commit_spec.rb[1:1:1]": 38.031947034,
- "./qa/specs/features/browser_ui/3_create/merge_request/revert/reverting_merge_request_spec.rb[1:1:1]": 107.744959716,
- "./qa/specs/features/browser_ui/3_create/merge_request/suggestions/batch_suggestion_spec.rb[1:1:1]": 64.079688598,
- "./qa/specs/features/browser_ui/3_create/merge_request/suggestions/custom_commit_suggestion_spec.rb[1:1:1]": 60.464588091,
- "./qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb[1:1:1]": 21.720265151,
- "./qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb[1:1:2]": 25.855064648,
- "./qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb[1:1:1]": 27.119274477,
- "./qa/specs/features/browser_ui/3_create/repository/add_new_branch_rule_spec.rb[1:1:1]": 30.340932638,
- "./qa/specs/features/browser_ui/3_create/repository/branch_with_unusual_name_spec.rb[1:1:1:1]": 24.416460797,
- "./qa/specs/features/browser_ui/3_create/repository/clone_spec.rb[1:1:1]": 12.253554388,
- "./qa/specs/features/browser_ui/3_create/repository/clone_spec.rb[1:1:2]": 13.985884213,
- "./qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb[1:1:1:1:1]": 17.595488997,
- "./qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb[1:1:2:1:1]": 19.611088383,
- "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:1:1:1]": 23.786550765,
- "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:1:2:1]": 24.244541958,
- "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:2:1:1]": 46.403243034,
- "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:2:2:1]": 48.300600979,
- "./qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_http_spec.rb[1:1:1]": 24.264817229,
- "./qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_ssh_spec.rb[1:1:1]": 27.222468229,
- "./qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb[1:1:1]": 49.703005927,
- "./qa/specs/features/browser_ui/3_create/repository/push_mirroring_lfs_over_http_spec.rb[1:1:1]": 84.31200969,
- "./qa/specs/features/browser_ui/3_create/repository/push_mirroring_over_http_spec.rb[1:1:1]": 77.096792386,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb[1:1:1]": 13.776653416,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb[1:1:2]": 40.816066648,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb[1:1:1]": 22.60529955,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb[1:1:2]": 20.738672576,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb[1:1:1]": 54.642597298,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb[1:1:2]": 46.060314047,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb[1:1:1]": 25.32488472,
- "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb[1:1:2]": 31.79158833,
- "./qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb[1:1:1:1]": 22.332861645,
- "./qa/specs/features/browser_ui/3_create/repository/push_to_canary_gitaly_spec.rb[1:1:1]": 21.55505836,
- "./qa/specs/features/browser_ui/3_create/repository/ssh_key_support_create_spec.rb[1:1:1]": 29.287778902,
- "./qa/specs/features/browser_ui/3_create/repository/ssh_key_support_delete_spec.rb[1:1:1]": 26.294830596,
- "./qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb[1:1:1]": 28.096424682,
- "./qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb[1:1:2]": 36.954696155,
- "./qa/specs/features/browser_ui/3_create/snippet/add_comment_to_snippet_spec.rb[1:1:1]": 31.803789523,
- "./qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb[1:1:1:1]": 22.732435543,
- "./qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb[1:1:2:1]": 28.857938419,
- "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb[1:1:1]": 41.646466243,
- "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb[1:1:2]": 42.259416914,
- "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb[1:1:1]": 34.00738778,
- "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb[1:1:2]": 39.034380064,
- "./qa/specs/features/browser_ui/3_create/snippet/copy_snippet_file_contents_spec.rb[1:1:1]": 20.481249541,
- "./qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_spec.rb[1:1:1]": 8.514641421,
- "./qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_with_multiple_files_spec.rb[1:1:1]": 14.67105945,
- "./qa/specs/features/browser_ui/3_create/snippet/create_project_snippet_with_multiple_files_spec.rb[1:1:1]": 28.514565884,
- "./qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb[1:1:1:1]": 24.800377606,
- "./qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb[1:1:2:1]": 22.498173186,
- "./qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb[1:1:1:1]": 18.439951577,
- "./qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb[1:1:2:1]": 15.994065312,
- "./qa/specs/features/browser_ui/3_create/source_editor/source_editor_toolbar_spec.rb[1:1:1]": 25.014898858,
- "./qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb[1:1:1:1]": 18.258995188,
- "./qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb[1:1:2:1]": 24.493929349,
- "./qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb[1:1:1:1]": 32.079918928,
- "./qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb[1:1:2:1]": 52.422319108,
- "./qa/specs/features/browser_ui/3_create/web_ide/closing_web_ide_with_unsaved_changes_spec.rb[1:1:1]": 24.250358427,
- "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:1]": 42.705189816,
- "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:2]": 73.603270276,
- "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:3]": 63.771305875,
- "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:1:1]": 24.875637941,
- "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:2:1:1:1]": 39.190208325,
- "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:2:2:1:1]": 32.586681925,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb[1:1:1:2:1:1]": 40.144422238,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb[1:1:1:2:2:1]": 45.984237128,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb[1:1:1]": 57.608513187,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb[1:1:2]": 64.026260248,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb[1:1:1]": 61.348283947,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb[1:1:2]": 54.955626444,
- "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/run_component_in_project_pipeline_spec.rb[1:1:1]": 55.741715074,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/expose_job_artifacts_in_mr_spec.rb[1:1:1:1]": 66.436168654,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:1:1:1]": 34.296394593,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:1:1:2]": 42.270222608,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:2:1:1]": 43.30799841,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:2:1:2]": 35.855032429,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:3:1:1]": 55.366211572,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:3:1:2]": 49.789661759,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:1:1]": 95.010008224,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:2:1]": 122.191405419,
- "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:3:1]": 102.652732387,
- "./qa/specs/features/browser_ui/4_verify/ci_project_artifacts/user_can_bulk_delete_artifacts_spec.rb[1:1:1:1]": 73.521802689,
- "./qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb[1:1:1]": 56.351348261,
- "./qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb[1:1:2]": 78.367663782,
- "./qa/specs/features/browser_ui/4_verify/ci_variable/raw_variables_defined_in_yaml_spec.rb[1:1:1]": 33.577634151,
- "./qa/specs/features/browser_ui/4_verify/ci_variable/ui_variable_inheritable_when_forward_pipeline_variables_true_spec.rb[1:1:1]": 84.286087112,
- "./qa/specs/features/browser_ui/4_verify/pipeline/include_local_config_file_paths_with_wildcard_spec.rb[1:1:1]": 18.525020519,
- "./qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_a_project_spec.rb[1:1:1]": 54.886224503,
- "./qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_multiple_projects_spec.rb[1:1:1]": 64.229339559,
- "./qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb[1:1:1]": 50.51348336,
- "./qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb[1:1:2]": 62.349308563,
- "./qa/specs/features/browser_ui/4_verify/pipeline/pass_dotenv_variables_to_downstream_via_bridge_spec.rb[1:1:1]": 66.298914071,
- "./qa/specs/features/browser_ui/4_verify/pipeline/run_pipeline_with_manual_jobs_spec.rb[1:1:1]": 66.049358924,
- "./qa/specs/features/browser_ui/4_verify/pipeline/trigger_child_pipeline_with_manual_spec.rb[1:1:1]": 65.493875232,
- "./qa/specs/features/browser_ui/4_verify/pipeline/trigger_matrix_spec.rb[1:1:1]": 50.079680864,
- "./qa/specs/features/browser_ui/4_verify/pipeline/update_ci_file_with_pipeline_editor_spec.rb[1:1:1]": 31.110243067,
- "./qa/specs/features/browser_ui/4_verify/runner/deprecated_registration_token_spec.rb[1:1:1]": 23.618801349,
- "./qa/specs/features/browser_ui/4_verify/runner/deprecated_unregister_runner_spec.rb[1:1:1]": 39.029569115,
- "./qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_counts_spec.rb[1:1:1]": 25.616882657,
- "./qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_status_counts_spec.rb[1:1:1]": 17.609245948,
- "./qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb[1:1:1]": 20.499690898,
- "./qa/specs/features/browser_ui/4_verify/runner/register_project_runner_spec.rb[1:1:1]": 45.242119367,
- "./qa/specs/features/browser_ui/4_verify/runner/unregister_runner_spec.rb[1:1:1]": 26.076009522,
- "./qa/specs/features/browser_ui/4_verify/testing/endpoint_coverage_spec.rb[1:1:1]": 54.246992046,
- "./qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb[1:1:1]": 165.693115559,
- "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:1:1]": 124.356393994,
- "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:2:1]": 114.701792986,
- "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:3:1]": 106.129491691,
- "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:1:1]": 69.52865115,
- "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:2:1]": 49.602179796,
- "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:3:1]": 53.517437091,
- "./qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb[1:1:1]": 67.483790802,
- "./qa/specs/features/browser_ui/5_package/package_registry/conan_repository_spec.rb[1:1:1]": 97.870222592,
- "./qa/specs/features/browser_ui/5_package/package_registry/generic_repository_spec.rb[1:1:1]": 133.504862177,
- "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:1:1]": 173.289269984,
- "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:2:1]": 110.985181329,
- "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:3:1]": 98.038031359,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:1:1]": 112.082186382,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:2:1]": 110.841590599,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:3:1]": 146.348491376,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:2:1:1]": 104.70481313,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:2:2:1]": 117.871862148,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:1:1]": 107.111940846,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:2:1]": 86.909771173,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:3:1]": 91.228397442,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:1:1]": 98.124684211,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:2:1]": 97.381615006,
- "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:3:1]": 108.823092958,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:1:1]": 95.79639735,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:2:1]": 112.479204658,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:3:1]": 126.817852544,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:1:1]": 84.231882051,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:2:1]": 97.197158931,
- "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:3:1]": 103.686551983,
- "./qa/specs/features/browser_ui/5_package/package_registry/pypi_repository_spec.rb[1:1:1:1]": 107.899088585,
- "./qa/specs/features/browser_ui/6_release/deploy_key/add_deploy_key_spec.rb[1:1:1]": 29.988003167,
- "./qa/specs/features/browser_ui/6_release/deploy_key/clone_using_deploy_key_spec.rb[1:1:1]": 75.907162535,
- "./qa/specs/features/browser_ui/6_release/deploy_key/clone_using_deploy_key_spec.rb[1:1:2]": 65.585285599,
- "./qa/specs/features/browser_ui/6_release/deploy_key/clone_using_deploy_key_spec.rb[1:1:3]": 45.961558783,
- "./qa/specs/features/browser_ui/6_release/deploy_token/add_deploy_token_spec.rb[1:1:1]": 15.694988036,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_settings_create_new_alerts_spec.rb[1:1:1:1:1]": 29.705950973,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_settings_create_new_alerts_spec.rb[1:1:2:1:1]": 26.718493726,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/automatically_creates_incident_for_alert_spec.rb[1:1:1:1:1]": 31.643714163,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/automatically_creates_incident_for_alert_spec.rb[1:1:2:1:1]": 38.344217057,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/create_alert_using_authorization_key_spec.rb[1:1:1:1:1]": 23.877850129,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/create_alert_using_authorization_key_spec.rb[1:1:2:1:1]": 23.890810565,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:1:1:1:1]": 16.166369936,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:1:2:1:1]": 15.324378822,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:2:1:1:1]": 17.279788552,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:2:2:1:1]": 21.195414559,
- "./qa/specs/features/browser_ui/8_monitor/alert_management/recovery_alert_resolves_correct_alert_spec.rb[1:1:1:1:1]": 29.011678497,
- "./qa/specs/features/browser_ui/9_tenant_scale/group/create_group_with_mattermost_team_spec.rb[1:1:1]": 9.344660726,
- "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:1]": 22.678487753,
- "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:2:1:1]": 21.806627936,
- "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:2:2:1]": 20.780475207,
- "./qa/specs/features/browser_ui/9_tenant_scale/group/transfer_project_spec.rb[1:1:1]": 27.244025476,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/add_project_member_spec.rb[1:1:1]": 32.014529209,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_badge_spec.rb[1:1:1]": 20.068110387,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb[1:1:1:1:1]": 33.402318714,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb[1:1:2:1:1]": 33.934750764,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb[1:1:1:1:1]": 10.979258094,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb[1:1:2:1:1]": 11.608350591,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb[1:1:1:1:1]": 28.336834686,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb[1:1:2:1:1]": 25.112712061,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:1:1:1]": 42.933115103,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:1:2:1]": 36.98431554,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:2:1:1]": 48.607808192,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:2:2:1]": 42.623868649,
- "./qa/specs/features/browser_ui/9_tenant_scale/project/view_project_activity_spec.rb[1:1:1:1]": 35.743874052,
- "./qa/specs/features/browser_ui/9_tenant_scale/user/follow_user_activity_spec.rb[1:1:1]": 31.223309247,
- "./qa/specs/features/browser_ui/9_tenant_scale/user/parent_group_access_termination_spec.rb[1:1:1:1]": 27.375015555,
- "./qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb[1:1:1:1]": 47.197937559,
- "./qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb[1:1:2:1]": 19.7629016,
- "./qa/specs/features/ee/api/10_govern/compliance_pipeline_spec.rb[1:1:1:1]": 38.562984764,
- "./qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb[1:1:1:1]": 17.006812857,
- "./qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb[1:1:4:1]": 20.019217622,
- "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:1]": 47.791755977,
- "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:2]": 20.925896789,
- "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:3]": 11.860366479,
- "./qa/specs/features/ee/api/1_manage/import/import_github_repo_spec.rb[1:1:1:1]": 131.481349437,
- "./qa/specs/features/ee/api/1_manage/integrations/group_webhook_events_spec.rb[1:1:1]": 13.047155732,
- "./qa/specs/features/ee/api/1_manage/migration/gitlab_migration_group_spec.rb[1:1:1:1]": 62.834426385,
- "./qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb[1:1:1:1:1]": 0.908633899,
- "./qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb[1:1:2:1:1]": 1.435222086,
- "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:1]": 16.673002459,
- "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:2]": 22.183535559,
- "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:3]": 25.743414036,
- "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:4]": 17.40645266,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:1:1:1]": 1.899159639,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:1:2:1:1]": 2.37570206,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:2:1:1:1:1:1]": 1.346350015,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:2:1:1:1:2:1:1]": 1.183801546,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:1:1:1]": 8.128856163,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:1:1:1:1]": 1.380690753,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:1:2:1]": 0.097335669,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:2:1]": 0.09956121,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:2:1]": 0.079209265,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:3:1:1]": 9.692912799,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:3:2:1:1:1:1]": 1.689461795,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:1:1]": 4.791269977,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:1:2]": 3.392493948,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:1]": 0.264238843,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:2]": 1.318091627,
- "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:3:1]": 1.823521926,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/advanced_global_advanced_syntax_search_spec.rb[1:1:1:1]": 66.019682451,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/advanced_global_advanced_syntax_search_spec.rb[1:1:1:2]": 39.39135041,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/elasticsearch_api_spec.rb[1:1:1]": 24.075599347,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/elasticsearch_api_spec.rb[1:1:2:1]": 43.30171114,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/elasticsearch_api_spec.rb[1:1:2:2]": 28.470758227,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/commit_index/commit_index_spec.rb[1:1:1]": 31.44747142,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/issues_index/issue_index_spec.rb[1:1:1]": 72.872250958,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/main_index/blob_index_spec.rb[1:1:1]": 40.252409182,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/merge_request_index/merge_request_index_spec.rb[1:1:1]": 63.477970837,
- "./qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/notes_index/note_index_spec.rb[1:1:1]": 62.85925672,
- "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:1]": 46.975265279,
- "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:2]": 47.303986459,
- "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:3]": 39.575272527,
- "./qa/specs/features/ee/browser_ui/10_govern/create_merge_request_with_secure_spec.rb[1:1:1]": 71.378891385,
- "./qa/specs/features/ee/browser_ui/10_govern/dismissed_vulnerabilities_in_security_widget_spec.rb[1:1:1]": 106.310033633,
- "./qa/specs/features/ee/browser_ui/10_govern/explain_this_vulnerability_spec.rb[1:1:1]": 48.656577734,
- "./qa/specs/features/ee/browser_ui/10_govern/export_vulnerability_report_spec.rb[1:1:1]": 15.908063331,
- "./qa/specs/features/ee/browser_ui/10_govern/fix_vulnerability_workflow_spec.rb[1:1:1]": 144.069410289,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:1:1]": 13.295410423,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:1:1]": 14.898742257,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:2:1]": 16.824695576,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:3:1]": 13.136593429,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:1:1:1]": 28.561804412,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:2:1:1]": 16.635633392,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:3:1:1]": 12.295847219,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:4:1:1]": 34.657677724,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:5:1:1]": 23.506024397,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:1]": 32.495312124,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:2]": 20.357829454,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:3]": 13.573113925,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:1]": 31.788637664,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:2]": 9.155989628,
- "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:3]": 15.14022336,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:1:1]": 20.072571287,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:2:1]": 13.202158553,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:3:1]": 47.333176817,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:1:1]": 16.157089652,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:2:1]": 10.765356975,
- "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:3:1]": 15.976094984,
- "./qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb[1:1:1]": 165.731185795,
- "./qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb[1:1:2]": 79.187989099,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:1:1:1]": 22.14500532,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:2:1:1]": 23.256443984,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:3:1:1]": 29.269032535,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:4:1:1]": 31.964503926,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:5:1:1]": 30.323853794,
- "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:6:1:1]": 30.86096932,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:1:1:1]": 44.243053563,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:2:1:1]": 34.19654338,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:3:1:1]": 29.71553929,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:4:1:1]": 27.89401059,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:5:1:1]": 58.697429841,
- "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:6:1:1]": 36.727309558,
- "./qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb[1:1:1]": 26.577856097,
- "./qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb[1:1:2]": 35.517904431,
- "./qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb[1:1:1]": 76.255500995,
- "./qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb[1:1:2]": 82.558011635,
- "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_license_finding_spec.rb[1:1:1]": 49.199501503,
- "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb[1:1:1]": 117.611526734,
- "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb[1:1:2]": 92.937129751,
- "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:1]": 25.489066958,
- "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:2]": 22.170381451,
- "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:3]": 33.881534232,
- "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:1]": 19.975156362,
- "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:2]": 117.901409323,
- "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:3]": 63.717820314,
- "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:4]": 123.271606409,
- "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:6:1]": 38.706925799,
- "./qa/specs/features/ee/browser_ui/10_govern/user/minimal_access_user_spec.rb[1:1:1]": 24.151715831,
- "./qa/specs/features/ee/browser_ui/10_govern/vulnerabilities_jira_integration_spec.rb[1:1:1]": 42.562710221,
- "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:1]": 76.762773166,
- "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:2]": 57.950134757,
- "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:3]": 103.572235094,
- "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:4]": 103.884004865,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb[1:1:1]": 19.519817991,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb[1:1:1]": 7.57460835,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:1]": 57.451251172,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:2]": 36.162437192,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:3]": 27.87518569,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:4]": 63.296739876,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/free_namespace_storage_spec.rb[1:1:1:1]": 341.009588447,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/saas_user_caps_spec.rb[1:1:1:1]": 44.723411659,
- "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/user_registration_billing_spec.rb[1:1:1:1:1]": 23.297850153,
- "./qa/specs/features/ee/browser_ui/13_secure/cvs_dependency_scanning_spec.rb[1:1:1:1]": 75.638407947,
- "./qa/specs/features/ee/browser_ui/13_secure/license_scanning_spec.rb[1:1:1:1]": 116.30680739,
- "./qa/specs/features/ee/browser_ui/13_secure/on_demand_dast_spec.rb[1:1:1:1]": 110.920330885,
- "./qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb[1:1:1:1:1]": 44.079579599,
- "./qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb[1:1:1:2:1]": 24.888214996,
- "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb[1:1:1:1:1]": 28.27348307,
- "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb[1:1:1:2:1]": 14.801945633,
- "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/root_cause_analysis_with_duo_chat_spec.rb[1:1:1:1]": 37.931425691,
- "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:1]": 23.264337878,
- "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:2]": 17.326720212,
- "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:3]": 18.062140518,
- "./qa/specs/features/ee/browser_ui/2_plan/analytics/contribution_analytics_spec.rb[1:1:1]": 211.292243553,
- "./qa/specs/features/ee/browser_ui/2_plan/analytics/mr_analytics_spec.rb[1:1:1]": 74.28075828,
- "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:1:1:1:1]": 27.86812548,
- "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:1:2:1:1]": 29.536940632,
- "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:2:1]": 18.265951206,
- "./qa/specs/features/ee/browser_ui/2_plan/burndown_chart/burndown_chart_spec.rb[1:1:1]": 22.641035335,
- "./qa/specs/features/ee/browser_ui/2_plan/custom_email/custom_email_spec.rb[1:1:1]": 16.821151717,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:1]": 56.793551099,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:2]": 57.964668134,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:1]": 54.337153238,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:2]": 51.654257375,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:3]": 95.184794161,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:2]": 59.572176706,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/promote_issue_to_epic_spec.rb[1:1:1]": 63.20070909,
- "./qa/specs/features/ee/browser_ui/2_plan/epic/roadmap_spec.rb[1:1:1]": 14.576608489,
- "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb[1:1:1:1]": 19.813969824,
- "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb[1:1:2:1]": 21.559228975,
- "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/delete_group_wiki_page_spec.rb[1:1:1]": 17.600620542,
- "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/file_upload_group_wiki_page_spec.rb[1:1:1]": 35.702110881,
- "./qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb[1:1:1:1]": 15.555756158,
- "./qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb[1:2:1:1]": 18.571270016,
- "./qa/specs/features/ee/browser_ui/2_plan/issue/default_issue_template_spec.rb[1:1:1]": 30.402700367,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/configurable_issue_board_spec.rb[1:1:1]": 19.263109267,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/configure_issue_board_by_label_spec.rb[1:1:1]": 26.399046988,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/create_group_issue_board_spec.rb[1:1:1]": 44.058644116,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/group_issue_boards_spec.rb[1:1:1]": 42.505086799,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:1:1]": 20.300711009,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:2:1]": 20.460009522,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:3:1]": 25.253992699,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/read_only_board_configuration_spec.rb[1:1:1]": 32.519977572,
- "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/sum_of_issues_weights_spec.rb[1:1:1]": 22.535067519,
- "./qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb[1:1:1:1]": 15.611320288,
- "./qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb[1:2:1:1]": 15.906248199,
- "./qa/specs/features/ee/browser_ui/2_plan/issues_weight/issue_weight_visualization_spec.rb[1:1:1]": 34.898537993,
- "./qa/specs/features/ee/browser_ui/2_plan/iterations/assign_group_iteration_spec.rb[1:1:1]": 22.289509862,
- "./qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb[1:1:1:1]": 24.342508949,
- "./qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb[1:1:2:1]": 20.763176024,
- "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/four_assignees_spec.rb[1:1:1]": 39.05453727,
- "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb[1:1:1]": 46.403286811,
- "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb[1:1:2]": 36.248777572,
- "./qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb[1:1:1]": 24.677114242,
- "./qa/specs/features/ee/browser_ui/3_create/merge_request/approval_rules_spec.rb[1:1:1]": 106.008473686,
- "./qa/specs/features/ee/browser_ui/3_create/merge_request/default_merge_request_template_spec.rb[1:1:1]": 48.185280618,
- "./qa/specs/features/ee/browser_ui/3_create/merge_request/generate_commit_message_spec.rb[1:1:1:1]": 40.390914617,
- "./qa/specs/features/ee/browser_ui/3_create/remote_development/workspace_actions_spec.rb[1:1:1:1:1]": 656.975314259,
- "./qa/specs/features/ee/browser_ui/3_create/repository/assign_code_owners_spec.rb[1:1:1]": 77.835283702,
- "./qa/specs/features/ee/browser_ui/3_create/repository/code_owners_spec.rb[1:1:1]": 29.858441116,
- "./qa/specs/features/ee/browser_ui/3_create/repository/duo_chat_explain_code_spec.rb[1:1:1]": 28.16854103,
- "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:1]": 72.35469694,
- "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:2]": 67.618504346,
- "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:3]": 62.841053401,
- "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:4]": 52.428863271,
- "./qa/specs/features/ee/browser_ui/3_create/repository/group_file_template_spec.rb[1:1:1]": 43.29283679,
- "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb[1:1:1:1:1:1]": 63.188973147,
- "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb[1:1:1:2:1:1]": 70.337770413,
- "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:1:1:1]": 100.567065816,
- "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:2:1:1]": 124.812630885,
- "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:3:1:1]": 88.689713268,
- "./qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb[1:1:1:1]": 32.727686225,
- "./qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb[1:1:2:1]": 16.823762103,
- "./qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb[1:1:1:1]": 40.153010204,
- "./qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb[1:1:3:1]": 155.008247203,
- "./qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_http_spec.rb[1:1:1]": 54.098731282,
- "./qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_ssh_with_key_spec.rb[1:1:1]": 54.379182606,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:1]": 30.876860964,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:2]": 41.832940692,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:3]": 42.084087554,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:4]": 40.006651248,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:5]": 60.515372624,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:6]": 39.273377605,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:7]": 40.238892956,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:8]": 40.652133778,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:9]": 49.307062759,
- "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:2:1]": 50.171645397,
- "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:1:1:1]": 49.067817193,
- "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:1:2:1]": 50.812467073,
- "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:2:1:1]": 51.568194275,
- "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:2:2:1]": 61.734276313,
- "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:3:1:1]": 46.483972431,
- "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:1:1:1:1]": 25.508524333,
- "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:1:2:1:1]": 27.60531065,
- "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:2:1:1]": 27.923196536,
- "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:2:1:1]": 25.22153005,
- "./qa/specs/features/ee/browser_ui/4_verify/multi-project_pipelines_spec.rb[1:1:1]": 89.697462894,
- "./qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb[1:1:1]": 45.471619148,
- "./qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb[1:1:2]": 65.205954378,
- "./qa/specs/features/ee/browser_ui/4_verify/pipeline_for_merged_result_spec.rb[1:1:1]": 53.854234828,
- "./qa/specs/features/ee/browser_ui/4_verify/pipeline_subscription_with_group_owned_project_spec.rb[1:1:1:1]": 61.396500039,
- "./qa/specs/features/ee/browser_ui/8_monitor/incident_management/incident_quick_action_spec.rb[1:1:1]": 16.936613385,
- "./qa/specs/features/ee/browser_ui/9_tenant_scale/group/share_group_with_group_spec.rb[1:1:1]": 33.98725241
+ "./qa/specs/features/api/10_govern/group_access_token_spec.rb[1:1:1]": 17.965835927,
+ "./qa/specs/features/api/10_govern/group_access_token_spec.rb[1:1:2]": 15.440690843,
+ "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:1:1]": 28.579263952,
+ "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:1:2]": 19.809251585,
+ "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:2:1]": 35.445945191,
+ "./qa/specs/features/api/10_govern/project_access_token_spec.rb[1:1:2:2]": 24.313330483,
+ "./qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb[1:1:1]": 67.204129588,
+ "./qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb[1:1:2:1]": 32.059779906,
+ "./qa/specs/features/api/12_systems/gitaly/backend_node_recovery_spec.rb[1:1:1]": 102.480642205,
+ "./qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb[1:1:1]": 47.046166687,
+ "./qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb[1:1:2:1]": 55.727308448,
+ "./qa/specs/features/api/12_systems/gitaly/gitaly_mtls_spec.rb[1:1:1]": 19.340814466,
+ "./qa/specs/features/api/1_manage/import/import_github_repo_spec.rb[1:1:1:1]": 127.489575968,
+ "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:1]": 12.216107036,
+ "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:2]": 15.933020121,
+ "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:3]": 4.667812925,
+ "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:4]": 12.462059938,
+ "./qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb[1:1:5]": 11.529515595,
+ "./qa/specs/features/api/1_manage/migration/gitlab_migration_group_spec.rb[1:1:2:1]": 59.361528533,
+ "./qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb[1:1:2:1]": 113.131797453,
+ "./qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb[1:1:3:1]": 101.945176988,
+ "./qa/specs/features/api/1_manage/migration/gitlab_migration_pipeline_spec.rb[1:1:1:1]": 91.729914798,
+ "./qa/specs/features/api/1_manage/rate_limits_spec.rb[1:1:1]": 14.607217966,
+ "./qa/specs/features/api/2_plan/closes_issue_via_pushing_a_commit_spec.rb[1:1:1]": 23.008684037,
+ "./qa/specs/features/api/3_create/merge_request/push_options_mwps_spec.rb[1:1:1]": 22.494501055,
+ "./qa/specs/features/api/3_create/merge_request/push_options_remove_source_branch_spec.rb[1:1:1]": 43.636242201,
+ "./qa/specs/features/api/3_create/merge_request/push_options_spec.rb[1:1:1]": 14.732706274,
+ "./qa/specs/features/api/3_create/merge_request/push_options_spec.rb[1:1:2]": 22.787489945,
+ "./qa/specs/features/api/3_create/merge_request/view_merge_requests_spec.rb[1:1:1:1]": 1.082708408,
+ "./qa/specs/features/api/3_create/repository/add_list_delete_branches_spec.rb[1:1:1]": 17.708858703,
+ "./qa/specs/features/api/3_create/repository/commit_to_templated_project_spec.rb[1:1:1]": 10.779747315,
+ "./qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb[1:1:1]": 5.074824182,
+ "./qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb[1:1:2]": 6.197679797,
+ "./qa/specs/features/api/3_create/repository/files_spec.rb[1:1:1]": 5.028744477,
+ "./qa/specs/features/api/3_create/repository/files_spec.rb[1:1:2:1]": 3.973983673,
+ "./qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb[1:1:1]": 15.180661393,
+ "./qa/specs/features/api/3_create/repository/push_postreceive_idempotent_spec.rb[1:1:1]": 25.050371408,
+ "./qa/specs/features/api/3_create/repository/storage_size_spec.rb[1:1:1]": 19.204492761,
+ "./qa/specs/features/api/3_create/repository/tag_revision_trigger_prereceive_hook_spec.rb[1:1:1:1:1]": 11.841812764,
+ "./qa/specs/features/api/4_verify/api_variable_inheritance_with_forward_pipeline_variables_spec.rb[1:1:1]": 61.1731228,
+ "./qa/specs/features/api/4_verify/cancel_pipeline_when_block_user_spec.rb[1:1:1]": 26.376580723,
+ "./qa/specs/features/api/4_verify/file_variable_spec.rb[1:1:1]": 34.071845262,
+ "./qa/specs/features/api/4_verify/file_variable_spec.rb[1:1:2]": 34.77279935,
+ "./qa/specs/features/api/4_verify/job_downloads_artifacts_spec.rb[1:1:1]": 27.161383435,
+ "./qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb[1:1:1]": 69.033341671,
+ "./qa/specs/features/api/8_monitor/metrics_spec.rb[1:1:2:1]": 3.650956009,
+ "./qa/specs/features/api/8_monitor/metrics_spec.rb[1:2:1:1]": 2.685024967,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:1]": 17.026644753,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:2]": 22.463937372,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:1:3]": 15.513543391,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:1]": 47.420487817,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:2]": 17.03596181,
+ "./qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb[1:1:2:3]": 12.049638428,
+ "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:1]": 1.400500494,
+ "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:2]": 1.350860883,
+ "./qa/specs/features/api/9_tenant_scale/users_spec.rb[1:1:3]": 3.300004046,
+ "./qa/specs/features/browser_ui/10_govern/group/group_access_token_spec.rb[1:1:1]": 20.474029766,
+ "./qa/specs/features/browser_ui/10_govern/login/2fa_recovery_spec.rb[1:1:1]": 53.607716173,
+ "./qa/specs/features/browser_ui/10_govern/login/2fa_ssh_recovery_spec.rb[1:1:1]": 57.850255819,
+ "./qa/specs/features/browser_ui/10_govern/login/log_in_spec.rb[1:1:1]": 13.623114893,
+ "./qa/specs/features/browser_ui/10_govern/login/log_in_with_2fa_spec.rb[1:1:1]": 100.334444961,
+ "./qa/specs/features/browser_ui/10_govern/login/log_into_gitlab_via_ldap_spec.rb[1:1:1]": 4.92612366,
+ "./qa/specs/features/browser_ui/10_govern/login/log_into_mattermost_via_gitlab_spec.rb[1:1:1]": 30.722237006,
+ "./qa/specs/features/browser_ui/10_govern/login/login_via_instance_wide_saml_sso_spec.rb[1:1:1]": 20.068269269,
+ "./qa/specs/features/browser_ui/10_govern/login/oauth_login_with_github_spec.rb[1:1:1]": 42.085418594,
+ "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:1:1]": 7.815511727,
+ "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:1:1:1]": 33.776881071,
+ "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:1:2:1]": 17.656691661,
+ "./qa/specs/features/browser_ui/10_govern/login/register_spec.rb[1:2:2:1]": 56.360518948,
+ "./qa/specs/features/browser_ui/10_govern/project/project_access_token_spec.rb[1:1:1]": 22.744552996,
+ "./qa/specs/features/browser_ui/10_govern/user/impersonation_token_spec.rb[1:1:1]": 39.080742241,
+ "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:1]": 19.569856625,
+ "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:2]": 15.261237265,
+ "./qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb[1:1:1:3]": 6.099341109,
+ "./qa/specs/features/browser_ui/14_analytics/performance_bar_spec.rb[1:1:1:1]": 41.248273954,
+ "./qa/specs/features/browser_ui/14_analytics/service_ping_default_enabled_spec.rb[1:1:1:1]": 23.762679721,
+ "./qa/specs/features/browser_ui/14_analytics/service_ping_disabled_spec.rb[1:1:1:1]": 16.107325885,
+ "./qa/specs/features/browser_ui/1_manage/integrations/jenkins/jenkins_build_status_spec.rb[1:1:1]": 63.049141584,
+ "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb[1:1:1]": 30.595798719,
+ "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb[1:1:2]": 33.27795688,
+ "./qa/specs/features/browser_ui/1_manage/integrations/jira/jira_issue_import_spec.rb[1:1:1]": 53.065096905,
+ "./qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb[1:1:1:1]": 49.611303941,
+ "./qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb[1:1:2:1]": 39.009865123,
+ "./qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_group_spec.rb[1:1:1]": 72.757495199,
+ "./qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_user_contribution_reassignment_spec.rb[1:1:1:1]": 177.476700287,
+ "./qa/specs/features/browser_ui/2_plan/design_management/add_design_content_spec.rb[1:1:1]": 22.390309891,
+ "./qa/specs/features/browser_ui/2_plan/design_management/archive_design_content_spec.rb[1:1:1]": 33.211751438,
+ "./qa/specs/features/browser_ui/2_plan/design_management/modify_design_content_spec.rb[1:1:1]": 25.175048505,
+ "./qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb[1:1:1]": 19.399112122,
+ "./qa/specs/features/browser_ui/2_plan/issue/collapse_comments_in_discussions_spec.rb[1:1:1]": 22.48118938,
+ "./qa/specs/features/browser_ui/2_plan/issue/comment_issue_spec.rb[1:1:1]": 26.180878901,
+ "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:1]": 41.855098906,
+ "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:2]": 80.120692749,
+ "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:3]": 45.618062917,
+ "./qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb[1:1:4:1]": 35.169966834,
+ "./qa/specs/features/browser_ui/2_plan/issue/custom_issue_template_spec.rb[1:1:1]": 31.199291474,
+ "./qa/specs/features/browser_ui/2_plan/issue/export_as_csv_spec.rb[1:1:1]": 42.882703366,
+ "./qa/specs/features/browser_ui/2_plan/issue/issue_suggestions_spec.rb[1:1:1]": 25.652492251,
+ "./qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb[1:1:1]": 34.942500464,
+ "./qa/specs/features/browser_ui/2_plan/issue/real_time_assignee_spec.rb[1:1:1]": 31.47515856,
+ "./qa/specs/features/browser_ui/2_plan/issue_boards/focus_mode_spec.rb[1:1:1]": 19.343151789,
+ "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:1:1:1]": 23.210075689,
+ "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:1:2:1]": 28.676189028,
+ "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:2:1:1]": 25.589997648,
+ "./qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb[1:1:2:2:1]": 29.311075284,
+ "./qa/specs/features/browser_ui/2_plan/milestone/create_group_milestone_spec.rb[1:1:1]": 22.265545915,
+ "./qa/specs/features/browser_ui/2_plan/milestone/create_project_milestone_spec.rb[1:1:1]": 30.000384865,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:1]": 24.477430036,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:2]": 25.029662913,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:3]": 20.268262069,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:4]": 22.353972292,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb[1:1:5]": 22.315883054,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:1]": 23.415449241,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:2]": 26.490928307,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb[1:1:3]": 22.329028423,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_directory_management_spec.rb[1:1:1]": 22.372347952,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_file_upload_spec.rb[1:1:1]": 39.202519551,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb[1:1:1:1]": 31.491481994,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb[1:1:2:1]": 56.566639404,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb[1:1:1]": 20.157584117,
+ "./qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb[1:1:2]": 36.51628778,
+ "./qa/specs/features/browser_ui/2_plan/related_issues/related_issues_spec.rb[1:1:1]": 25.667597999,
+ "./qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb[1:1:1]": 42.054490794,
+ "./qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb[1:1:2]": 43.117491672,
+ "./qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_a_merge_spec.rb[1:1:1]": 44.176778105,
+ "./qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_commit_spec.rb[1:1:1]": 34.686354604,
+ "./qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb[1:1:1]": 28.449997812,
+ "./qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb[1:1:2]": 37.360913616,
+ "./qa/specs/features/browser_ui/3_create/merge_request/merge_merge_request_from_fork_spec.rb[1:1:1]": 39.69523976,
+ "./qa/specs/features/browser_ui/3_create/merge_request/merge_request_set_to_auto_merge_spec.rb[1:1:1]": 96.135750584,
+ "./qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb[1:1:1]": 91.869611652,
+ "./qa/specs/features/browser_ui/3_create/merge_request/revert/revert_commit_spec.rb[1:1:1]": 29.611802805,
+ "./qa/specs/features/browser_ui/3_create/merge_request/revert/reverting_merge_request_spec.rb[1:1:1]": 55.520810221,
+ "./qa/specs/features/browser_ui/3_create/merge_request/suggestions/batch_suggestion_spec.rb[1:1:1]": 73.960590807,
+ "./qa/specs/features/browser_ui/3_create/merge_request/suggestions/custom_commit_suggestion_spec.rb[1:1:1]": 53.032713696,
+ "./qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb[1:1:1]": 26.14411814,
+ "./qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb[1:1:2]": 27.80723467,
+ "./qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb[1:1:1]": 27.930282318,
+ "./qa/specs/features/browser_ui/3_create/repository/add_new_branch_rule_spec.rb[1:1:1]": 45.270817966,
+ "./qa/specs/features/browser_ui/3_create/repository/branch_with_unusual_name_spec.rb[1:1:1:1]": 24.174087797,
+ "./qa/specs/features/browser_ui/3_create/repository/clone_spec.rb[1:1:1]": 13.006387883,
+ "./qa/specs/features/browser_ui/3_create/repository/clone_spec.rb[1:1:2]": 11.494703413,
+ "./qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb[1:1:1:1:1]": 18.855529701,
+ "./qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb[1:1:2:1:1]": 18.932699056,
+ "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:1:1:1]": 29.02752419,
+ "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:1:2:1]": 26.55333415,
+ "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:2:1:1]": 50.520658141,
+ "./qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb[1:1:2:2:1]": 50.656315929,
+ "./qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_http_spec.rb[1:1:1]": 22.762603095,
+ "./qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_ssh_spec.rb[1:1:1]": 23.320743313,
+ "./qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb[1:1:1]": 25.847487444,
+ "./qa/specs/features/browser_ui/3_create/repository/push_mirroring_lfs_over_http_spec.rb[1:1:1]": 84.458710267,
+ "./qa/specs/features/browser_ui/3_create/repository/push_mirroring_over_http_spec.rb[1:1:1]": 78.821934437,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb[1:1:1]": 15.930321226,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb[1:1:2]": 42.262366391,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb[1:1:1]": 22.338545736,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb[1:1:2]": 13.557199259,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb[1:1:1]": 18.406459158,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb[1:1:2]": 41.805400579,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb[1:1:1]": 25.324773846,
+ "./qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb[1:1:2]": 24.019164761,
+ "./qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb[1:1:1:1]": 26.67423749,
+ "./qa/specs/features/browser_ui/3_create/repository/push_to_canary_gitaly_spec.rb[1:1:1]": 23.857914052,
+ "./qa/specs/features/browser_ui/3_create/repository/ssh_key_support_create_spec.rb[1:1:1]": 21.282368827,
+ "./qa/specs/features/browser_ui/3_create/repository/ssh_key_support_delete_spec.rb[1:1:1]": 18.902263736,
+ "./qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb[1:1:1]": 25.879328914,
+ "./qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb[1:1:2]": 30.236198289,
+ "./qa/specs/features/browser_ui/3_create/snippet/add_comment_to_snippet_spec.rb[1:1:1]": 31.974285998,
+ "./qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb[1:1:1:1]": 29.043003018,
+ "./qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb[1:1:2:1]": 26.91105112,
+ "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb[1:1:1]": 37.168216338,
+ "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb[1:1:2]": 38.841167106,
+ "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb[1:1:1]": 44.251026254,
+ "./qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb[1:1:2]": 41.942455737,
+ "./qa/specs/features/browser_ui/3_create/snippet/copy_snippet_file_contents_spec.rb[1:1:1]": 25.41531335,
+ "./qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_with_multiple_files_spec.rb[1:1:1]": 16.54897191,
+ "./qa/specs/features/browser_ui/3_create/snippet/create_project_snippet_with_multiple_files_spec.rb[1:1:1]": 31.074118649,
+ "./qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb[1:1:1:1]": 24.161491277,
+ "./qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb[1:1:2:1]": 22.078939819,
+ "./qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb[1:1:1:1]": 16.301441093,
+ "./qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb[1:1:2:1]": 13.955859784,
+ "./qa/specs/features/browser_ui/3_create/source_editor/source_editor_toolbar_spec.rb[1:1:1]": 30.364181551,
+ "./qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb[1:1:1:1]": 16.733141507,
+ "./qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb[1:1:2:1]": 21.700240336,
+ "./qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb[1:1:1:1]": 41.827162727,
+ "./qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb[1:1:2:1]": 59.393681161,
+ "./qa/specs/features/browser_ui/3_create/web_ide/closing_web_ide_with_unsaved_changes_spec.rb[1:1:1]": 37.055114931,
+ "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:1]": 37.72470991,
+ "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:2]": 79.323297986,
+ "./qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb[1:1:3]": 62.603135676,
+ "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:1:1]": 42.340393254,
+ "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:2:1:1:1]": 25.288455057,
+ "./qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb[1:1:2:2:1:1]": 82.396868829,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb[1:1:1:2:1:1]": 46.970866337,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb[1:1:1:2:2:1]": 41.286218138,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb[1:1:1]": 63.100407055,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb[1:1:2]": 60.527864358,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb[1:1:1]": 104.390914505,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb[1:1:2]": 54.166226016,
+ "./qa/specs/features/browser_ui/4_verify/ci_components_catalog/run_component_in_project_pipeline_spec.rb[1:1:1]": 48.949554375,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/expose_job_artifacts_in_mr_spec.rb[1:1:1:1]": 37.774771155,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:1:1:1]": 40.874298624,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:1:1:2]": 39.940509573,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:2:1:1]": 50.65696049,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:2:1:2]": 41.006435857,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:3:1:1]": 48.767105643,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb[1:1:3:1:2]": 44.818449012,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:1:1]": 66.629761871,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:2:1]": 123.854269172,
+ "./qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb[1:1:3:1]": 79.169237889,
+ "./qa/specs/features/browser_ui/4_verify/ci_project_artifacts/user_can_bulk_delete_artifacts_spec.rb[1:1:1:1]": 73.291987677,
+ "./qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb[1:1:1]": 56.890872017,
+ "./qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb[1:1:2]": 76.375028982,
+ "./qa/specs/features/browser_ui/4_verify/ci_variable/raw_variables_defined_in_yaml_spec.rb[1:1:1]": 61.572497471,
+ "./qa/specs/features/browser_ui/4_verify/ci_variable/ui_variable_inheritable_when_forward_pipeline_variables_true_spec.rb[1:1:1]": 74.633719222,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/include_local_config_file_paths_with_wildcard_spec.rb[1:1:1]": 30.915270131,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_a_project_spec.rb[1:1:1]": 49.364241601,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_multiple_projects_spec.rb[1:1:1]": 49.394313638,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb[1:1:1]": 35.032417901,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb[1:1:2]": 40.127219723,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/pass_dotenv_variables_to_downstream_via_bridge_spec.rb[1:1:1]": 63.867982759,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/run_pipeline_with_manual_jobs_spec.rb[1:1:1]": 60.973117906,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/trigger_child_pipeline_with_manual_spec.rb[1:1:1]": 60.126772749,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/trigger_matrix_spec.rb[1:1:1]": 41.242408651,
+ "./qa/specs/features/browser_ui/4_verify/pipeline/update_ci_file_with_pipeline_editor_spec.rb[1:1:1]": 42.089385742,
+ "./qa/specs/features/browser_ui/4_verify/runner/deprecated_registration_token_spec.rb[1:1:1]": 21.650577048,
+ "./qa/specs/features/browser_ui/4_verify/runner/deprecated_unregister_runner_spec.rb[1:1:1]": 36.095911812,
+ "./qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_counts_spec.rb[1:1:1]": 21.918267332,
+ "./qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_status_counts_spec.rb[1:1:1]": 18.97998052,
+ "./qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb[1:1:1]": 26.115506564,
+ "./qa/specs/features/browser_ui/4_verify/runner/register_project_runner_spec.rb[1:1:1]": 52.527923887,
+ "./qa/specs/features/browser_ui/4_verify/runner/unregister_runner_spec.rb[1:1:1]": 26.236790015,
+ "./qa/specs/features/browser_ui/4_verify/testing/endpoint_coverage_spec.rb[1:1:1]": 52.316446719,
+ "./qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb[1:1:1]": 165.634585609,
+ "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:1:1]": 105.272052759,
+ "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:2:1]": 135.258626258,
+ "./qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb[1:1:1:3:1]": 106.807653429,
+ "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:1:1]": 79.139139667,
+ "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:2:1]": 63.35187277,
+ "./qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb[1:1:3:1]": 57.017904188,
+ "./qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb[1:1:1]": 67.286344045,
+ "./qa/specs/features/browser_ui/5_package/package_registry/conan_repository_spec.rb[1:1:1]": 109.692268132,
+ "./qa/specs/features/browser_ui/5_package/package_registry/generic_repository_spec.rb[1:1:1]": 63.838511729,
+ "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:1:1]": 112.827337247,
+ "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:2:1]": 102.178218066,
+ "./qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb[1:1:3:1]": 107.851342207,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:1:1]": 121.98047767,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:2:1]": 125.26619909,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:1:3:1]": 164.134308094,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:2:1:1]": 118.839580145,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb[1:1:2:2:1]": 120.079280527,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:1:1]": 94.203822856,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:2:1]": 96.340273515,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb[1:1:3:1]": 106.19057576,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:1:1]": 101.407670161,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:2:1]": 121.315254043,
+ "./qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb[1:1:3:1]": 101.910591866,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:1:1]": 90.53860519,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:2:1]": 107.515920373,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb[1:1:3:1]": 90.804820393,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:1:1]": 80.886530788,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:2:1]": 90.640849555,
+ "./qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb[1:1:3:1]": 104.873391049,
+ "./qa/specs/features/browser_ui/5_package/package_registry/pypi_repository_spec.rb[1:1:1:1]": 124.86013221,
+ "./qa/specs/features/browser_ui/6_deploy/auto_devops/create_project_with_auto_devops_spec.rb[1:1:1]": 568.348871003,
+ "./qa/specs/features/browser_ui/6_deploy/deploy_key/add_deploy_key_spec.rb[1:1:1]": 25.653972745,
+ "./qa/specs/features/browser_ui/6_deploy/deploy_key/clone_using_deploy_key_spec.rb[1:1:1]": 64.788391756,
+ "./qa/specs/features/browser_ui/6_deploy/deploy_key/clone_using_deploy_key_spec.rb[1:1:2]": 44.250252096,
+ "./qa/specs/features/browser_ui/6_deploy/deploy_key/clone_using_deploy_key_spec.rb[1:1:3]": 51.12034734,
+ "./qa/specs/features/browser_ui/6_deploy/deploy_token/add_deploy_token_spec.rb[1:1:1]": 13.617455071,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:1:1:1]": 28.804756916,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:1:2:1]": 26.942373918,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:1:3:1]": 32.742460132,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:1:4:1]": 33.512280759,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:2:1:1]": 25.278106634,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:2:2:1]": 25.818995704,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb[1:1:2:3:1]": 30.539621529,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:1:1:1:1]": 20.803734715,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:1:2:1:1]": 18.149240297,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:2:1:1:1]": 24.560867605,
+ "./qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb[1:1:2:2:1:1]": 21.5403724,
+ "./qa/specs/features/browser_ui/9_tenant_scale/group/create_group_with_mattermost_team_spec.rb[1:1:1]": 11.792938794,
+ "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:1]": 27.494347693,
+ "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:2:1:1]": 22.400180915,
+ "./qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb[1:1:2:2:1]": 24.470665351,
+ "./qa/specs/features/browser_ui/9_tenant_scale/group/transfer_project_spec.rb[1:1:1]": 21.639426063,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/add_project_member_spec.rb[1:1:1]": 32.685666012,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_badge_spec.rb[1:1:1]": 29.041984398,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb[1:1:1:1:1]": 28.892801071,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb[1:1:2:1:1]": 27.588794295,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb[1:1:1:1:1]": 8.72350758,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb[1:1:2:1:1]": 14.014929585,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb[1:1:1:1:1]": 29.737208156,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb[1:1:2:1:1]": 24.811136111,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:1:1:1]": 42.426066184,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:1:2:1]": 46.870434948,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:2:1:1]": 46.044489351,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb[1:1:2:2:1]": 42.700666515,
+ "./qa/specs/features/browser_ui/9_tenant_scale/project/view_project_activity_spec.rb[1:1:1:1]": 24.761728824,
+ "./qa/specs/features/browser_ui/9_tenant_scale/user/follow_user_activity_spec.rb[1:1:1]": 26.594523245,
+ "./qa/specs/features/browser_ui/9_tenant_scale/user/parent_group_access_termination_spec.rb[1:1:1:1]": 29.703109918,
+ "./qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb[1:1:1:1]": 17.467976719,
+ "./qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb[1:1:2:1]": 18.405405084,
+ "./qa/specs/features/ee/api/10_govern/compliance_pipeline_spec.rb[1:1:1:1]": 27.990791839,
+ "./qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb[1:1:1:1]": 10.48554947,
+ "./qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb[1:1:4:1]": 13.391135656,
+ "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:1]": 47.509641628,
+ "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:2]": 23.460092905,
+ "./qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb[1:1:3]": 12.443946172,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/advanced_global_advanced_syntax_search_spec.rb[1:1:1:1]": 36.663558592,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/advanced_global_advanced_syntax_search_spec.rb[1:1:1:2]": 77.417051258,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/elasticsearch_api_spec.rb[1:1:1]": 32.871161993,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/elasticsearch_api_spec.rb[1:1:2:1]": 50.220459232,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/elasticsearch_api_spec.rb[1:1:2:2]": 27.55113084,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/blob_index_spec.rb[1:1:1]": 42.299344592,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/commit_index_spec.rb[1:1:1]": 39.190616521,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/issue_index_spec.rb[1:1:1]": 45.731552806,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/merge_request_index_spec.rb[1:1:1]": 28.517704861,
+ "./qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/note_index_spec.rb[1:1:1]": 36.025010085,
+ "./qa/specs/features/ee/api/1_manage/import/import_github_repo_spec.rb[1:1:1:1]": 26.742735677,
+ "./qa/specs/features/ee/api/1_manage/integrations/group_webhook_events_spec.rb[1:1:1]": 13.725903805,
+ "./qa/specs/features/ee/api/1_manage/migration/gitlab_migration_group_spec.rb[1:1:1:1]": 76.185247628,
+ "./qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb[1:1:1:1:1]": 0.865566107,
+ "./qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb[1:1:2:1:1]": 1.269010192,
+ "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:1]": 19.809633163,
+ "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:2]": 31.594498331,
+ "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:3]": 16.513852751,
+ "./qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb[1:1:4]": 20.389667206,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:1:1:1]": 1.685690499,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:1:2:1:1]": 1.633117905,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:2:1:1:1:1:1]": 2.442167374,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:1:2:1:1:1:2:1:1]": 1.490340936,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:1:1:1]": 14.931484294,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:1:1:1:1]": 2.245486748,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:1:2:1]": 2.881226429,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:1:2:1]": 3.333841167,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:2:2:1]": 2.881254993,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:3:1:1]": 11.568556401,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:2:3:2:1:1:1:1]": 2.245567839,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:1:1]": 4.231203828,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:1:2]": 3.297200231,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:1]": 3.271176783,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:2]": 1.600182738,
+ "./qa/specs/features/ee/api/3_create/code_suggestions_spec.rb[1:1:3:2:1:1:1:3:1]": 2.744966913,
+ "./qa/specs/features/ee/api/6_deploy/kubernetes/kubernetes_agent_spec.rb[1:1:1]": 333.841964395,
+ "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:1]": 44.183377131,
+ "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:2]": 37.533034285,
+ "./qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb[1:1:3]": 35.889431572,
+ "./qa/specs/features/ee/browser_ui/10_govern/create_merge_request_with_secure_spec.rb[1:1:1]": 70.493630702,
+ "./qa/specs/features/ee/browser_ui/10_govern/dismissed_vulnerabilities_in_security_widget_spec.rb[1:1:1]": 78.775272987,
+ "./qa/specs/features/ee/browser_ui/10_govern/explain_this_vulnerability_spec.rb[1:1:1]": 48.390992685,
+ "./qa/specs/features/ee/browser_ui/10_govern/export_vulnerability_report_spec.rb[1:1:1]": 25.195373892,
+ "./qa/specs/features/ee/browser_ui/10_govern/fix_vulnerability_workflow_spec.rb[1:1:1]": 154.707140401,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:1:1]": 12.690537568,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:1:1]": 9.09502641,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:2:1]": 8.306362519,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb[1:1:2:3:1]": 13.302284624,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:1:1:1]": 27.63706179,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:2:1:1]": 12.955363405,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:3:1:1]": 15.134681789,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:4:1:1]": 34.560539116,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb[1:1:5:1:1]": 42.022888567,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:1]": 45.529307418,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:2]": 12.120191614,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:1:1:3]": 14.582430726,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:1]": 31.054713597,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:2]": 10.931406031,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb[1:1:2:1:3]": 15.752118933,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:1:1]": 17.53316666,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:2:1]": 11.608958814,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:1:3:1]": 48.380505202,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:1:1]": 18.587462244,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:2:1]": 16.214974195,
+ "./qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb[1:1:2:3:1]": 18.581583143,
+ "./qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb[1:1:1]": 171.590911206,
+ "./qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb[1:1:2]": 102.715219756,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:1:1:1]": 18.735625044,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:2:1:1]": 17.260470976,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:3:1:1]": 24.077725106,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:4:1:1]": 20.6096281,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:5:1:1]": 24.474009249,
+ "./qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb[1:1:6:1:1]": 24.99176591,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:1:1:1]": 33.473732613,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:2:1:1]": 32.32108699,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:3:1:1]": 30.451245152,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:4:1:1]": 28.918042001,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:5:1:1]": 50.120184909,
+ "./qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb[1:1:6:1:1]": 39.34955273,
+ "./qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb[1:1:1]": 28.435156908,
+ "./qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb[1:1:2]": 36.862943442,
+ "./qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb[1:1:1]": 54.792538356,
+ "./qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb[1:1:2]": 73.184189222,
+ "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_license_finding_spec.rb[1:1:1]": 51.5421001,
+ "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb[1:1:1]": 57.280647082,
+ "./qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb[1:1:2]": 57.99702717,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:1]": 20.549387254,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:2]": 23.050508048,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb[1:1:3]": 37.406546178,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:1]": 20.509865645,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:2]": 119.452192993,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:3]": 62.977874948,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:4]": 120.987924612,
+ "./qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb[1:1:6:1]": 37.615573424,
+ "./qa/specs/features/ee/browser_ui/10_govern/user/minimal_access_user_spec.rb[1:1:1]": 24.578217313,
+ "./qa/specs/features/ee/browser_ui/10_govern/vulnerabilities_jira_integration_spec.rb[1:1:1]": 42.807938893,
+ "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:1]": 80.382352738,
+ "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:2]": 63.174037872,
+ "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:3]": 109.717016238,
+ "./qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb[1:1:4]": 107.881846713,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb[1:1:1]": 52.245580561,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb[1:1:1]": 13.510919953,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:1]": 60.107366545,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:2]": 34.692797934,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:3]": 28.449038271,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb[1:1:1:4]": 65.128890899,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/free_namespace_storage_spec.rb[1:1:1:1]": 345.016066913,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/saas_user_caps_spec.rb[1:1:1:1]": 51.455543511,
+ "./qa/specs/features/ee/browser_ui/11_fulfillment/utilization/user_registration_billing_spec.rb[1:1:1:1:1]": 18.337433436,
+ "./qa/specs/features/ee/browser_ui/13_secure/cvs_dependency_scanning_spec.rb[1:1:1:1]": 100.302462833,
+ "./qa/specs/features/ee/browser_ui/13_secure/license_scanning_spec.rb[1:1:1:1]": 125.252427312,
+ "./qa/specs/features/ee/browser_ui/13_secure/on_demand_dast_spec.rb[1:1:1:1]": 116.524583274,
+ "./qa/specs/features/ee/browser_ui/13_secure/secret_push_protection_spec.rb[1:1:1]": 52.900154679,
+ "./qa/specs/features/ee/browser_ui/13_secure/secret_push_protection_spec.rb[1:1:2:1]": 91.055082683,
+ "./qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb[1:1:1:1:1]": 41.12117455,
+ "./qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb[1:1:1:2:1]": 26.722701793,
+ "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_explain_code_spec.rb[1:1:1]": 36.093509303,
+ "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb[1:1:1:1:1]": 33.151750739,
+ "./qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb[1:1:1:2:1]": 18.024827953,
+ "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:1]": 28.002666148,
+ "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:2]": 12.972319109,
+ "./qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb[1:1:3]": 17.53335461,
+ "./qa/specs/features/ee/browser_ui/2_plan/analytics/contribution_analytics_spec.rb[1:1:1]": 180.922854976,
+ "./qa/specs/features/ee/browser_ui/2_plan/analytics/mr_analytics_spec.rb[1:1:1]": 72.150498024,
+ "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:1:1:1:1]": 27.43003747,
+ "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:1:2:1:1]": 29.836218343,
+ "./qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb[1:1:2:1]": 18.390120527,
+ "./qa/specs/features/ee/browser_ui/2_plan/burndown_chart/burndown_chart_spec.rb[1:1:1]": 23.40066441,
+ "./qa/specs/features/ee/browser_ui/2_plan/custom_email/custom_email_spec.rb[1:1:1]": 17.422913947,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:1]": 59.62045453,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:2]": 58.326442402,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:1]": 54.023644397,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:2]": 52.425950405,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:1:3]": 95.461193071,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb[1:1:3:2]": 62.662168615,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/promote_issue_to_epic_spec.rb[1:1:1]": 53.152013451,
+ "./qa/specs/features/ee/browser_ui/2_plan/epic/roadmap_spec.rb[1:1:1]": 15.612040113,
+ "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb[1:1:1:1]": 20.81509968,
+ "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb[1:1:2:1]": 22.319474112,
+ "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/delete_group_wiki_page_spec.rb[1:1:1]": 17.688236191,
+ "./qa/specs/features/ee/browser_ui/2_plan/group_wiki/file_upload_group_wiki_page_spec.rb[1:1:1]": 36.245175063,
+ "./qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb[1:1:1:1]": 16.581532077,
+ "./qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb[1:2:1:1]": 19.545484835,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue/default_issue_template_spec.rb[1:1:1]": 29.981502699,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/configurable_issue_board_spec.rb[1:1:1]": 20.511514982,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/configure_issue_board_by_label_spec.rb[1:1:1]": 28.127288041,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/create_group_issue_board_spec.rb[1:1:1]": 33.431527318,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/group_issue_boards_spec.rb[1:1:1]": 38.178550758,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:1:1]": 26.629277322,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:2:1]": 27.928318194,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb[1:1:3:1]": 29.07943222,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/read_only_board_configuration_spec.rb[1:1:1]": 31.767948444,
+ "./qa/specs/features/ee/browser_ui/2_plan/issue_boards/sum_of_issues_weights_spec.rb[1:1:1]": 24.656618797,
+ "./qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb[1:1:1:1]": 21.513998208,
+ "./qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb[1:2:1:1]": 23.008447564,
+ "./qa/specs/features/ee/browser_ui/2_plan/issues_weight/issue_weight_visualization_spec.rb[1:1:1]": 35.332557938,
+ "./qa/specs/features/ee/browser_ui/2_plan/iterations/assign_group_iteration_spec.rb[1:1:1]": 30.182850649,
+ "./qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb[1:1:1:1]": 22.77211149,
+ "./qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb[1:1:2:1]": 22.382768989,
+ "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/four_assignees_spec.rb[1:1:1]": 40.772116388,
+ "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb[1:1:1]": 42.995169671,
+ "./qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb[1:1:2]": 31.766594948,
+ "./qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb[1:1:1]": 25.870807747,
+ "./qa/specs/features/ee/browser_ui/3_create/merge_request/approval_rules_spec.rb[1:1:1]": 135.927114261,
+ "./qa/specs/features/ee/browser_ui/3_create/merge_request/default_merge_request_template_spec.rb[1:1:1]": 45.063333201,
+ "./qa/specs/features/ee/browser_ui/3_create/merge_request/generate_commit_message_spec.rb[1:1:1:1]": 31.566704251,
+ "./qa/specs/features/ee/browser_ui/3_create/remote_development/workspace_actions_spec.rb[1:1:1:1:1]": 543.233404997,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/assign_code_owners_spec.rb[1:1:1]": 59.357746585,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/code_owners_spec.rb[1:1:1]": 36.869256928,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:1]": 73.555358333,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:2]": 63.769523249,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:3]": 54.946021565,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb[1:1:4]": 54.274400106,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/group_file_template_spec.rb[1:1:1]": 43.200725758,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb[1:1:1:1:1:1]": 68.616100561,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb[1:1:1:2:1:1]": 60.367746379,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:1:1:1]": 67.745240209,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:2:1:1]": 67.313053176,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb[1:1:1:3:1:1]": 76.575355738,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb[1:1:1:1]": 24.665381705,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb[1:1:2:1]": 16.446563273,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb[1:1:1:1]": 51.156151837,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb[1:1:3:1]": 125.360526665,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_http_spec.rb[1:1:1]": 44.548635509,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_ssh_with_key_spec.rb[1:1:1]": 74.217703857,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:1]": 34.597731404,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:2]": 39.457798207,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:3]": 44.211318518,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:4]": 43.758707832,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:5]": 65.915764995,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:6]": 44.789674449,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:7]": 52.708683029,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:8]": 43.741448548,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:1:9]": 53.908735612,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb[1:1:2:1]": 52.319661426,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:1:1:1]": 49.582928321,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:1:2:1]": 58.231285369,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:2:1:1]": 51.255214161,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:2:2:1]": 55.641634771,
+ "./qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb[1:1:3:1:1]": 48.25520818,
+ "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:1:1:1:1]": 25.228049045,
+ "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:1:2:1:1]": 28.303238802,
+ "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:1:2:1:1]": 29.189875091,
+ "./qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb[1:1:2:2:1:1]": 27.871530722,
+ "./qa/specs/features/ee/browser_ui/4_verify/multi-project_pipelines_spec.rb[1:1:1]": 44.332298042,
+ "./qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb[1:1:1]": 56.986383487,
+ "./qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb[1:1:2]": 37.654214244,
+ "./qa/specs/features/ee/browser_ui/4_verify/pipeline_for_merged_result_spec.rb[1:1:1]": 64.50677508,
+ "./qa/specs/features/ee/browser_ui/4_verify/pipeline_subscription_with_group_owned_project_spec.rb[1:1:1:1]": 65.356541838,
+ "./qa/specs/features/ee/browser_ui/4_verify/root_cause_analysis_with_duo_chat_spec.rb[1:1:1:1]": 33.753791004,
+ "./qa/specs/features/ee/browser_ui/8_monitor/incident_management/incident_quick_action_spec.rb[1:1:1]": 22.417525672,
+ "./qa/specs/features/ee/browser_ui/9_tenant_scale/share_group_with_group_spec.rb[1:1:1]": 21.968808136
}
diff --git a/qa/knapsack/master_report.json b/qa/knapsack/master_report.json
index de56d4c558f..aaf161d29ed 100644
--- a/qa/knapsack/master_report.json
+++ b/qa/knapsack/master_report.json
@@ -1,293 +1,291 @@
{
- "qa/specs/features/api/10_govern/group_access_token_spec.rb": 32.98999308,
- "qa/specs/features/api/10_govern/project_access_token_spec.rb": 75.62535221,
- "qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb": 97.971406904,
- "qa/specs/features/api/12_systems/gitaly/backend_node_recovery_spec.rb": 99.394917952,
- "qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb": 111.202909403,
- "qa/specs/features/api/12_systems/gitaly/gitaly_mtls_spec.rb": 23.128792633,
- "qa/specs/features/api/1_manage/import/import_github_repo_spec.rb": 98.601690677,
- "qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb": 63.884309438,
- "qa/specs/features/api/1_manage/migration/gitlab_migration_group_spec.rb": 60.555716827,
- "qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb": 185.120150591,
- "qa/specs/features/api/1_manage/migration/gitlab_migration_pipeline_spec.rb": 97.451122042,
- "qa/specs/features/api/1_manage/migration/gitlab_migration_project_spec.rb": 101.663654195,
- "qa/specs/features/api/1_manage/rate_limits_spec.rb": 14.907381728,
- "qa/specs/features/api/2_plan/closes_issue_via_pushing_a_commit_spec.rb": 25.755076546,
- "qa/specs/features/api/3_create/merge_request/push_options_mwps_spec.rb": 16.82332341,
- "qa/specs/features/api/3_create/merge_request/push_options_remove_source_branch_spec.rb": 22.433046338,
- "qa/specs/features/api/3_create/merge_request/push_options_spec.rb": 39.80516242,
- "qa/specs/features/api/3_create/merge_request/view_merge_requests_spec.rb": 1.38181908,
- "qa/specs/features/api/3_create/repository/add_list_delete_branches_spec.rb": 25.431371545,
- "qa/specs/features/api/3_create/repository/commit_to_templated_project_spec.rb": 22.631262867,
- "qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb": 26.793694843000004,
- "qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb": 16.670677201,
- "qa/specs/features/api/3_create/repository/push_postreceive_idempotent_spec.rb": 25.454150535,
- "qa/specs/features/api/3_create/repository/storage_size_spec.rb": 28.961005929,
- "qa/specs/features/api/3_create/repository/tag_revision_trigger_prereceive_hook_spec.rb": 10.547959073,
- "qa/specs/features/api/4_verify/api_variable_inheritance_with_forward_pipeline_variables_spec.rb": 95.84142065,
- "qa/specs/features/api/4_verify/cancel_pipeline_when_block_user_spec.rb": 26.575834034,
- "qa/specs/features/api/4_verify/file_variable_spec.rb": 60.79006248,
- "qa/specs/features/api/4_verify/job_downloads_artifacts_spec.rb": 39.828565691,
- "qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb": 69.770433031,
- "qa/specs/features/api/8_monitor/metrics_spec.rb": 5.996862642,
- "qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb": 145.832127287,
- "qa/specs/features/api/9_tenant_scale/users_spec.rb": 3.88771732,
- "qa/specs/features/browser_ui/10_govern/group/group_access_token_spec.rb": 18.955245548,
- "qa/specs/features/browser_ui/10_govern/login/2fa_recovery_spec.rb": 51.379482902,
- "qa/specs/features/browser_ui/10_govern/login/2fa_ssh_recovery_spec.rb": 63.15838517,
- "qa/specs/features/browser_ui/10_govern/login/log_in_spec.rb": 13.427990734,
- "qa/specs/features/browser_ui/10_govern/login/log_in_with_2fa_spec.rb": 94.549567111,
- "qa/specs/features/browser_ui/10_govern/login/log_into_gitlab_via_ldap_spec.rb": 4.26200593,
- "qa/specs/features/browser_ui/10_govern/login/log_into_mattermost_via_gitlab_spec.rb": 30.355360322,
- "qa/specs/features/browser_ui/10_govern/login/login_via_instance_wide_saml_sso_spec.rb": 16.78395848,
- "qa/specs/features/browser_ui/10_govern/login/oauth_login_with_github_spec.rb": 41.820836674,
- "qa/specs/features/browser_ui/10_govern/login/register_spec.rb": 101.892100194,
- "qa/specs/features/browser_ui/10_govern/project/project_access_token_spec.rb": 25.906346348,
- "qa/specs/features/browser_ui/10_govern/user/impersonation_token_spec.rb": 30.138602861,
- "qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb": 44.138226734999996,
- "qa/specs/features/browser_ui/14_analytics/performance_bar_spec.rb": 60.04423653,
- "qa/specs/features/browser_ui/14_analytics/service_ping_default_enabled_spec.rb": 18.762676849,
- "qa/specs/features/browser_ui/14_analytics/service_ping_disabled_spec.rb": 13.578009866,
- "qa/specs/features/browser_ui/1_manage/integrations/jenkins/jenkins_build_status_spec.rb": 61.994387357,
- "qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb": 65.227220864,
- "qa/specs/features/browser_ui/1_manage/integrations/jira/jira_issue_import_spec.rb": 46.776170762,
- "qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb": 73.78475297,
- "qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_group_spec.rb": 57.03791635,
- "qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_user_contribution_reassignment_spec.rb": 181.520241604,
- "qa/specs/features/browser_ui/2_plan/design_management/add_design_content_spec.rb": 23.031130269,
- "qa/specs/features/browser_ui/2_plan/design_management/archive_design_content_spec.rb": 29.780177896,
- "qa/specs/features/browser_ui/2_plan/design_management/modify_design_content_spec.rb": 30.636613756,
- "qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb": 16.470446876,
- "qa/specs/features/browser_ui/2_plan/issue/collapse_comments_in_discussions_spec.rb": 23.402340109,
- "qa/specs/features/browser_ui/2_plan/issue/comment_issue_spec.rb": 26.608420993,
- "qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb": 226.30203992999998,
- "qa/specs/features/browser_ui/2_plan/issue/custom_issue_template_spec.rb": 30.203090855,
- "qa/specs/features/browser_ui/2_plan/issue/export_as_csv_spec.rb": 40.13231434,
- "qa/specs/features/browser_ui/2_plan/issue/filter_issue_comments_spec.rb": 24.860881753,
- "qa/specs/features/browser_ui/2_plan/issue/issue_suggestions_spec.rb": 24.575106282,
- "qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb": 33.018544554,
- "qa/specs/features/browser_ui/2_plan/issue/real_time_assignee_spec.rb": 26.291870234,
- "qa/specs/features/browser_ui/2_plan/issue_boards/focus_mode_spec.rb": 17.561810633,
- "qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb": 106.336658382,
- "qa/specs/features/browser_ui/2_plan/milestone/create_group_milestone_spec.rb": 22.587552274,
- "qa/specs/features/browser_ui/2_plan/milestone/create_project_milestone_spec.rb": 28.049283666,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb": 108.875066367,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb": 69.419140123,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_directory_management_spec.rb": 25.037219196,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_file_upload_spec.rb": 38.413254353,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb": 70.598098006,
- "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb": 59.092698467000005,
- "qa/specs/features/browser_ui/2_plan/related_issues/related_issues_spec.rb": 24.049024633,
- "qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb": 83.35424972999999,
- "qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_a_merge_spec.rb": 65.769218013,
- "qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_commit_spec.rb": 30.017509364,
- "qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb": 92.452005772,
- "qa/specs/features/browser_ui/3_create/merge_request/merge_merge_request_from_fork_spec.rb": 46.535589667,
- "qa/specs/features/browser_ui/3_create/merge_request/merge_request_set_to_auto_merge_spec.rb": 85.059614424,
- "qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb": 58.678788745,
- "qa/specs/features/browser_ui/3_create/merge_request/revert/revert_commit_spec.rb": 38.031947034,
- "qa/specs/features/browser_ui/3_create/merge_request/revert/reverting_merge_request_spec.rb": 107.744959716,
- "qa/specs/features/browser_ui/3_create/merge_request/suggestions/batch_suggestion_spec.rb": 64.079688598,
- "qa/specs/features/browser_ui/3_create/merge_request/suggestions/custom_commit_suggestion_spec.rb": 60.464588091,
- "qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb": 47.575329799,
- "qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb": 27.119274477,
- "qa/specs/features/browser_ui/3_create/repository/add_new_branch_rule_spec.rb": 30.340932638,
- "qa/specs/features/browser_ui/3_create/repository/branch_with_unusual_name_spec.rb": 24.416460797,
- "qa/specs/features/browser_ui/3_create/repository/clone_spec.rb": 26.239438601,
- "qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb": 37.20657738,
- "qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb": 142.734936736,
- "qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_http_spec.rb": 24.264817229,
- "qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_ssh_spec.rb": 27.222468229,
- "qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb": 49.703005927,
- "qa/specs/features/browser_ui/3_create/repository/push_mirroring_lfs_over_http_spec.rb": 84.31200969,
- "qa/specs/features/browser_ui/3_create/repository/push_mirroring_over_http_spec.rb": 77.096792386,
- "qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb": 54.592720064000005,
- "qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb": 43.343972126,
- "qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb": 100.70291134499999,
- "qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb": 57.116473049999996,
- "qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb": 22.332861645,
- "qa/specs/features/browser_ui/3_create/repository/push_to_canary_gitaly_spec.rb": 21.55505836,
- "qa/specs/features/browser_ui/3_create/repository/ssh_key_support_create_spec.rb": 29.287778902,
- "qa/specs/features/browser_ui/3_create/repository/ssh_key_support_delete_spec.rb": 26.294830596,
- "qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb": 65.051120837,
- "qa/specs/features/browser_ui/3_create/snippet/add_comment_to_snippet_spec.rb": 31.803789523,
- "qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb": 51.590373962,
- "qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb": 83.905883157,
- "qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb": 73.04176784399999,
- "qa/specs/features/browser_ui/3_create/snippet/copy_snippet_file_contents_spec.rb": 20.481249541,
- "qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_spec.rb": 8.514641421,
- "qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_with_multiple_files_spec.rb": 14.67105945,
- "qa/specs/features/browser_ui/3_create/snippet/create_project_snippet_with_multiple_files_spec.rb": 28.514565884,
- "qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb": 47.298550792,
- "qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb": 34.434016889,
- "qa/specs/features/browser_ui/3_create/source_editor/source_editor_toolbar_spec.rb": 25.014898858,
- "qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb": 42.752924537,
- "qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb": 84.502238036,
- "qa/specs/features/browser_ui/3_create/web_ide/closing_web_ide_with_unsaved_changes_spec.rb": 24.250358427,
- "qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb": 180.07976596700001,
- "qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb": 96.65252819099999,
- "qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb": 86.128659366,
- "qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb": 121.634773435,
- "qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb": 116.303910391,
- "qa/specs/features/browser_ui/4_verify/ci_components_catalog/run_component_in_project_pipeline_spec.rb": 55.741715074,
- "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/expose_job_artifacts_in_mr_spec.rb": 66.436168654,
- "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb": 260.885521371,
- "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb": 319.85414603000004,
- "qa/specs/features/browser_ui/4_verify/ci_project_artifacts/user_can_bulk_delete_artifacts_spec.rb": 73.521802689,
- "qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb": 134.719012043,
- "qa/specs/features/browser_ui/4_verify/ci_variable/raw_variables_defined_in_yaml_spec.rb": 33.577634151,
- "qa/specs/features/browser_ui/4_verify/ci_variable/ui_variable_inheritable_when_forward_pipeline_variables_true_spec.rb": 84.286087112,
- "qa/specs/features/browser_ui/4_verify/pipeline/include_local_config_file_paths_with_wildcard_spec.rb": 18.525020519,
- "qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_a_project_spec.rb": 54.886224503,
- "qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_multiple_projects_spec.rb": 64.229339559,
- "qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb": 112.862791923,
- "qa/specs/features/browser_ui/4_verify/pipeline/pass_dotenv_variables_to_downstream_via_bridge_spec.rb": 66.298914071,
- "qa/specs/features/browser_ui/4_verify/pipeline/run_pipeline_with_manual_jobs_spec.rb": 66.049358924,
- "qa/specs/features/browser_ui/4_verify/pipeline/trigger_child_pipeline_with_manual_spec.rb": 65.493875232,
- "qa/specs/features/browser_ui/4_verify/pipeline/trigger_matrix_spec.rb": 50.079680864,
- "qa/specs/features/browser_ui/4_verify/pipeline/update_ci_file_with_pipeline_editor_spec.rb": 31.110243067,
- "qa/specs/features/browser_ui/4_verify/runner/deprecated_registration_token_spec.rb": 23.618801349,
- "qa/specs/features/browser_ui/4_verify/runner/deprecated_unregister_runner_spec.rb": 39.029569115,
- "qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_counts_spec.rb": 25.616882657,
- "qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_status_counts_spec.rb": 17.609245948,
- "qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb": 20.499690898,
- "qa/specs/features/browser_ui/4_verify/runner/register_project_runner_spec.rb": 45.242119367,
- "qa/specs/features/browser_ui/4_verify/runner/unregister_runner_spec.rb": 26.076009522,
- "qa/specs/features/browser_ui/4_verify/testing/endpoint_coverage_spec.rb": 54.246992046,
- "qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb": 165.693115559,
- "qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb": 345.187678671,
- "qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb": 172.648268037,
- "qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb": 67.483790802,
- "qa/specs/features/browser_ui/5_package/package_registry/conan_repository_spec.rb": 97.870222592,
- "qa/specs/features/browser_ui/5_package/package_registry/generic_repository_spec.rb": 133.504862177,
- "qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb": 382.312482672,
- "qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb": 591.8489436350001,
- "qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb": 285.250109461,
- "qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb": 304.329392175,
- "qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb": 335.093454552,
- "qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb": 285.115592965,
- "qa/specs/features/browser_ui/5_package/package_registry/pypi_repository_spec.rb": 107.899088585,
- "qa/specs/features/browser_ui/6_release/deploy_key/add_deploy_key_spec.rb": 29.988003167,
- "qa/specs/features/browser_ui/6_release/deploy_key/clone_using_deploy_key_spec.rb": 187.45400691700002,
- "qa/specs/features/browser_ui/6_release/deploy_token/add_deploy_token_spec.rb": 15.694988036,
- "qa/specs/features/browser_ui/8_monitor/alert_management/alert_settings_create_new_alerts_spec.rb": 56.424444699,
- "qa/specs/features/browser_ui/8_monitor/alert_management/automatically_creates_incident_for_alert_spec.rb": 69.98793122000001,
- "qa/specs/features/browser_ui/8_monitor/alert_management/create_alert_using_authorization_key_spec.rb": 47.768660694,
- "qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb": 69.965951869,
- "qa/specs/features/browser_ui/8_monitor/alert_management/recovery_alert_resolves_correct_alert_spec.rb": 29.011678497,
- "qa/specs/features/browser_ui/9_tenant_scale/group/create_group_with_mattermost_team_spec.rb": 9.344660726,
- "qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb": 65.26559089599999,
- "qa/specs/features/browser_ui/9_tenant_scale/group/transfer_project_spec.rb": 27.244025476,
- "qa/specs/features/browser_ui/9_tenant_scale/project/add_project_member_spec.rb": 32.014529209,
- "qa/specs/features/browser_ui/9_tenant_scale/project/create_project_badge_spec.rb": 20.068110387,
- "qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb": 67.337069478,
- "qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb": 22.587608685,
- "qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb": 53.449546747,
- "qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb": 171.14910748399998,
- "qa/specs/features/browser_ui/9_tenant_scale/project/view_project_activity_spec.rb": 35.743874052,
- "qa/specs/features/browser_ui/9_tenant_scale/user/follow_user_activity_spec.rb": 31.223309247,
- "qa/specs/features/browser_ui/9_tenant_scale/user/parent_group_access_termination_spec.rb": 27.375015555,
- "qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb": 66.960839159,
- "qa/specs/features/ee/api/10_govern/compliance_pipeline_spec.rb": 38.562984764,
- "qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb": 37.026030479,
- "qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb": 80.57801924500001,
- "qa/specs/features/ee/api/1_manage/import/import_github_repo_spec.rb": 131.481349437,
- "qa/specs/features/ee/api/1_manage/integrations/group_webhook_events_spec.rb": 13.047155732,
- "qa/specs/features/ee/api/1_manage/migration/gitlab_migration_group_spec.rb": 62.834426385,
- "qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb": 2.3438559850000003,
- "qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb": 82.006404714,
- "qa/specs/features/ee/api/3_create/code_suggestions_spec.rb": 39.562657235,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/advanced_global_advanced_syntax_search_spec.rb": 105.411032861,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/elasticsearch_api_spec.rb": 95.84806871400001,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/commit_index/commit_index_spec.rb": 31.44747142,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/issues_index/issue_index_spec.rb": 72.872250958,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/main_index/blob_index_spec.rb": 40.252409182,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/merge_request_index/merge_request_index_spec.rb": 63.477970837,
- "qa/specs/features/ee/api/9_tenant_scale/elasticsearch/index_tests/notes_index/note_index_spec.rb": 62.85925672,
- "qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb": 133.854524265,
- "qa/specs/features/ee/browser_ui/10_govern/create_merge_request_with_secure_spec.rb": 71.378891385,
- "qa/specs/features/ee/browser_ui/10_govern/dismissed_vulnerabilities_in_security_widget_spec.rb": 106.310033633,
- "qa/specs/features/ee/browser_ui/10_govern/explain_this_vulnerability_spec.rb": 48.656577734,
- "qa/specs/features/ee/browser_ui/10_govern/export_vulnerability_report_spec.rb": 15.908063331,
- "qa/specs/features/ee/browser_ui/10_govern/fix_vulnerability_workflow_spec.rb": 144.069410289,
- "qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb": 58.155441685,
- "qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb": 115.65698714400001,
- "qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb": 122.51110615500002,
- "qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb": 123.506448268,
- "qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb": 244.91917489399998,
- "qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb": 167.819808879,
- "qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb": 231.473886222,
- "qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb": 62.095760528,
- "qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb": 158.81351263,
- "qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_license_finding_spec.rb": 49.199501503,
- "qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb": 210.54865648499998,
- "qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb": 81.540982641,
- "qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb": 363.572918207,
- "qa/specs/features/ee/browser_ui/10_govern/user/minimal_access_user_spec.rb": 24.151715831,
- "qa/specs/features/ee/browser_ui/10_govern/vulnerabilities_jira_integration_spec.rb": 42.562710221,
- "qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb": 342.169147882,
- "qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb": 19.519817991,
- "qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb": 7.57460835,
- "qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb": 184.78561392999998,
- "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/free_namespace_storage_spec.rb": 341.009588447,
- "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/saas_user_caps_spec.rb": 44.723411659,
- "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/user_registration_billing_spec.rb": 23.297850153,
- "qa/specs/features/ee/browser_ui/13_secure/cvs_dependency_scanning_spec.rb": 75.638407947,
- "qa/specs/features/ee/browser_ui/13_secure/license_scanning_spec.rb": 116.30680739,
- "qa/specs/features/ee/browser_ui/13_secure/on_demand_dast_spec.rb": 110.920330885,
- "qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb": 68.967794595,
- "qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb": 43.075428703,
- "qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/root_cause_analysis_with_duo_chat_spec.rb": 37.931425691,
- "qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb": 58.653198608000004,
- "qa/specs/features/ee/browser_ui/2_plan/analytics/contribution_analytics_spec.rb": 211.292243553,
- "qa/specs/features/ee/browser_ui/2_plan/analytics/mr_analytics_spec.rb": 74.28075828,
- "qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb": 75.671017318,
- "qa/specs/features/ee/browser_ui/2_plan/burndown_chart/burndown_chart_spec.rb": 22.641035335,
- "qa/specs/features/ee/browser_ui/2_plan/custom_email/custom_email_spec.rb": 16.821151717,
- "qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb": 375.506600713,
- "qa/specs/features/ee/browser_ui/2_plan/epic/promote_issue_to_epic_spec.rb": 63.20070909,
- "qa/specs/features/ee/browser_ui/2_plan/epic/roadmap_spec.rb": 14.576608489,
- "qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb": 41.373198799,
- "qa/specs/features/ee/browser_ui/2_plan/group_wiki/delete_group_wiki_page_spec.rb": 17.600620542,
- "qa/specs/features/ee/browser_ui/2_plan/group_wiki/file_upload_group_wiki_page_spec.rb": 35.702110881,
- "qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb": 34.127026174,
- "qa/specs/features/ee/browser_ui/2_plan/issue/default_issue_template_spec.rb": 30.402700367,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/configurable_issue_board_spec.rb": 19.263109267,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/configure_issue_board_by_label_spec.rb": 26.399046988,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/create_group_issue_board_spec.rb": 44.058644116,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/group_issue_boards_spec.rb": 42.505086799,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb": 66.01471323000001,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/read_only_board_configuration_spec.rb": 32.519977572,
- "qa/specs/features/ee/browser_ui/2_plan/issue_boards/sum_of_issues_weights_spec.rb": 22.535067519,
- "qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb": 31.517568487,
- "qa/specs/features/ee/browser_ui/2_plan/issues_weight/issue_weight_visualization_spec.rb": 34.898537993,
- "qa/specs/features/ee/browser_ui/2_plan/iterations/assign_group_iteration_spec.rb": 22.289509862,
- "qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb": 45.105684972999995,
- "qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/four_assignees_spec.rb": 39.05453727,
- "qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb": 82.65206438300001,
- "qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb": 24.677114242,
- "qa/specs/features/ee/browser_ui/3_create/merge_request/approval_rules_spec.rb": 106.008473686,
- "qa/specs/features/ee/browser_ui/3_create/merge_request/default_merge_request_template_spec.rb": 48.185280618,
- "qa/specs/features/ee/browser_ui/3_create/merge_request/generate_commit_message_spec.rb": 40.390914617,
- "qa/specs/features/ee/browser_ui/3_create/remote_development/workspace_actions_spec.rb": 656.975314259,
- "qa/specs/features/ee/browser_ui/3_create/repository/assign_code_owners_spec.rb": 77.835283702,
- "qa/specs/features/ee/browser_ui/3_create/repository/code_owners_spec.rb": 29.858441116,
- "qa/specs/features/ee/browser_ui/3_create/repository/duo_chat_explain_code_spec.rb": 28.16854103,
- "qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb": 255.24311795800003,
- "qa/specs/features/ee/browser_ui/3_create/repository/group_file_template_spec.rb": 43.29283679,
- "qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb": 133.52674356,
- "qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb": 314.069409969,
- "qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb": 49.551448328,
- "qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb": 195.161257407,
- "qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_http_spec.rb": 54.098731282,
- "qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_ssh_with_key_spec.rb": 54.379182606,
- "qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb": 434.95902557700003,
- "qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb": 259.66672728500004,
- "qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb": 106.25856156900001,
- "qa/specs/features/ee/browser_ui/4_verify/multi-project_pipelines_spec.rb": 89.697462894,
- "qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb": 110.677573526,
- "qa/specs/features/ee/browser_ui/4_verify/pipeline_for_merged_result_spec.rb": 53.854234828,
- "qa/specs/features/ee/browser_ui/4_verify/pipeline_subscription_with_group_owned_project_spec.rb": 61.396500039,
- "qa/specs/features/ee/browser_ui/8_monitor/incident_management/incident_quick_action_spec.rb": 16.936613385,
- "qa/specs/features/ee/browser_ui/9_tenant_scale/group/share_group_with_group_spec.rb": 33.98725241
+ "qa/specs/features/api/10_govern/group_access_token_spec.rb": 33.40652677,
+ "qa/specs/features/api/10_govern/project_access_token_spec.rb": 108.14779121100001,
+ "qa/specs/features/api/12_systems/gitaly/automatic_failover_and_recovery_spec.rb": 99.263909494,
+ "qa/specs/features/api/12_systems/gitaly/backend_node_recovery_spec.rb": 102.480642205,
+ "qa/specs/features/api/12_systems/gitaly/distributed_reads_spec.rb": 102.77347513500001,
+ "qa/specs/features/api/12_systems/gitaly/gitaly_mtls_spec.rb": 19.340814466,
+ "qa/specs/features/api/1_manage/import/import_github_repo_spec.rb": 127.489575968,
+ "qa/specs/features/api/1_manage/integrations/webhook_events_spec.rb": 56.808515615,
+ "qa/specs/features/api/1_manage/migration/gitlab_migration_group_spec.rb": 59.361528533,
+ "qa/specs/features/api/1_manage/migration/gitlab_migration_issue_spec.rb": 215.076974441,
+ "qa/specs/features/api/1_manage/migration/gitlab_migration_pipeline_spec.rb": 91.729914798,
+ "qa/specs/features/api/1_manage/rate_limits_spec.rb": 14.607217966,
+ "qa/specs/features/api/2_plan/closes_issue_via_pushing_a_commit_spec.rb": 23.008684037,
+ "qa/specs/features/api/3_create/merge_request/push_options_mwps_spec.rb": 22.494501055,
+ "qa/specs/features/api/3_create/merge_request/push_options_remove_source_branch_spec.rb": 43.636242201,
+ "qa/specs/features/api/3_create/merge_request/push_options_spec.rb": 37.520196219,
+ "qa/specs/features/api/3_create/merge_request/view_merge_requests_spec.rb": 1.082708408,
+ "qa/specs/features/api/3_create/repository/add_list_delete_branches_spec.rb": 17.708858703,
+ "qa/specs/features/api/3_create/repository/commit_to_templated_project_spec.rb": 10.779747315,
+ "qa/specs/features/api/3_create/repository/default_branch_name_setting_spec.rb": 11.272503979,
+ "qa/specs/features/api/3_create/repository/files_spec.rb": 9.00272815,
+ "qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb": 15.180661393,
+ "qa/specs/features/api/3_create/repository/push_postreceive_idempotent_spec.rb": 25.050371408,
+ "qa/specs/features/api/3_create/repository/storage_size_spec.rb": 19.204492761,
+ "qa/specs/features/api/3_create/repository/tag_revision_trigger_prereceive_hook_spec.rb": 11.841812764,
+ "qa/specs/features/api/4_verify/api_variable_inheritance_with_forward_pipeline_variables_spec.rb": 61.1731228,
+ "qa/specs/features/api/4_verify/cancel_pipeline_when_block_user_spec.rb": 26.376580723,
+ "qa/specs/features/api/4_verify/file_variable_spec.rb": 68.844644612,
+ "qa/specs/features/api/4_verify/job_downloads_artifacts_spec.rb": 27.161383435,
+ "qa/specs/features/api/5_package/container_registry/saas/container_registry_spec.rb": 69.033341671,
+ "qa/specs/features/api/8_monitor/metrics_spec.rb": 6.335980976,
+ "qa/specs/features/api/9_tenant_scale/user_inherited_access_spec.rb": 131.510213571,
+ "qa/specs/features/api/9_tenant_scale/users_spec.rb": 6.051365423,
+ "qa/specs/features/browser_ui/10_govern/group/group_access_token_spec.rb": 20.474029766,
+ "qa/specs/features/browser_ui/10_govern/login/2fa_recovery_spec.rb": 53.607716173,
+ "qa/specs/features/browser_ui/10_govern/login/2fa_ssh_recovery_spec.rb": 57.850255819,
+ "qa/specs/features/browser_ui/10_govern/login/log_in_spec.rb": 13.623114893,
+ "qa/specs/features/browser_ui/10_govern/login/log_in_with_2fa_spec.rb": 100.334444961,
+ "qa/specs/features/browser_ui/10_govern/login/log_into_gitlab_via_ldap_spec.rb": 4.92612366,
+ "qa/specs/features/browser_ui/10_govern/login/log_into_mattermost_via_gitlab_spec.rb": 30.722237006,
+ "qa/specs/features/browser_ui/10_govern/login/login_via_instance_wide_saml_sso_spec.rb": 20.068269269,
+ "qa/specs/features/browser_ui/10_govern/login/oauth_login_with_github_spec.rb": 42.085418594,
+ "qa/specs/features/browser_ui/10_govern/login/register_spec.rb": 115.60960340700001,
+ "qa/specs/features/browser_ui/10_govern/project/project_access_token_spec.rb": 22.744552996,
+ "qa/specs/features/browser_ui/10_govern/user/impersonation_token_spec.rb": 39.080742241,
+ "qa/specs/features/browser_ui/10_govern/user/user_access_termination_spec.rb": 40.930434999,
+ "qa/specs/features/browser_ui/14_analytics/performance_bar_spec.rb": 41.248273954,
+ "qa/specs/features/browser_ui/14_analytics/service_ping_default_enabled_spec.rb": 23.762679721,
+ "qa/specs/features/browser_ui/14_analytics/service_ping_disabled_spec.rb": 16.107325885,
+ "qa/specs/features/browser_ui/1_manage/integrations/jenkins/jenkins_build_status_spec.rb": 63.049141584,
+ "qa/specs/features/browser_ui/1_manage/integrations/jira/jira_basic_integration_spec.rb": 63.873755599,
+ "qa/specs/features/browser_ui/1_manage/integrations/jira/jira_issue_import_spec.rb": 53.065096905,
+ "qa/specs/features/browser_ui/1_manage/integrations/pipeline_status_emails_spec.rb": 88.621169064,
+ "qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_group_spec.rb": 72.757495199,
+ "qa/specs/features/browser_ui/1_manage/migration/gitlab_migration_user_contribution_reassignment_spec.rb": 177.476700287,
+ "qa/specs/features/browser_ui/2_plan/design_management/add_design_content_spec.rb": 22.390309891,
+ "qa/specs/features/browser_ui/2_plan/design_management/archive_design_content_spec.rb": 33.211751438,
+ "qa/specs/features/browser_ui/2_plan/design_management/modify_design_content_spec.rb": 25.175048505,
+ "qa/specs/features/browser_ui/2_plan/email/trigger_email_notification_spec.rb": 19.399112122,
+ "qa/specs/features/browser_ui/2_plan/issue/collapse_comments_in_discussions_spec.rb": 22.48118938,
+ "qa/specs/features/browser_ui/2_plan/issue/comment_issue_spec.rb": 26.180878901,
+ "qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb": 202.763821406,
+ "qa/specs/features/browser_ui/2_plan/issue/custom_issue_template_spec.rb": 31.199291474,
+ "qa/specs/features/browser_ui/2_plan/issue/export_as_csv_spec.rb": 42.882703366,
+ "qa/specs/features/browser_ui/2_plan/issue/issue_suggestions_spec.rb": 25.652492251,
+ "qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb": 34.942500464,
+ "qa/specs/features/browser_ui/2_plan/issue/real_time_assignee_spec.rb": 31.47515856,
+ "qa/specs/features/browser_ui/2_plan/issue_boards/focus_mode_spec.rb": 19.343151789,
+ "qa/specs/features/browser_ui/2_plan/milestone/assign_milestone_spec.rb": 106.787337649,
+ "qa/specs/features/browser_ui/2_plan/milestone/create_group_milestone_spec.rb": 22.265545915,
+ "qa/specs/features/browser_ui/2_plan/milestone/create_project_milestone_spec.rb": 30.000384865,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_creation_spec.rb": 114.445210364,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_content_manipulation_spec.rb": 72.235405971,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_directory_management_spec.rb": 22.372347952,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_file_upload_spec.rb": 39.202519551,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_list_spec.rb": 88.058121398,
+ "qa/specs/features/browser_ui/2_plan/project_wiki/project_based_page_deletion_spec.rb": 56.673871897,
+ "qa/specs/features/browser_ui/2_plan/related_issues/related_issues_spec.rb": 25.667597999,
+ "qa/specs/features/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb": 85.171982466,
+ "qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_a_merge_spec.rb": 44.176778105,
+ "qa/specs/features/browser_ui/3_create/merge_request/cherry_pick/cherry_pick_commit_spec.rb": 34.686354604,
+ "qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb": 65.810911428,
+ "qa/specs/features/browser_ui/3_create/merge_request/merge_merge_request_from_fork_spec.rb": 39.69523976,
+ "qa/specs/features/browser_ui/3_create/merge_request/merge_request_set_to_auto_merge_spec.rb": 96.135750584,
+ "qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb": 91.869611652,
+ "qa/specs/features/browser_ui/3_create/merge_request/revert/revert_commit_spec.rb": 29.611802805,
+ "qa/specs/features/browser_ui/3_create/merge_request/revert/reverting_merge_request_spec.rb": 55.520810221,
+ "qa/specs/features/browser_ui/3_create/merge_request/suggestions/batch_suggestion_spec.rb": 73.960590807,
+ "qa/specs/features/browser_ui/3_create/merge_request/suggestions/custom_commit_suggestion_spec.rb": 53.032713696,
+ "qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb": 53.95135281,
+ "qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb": 27.930282318,
+ "qa/specs/features/browser_ui/3_create/repository/add_new_branch_rule_spec.rb": 45.270817966,
+ "qa/specs/features/browser_ui/3_create/repository/branch_with_unusual_name_spec.rb": 24.174087797,
+ "qa/specs/features/browser_ui/3_create/repository/clone_spec.rb": 24.501091296,
+ "qa/specs/features/browser_ui/3_create/repository/license_detection_spec.rb": 37.788228757,
+ "qa/specs/features/browser_ui/3_create/repository/protected_tags_spec.rb": 156.75783241,
+ "qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_http_spec.rb": 22.762603095,
+ "qa/specs/features/browser_ui/3_create/repository/protocol_v2_push_ssh_spec.rb": 23.320743313,
+ "qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb": 25.847487444,
+ "qa/specs/features/browser_ui/3_create/repository/push_mirroring_lfs_over_http_spec.rb": 84.458710267,
+ "qa/specs/features/browser_ui/3_create/repository/push_mirroring_over_http_spec.rb": 78.821934437,
+ "qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb": 58.192687617000004,
+ "qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb": 35.895744995,
+ "qa/specs/features/browser_ui/3_create/repository/push_over_ssh_file_size_spec.rb": 60.211859737,
+ "qa/specs/features/browser_ui/3_create/repository/push_over_ssh_spec.rb": 49.343938607,
+ "qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb": 26.67423749,
+ "qa/specs/features/browser_ui/3_create/repository/push_to_canary_gitaly_spec.rb": 23.857914052,
+ "qa/specs/features/browser_ui/3_create/repository/ssh_key_support_create_spec.rb": 21.282368827,
+ "qa/specs/features/browser_ui/3_create/repository/ssh_key_support_delete_spec.rb": 18.902263736,
+ "qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb": 56.115527203,
+ "qa/specs/features/browser_ui/3_create/snippet/add_comment_to_snippet_spec.rb": 31.974285998,
+ "qa/specs/features/browser_ui/3_create/snippet/add_file_to_snippet_spec.rb": 55.954054138000004,
+ "qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_personal_snippet_spec.rb": 76.00938344400001,
+ "qa/specs/features/browser_ui/3_create/snippet/clone_push_pull_project_snippet_spec.rb": 86.193481991,
+ "qa/specs/features/browser_ui/3_create/snippet/copy_snippet_file_contents_spec.rb": 25.41531335,
+ "qa/specs/features/browser_ui/3_create/snippet/create_personal_snippet_with_multiple_files_spec.rb": 16.54897191,
+ "qa/specs/features/browser_ui/3_create/snippet/create_project_snippet_with_multiple_files_spec.rb": 31.074118649,
+ "qa/specs/features/browser_ui/3_create/snippet/delete_file_from_snippet_spec.rb": 46.240431095999995,
+ "qa/specs/features/browser_ui/3_create/snippet/share_snippet_spec.rb": 30.257300877,
+ "qa/specs/features/browser_ui/3_create/source_editor/source_editor_toolbar_spec.rb": 30.364181551,
+ "qa/specs/features/browser_ui/3_create/web_ide/add_first_file_in_web_ide_spec.rb": 38.433381843,
+ "qa/specs/features/browser_ui/3_create/web_ide/add_new_directory_in_web_ide_spec.rb": 101.220843888,
+ "qa/specs/features/browser_ui/3_create/web_ide/closing_web_ide_with_unsaved_changes_spec.rb": 37.055114931,
+ "qa/specs/features/browser_ui/3_create/web_ide/settings_sync_web_ide_spec.rb": 179.651143572,
+ "qa/specs/features/browser_ui/3_create/web_ide/upload_new_file_in_web_ide_spec.rb": 150.02571713999998,
+ "qa/specs/features/browser_ui/4_verify/ci_components_catalog/ci_catalog_sorting_spec.rb": 88.257084475,
+ "qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_glab_spec.rb": 123.628271413,
+ "qa/specs/features/browser_ui/4_verify/ci_components_catalog/release_with_release_cli_spec.rb": 158.557140521,
+ "qa/specs/features/browser_ui/4_verify/ci_components_catalog/run_component_in_project_pipeline_spec.rb": 48.949554375,
+ "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/expose_job_artifacts_in_mr_spec.rb": 37.774771155,
+ "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/job_artifacts_access_keyword_spec.rb": 266.063759199,
+ "qa/specs/features/browser_ui/4_verify/ci_job_artifacts/unlocking_job_artifacts_across_pipelines_spec.rb": 269.653268932,
+ "qa/specs/features/browser_ui/4_verify/ci_project_artifacts/user_can_bulk_delete_artifacts_spec.rb": 73.291987677,
+ "qa/specs/features/browser_ui/4_verify/ci_variable/pipeline_with_protected_variable_spec.rb": 133.265900999,
+ "qa/specs/features/browser_ui/4_verify/ci_variable/raw_variables_defined_in_yaml_spec.rb": 61.572497471,
+ "qa/specs/features/browser_ui/4_verify/ci_variable/ui_variable_inheritable_when_forward_pipeline_variables_true_spec.rb": 74.633719222,
+ "qa/specs/features/browser_ui/4_verify/pipeline/include_local_config_file_paths_with_wildcard_spec.rb": 30.915270131,
+ "qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_a_project_spec.rb": 49.364241601,
+ "qa/specs/features/browser_ui/4_verify/pipeline/include_multiple_files_from_multiple_projects_spec.rb": 49.394313638,
+ "qa/specs/features/browser_ui/4_verify/pipeline/parent_child_pipelines_independent_relationship_spec.rb": 75.159637624,
+ "qa/specs/features/browser_ui/4_verify/pipeline/pass_dotenv_variables_to_downstream_via_bridge_spec.rb": 63.867982759,
+ "qa/specs/features/browser_ui/4_verify/pipeline/run_pipeline_with_manual_jobs_spec.rb": 60.973117906,
+ "qa/specs/features/browser_ui/4_verify/pipeline/trigger_child_pipeline_with_manual_spec.rb": 60.126772749,
+ "qa/specs/features/browser_ui/4_verify/pipeline/trigger_matrix_spec.rb": 41.242408651,
+ "qa/specs/features/browser_ui/4_verify/pipeline/update_ci_file_with_pipeline_editor_spec.rb": 42.089385742,
+ "qa/specs/features/browser_ui/4_verify/runner/deprecated_registration_token_spec.rb": 21.650577048,
+ "qa/specs/features/browser_ui/4_verify/runner/deprecated_unregister_runner_spec.rb": 36.095911812,
+ "qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_counts_spec.rb": 21.918267332,
+ "qa/specs/features/browser_ui/4_verify/runner/fleet_visibility/group_runner_status_counts_spec.rb": 18.97998052,
+ "qa/specs/features/browser_ui/4_verify/runner/register_group_runner_spec.rb": 26.115506564,
+ "qa/specs/features/browser_ui/4_verify/runner/register_project_runner_spec.rb": 52.527923887,
+ "qa/specs/features/browser_ui/4_verify/runner/unregister_runner_spec.rb": 26.236790015,
+ "qa/specs/features/browser_ui/4_verify/testing/endpoint_coverage_spec.rb": 52.316446719,
+ "qa/specs/features/browser_ui/5_package/container_registry/saas/container_registry_spec.rb": 165.634585609,
+ "qa/specs/features/browser_ui/5_package/container_registry/self_managed/container_registry_spec.rb": 347.338332446,
+ "qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb": 199.50891662499998,
+ "qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb": 67.286344045,
+ "qa/specs/features/browser_ui/5_package/package_registry/conan_repository_spec.rb": 109.692268132,
+ "qa/specs/features/browser_ui/5_package/package_registry/generic_repository_spec.rb": 63.838511729,
+ "qa/specs/features/browser_ui/5_package/package_registry/helm_registry_spec.rb": 322.85689752,
+ "qa/specs/features/browser_ui/5_package/package_registry/maven/maven_group_level_spec.rb": 650.299845526,
+ "qa/specs/features/browser_ui/5_package/package_registry/maven/maven_project_level_spec.rb": 296.734672131,
+ "qa/specs/features/browser_ui/5_package/package_registry/maven_gradle_repository_spec.rb": 324.63351607,
+ "qa/specs/features/browser_ui/5_package/package_registry/npm/npm_group_level_spec.rb": 288.85934595599997,
+ "qa/specs/features/browser_ui/5_package/package_registry/npm/npm_instance_level_spec.rb": 276.400771392,
+ "qa/specs/features/browser_ui/5_package/package_registry/pypi_repository_spec.rb": 124.86013221,
+ "qa/specs/features/browser_ui/6_deploy/auto_devops/create_project_with_auto_devops_spec.rb": 568.348871003,
+ "qa/specs/features/browser_ui/6_deploy/deploy_key/add_deploy_key_spec.rb": 25.653972745,
+ "qa/specs/features/browser_ui/6_deploy/deploy_key/clone_using_deploy_key_spec.rb": 160.158991192,
+ "qa/specs/features/browser_ui/6_deploy/deploy_token/add_deploy_token_spec.rb": 13.617455071,
+ "qa/specs/features/browser_ui/8_monitor/alert_management/alert_management_spec.rb": 203.638595592,
+ "qa/specs/features/browser_ui/8_monitor/alert_management/email_notification_for_alert_spec.rb": 85.05421501699999,
+ "qa/specs/features/browser_ui/9_tenant_scale/group/create_group_with_mattermost_team_spec.rb": 11.792938794,
+ "qa/specs/features/browser_ui/9_tenant_scale/group/group_member_access_request_spec.rb": 74.36519395900001,
+ "qa/specs/features/browser_ui/9_tenant_scale/group/transfer_project_spec.rb": 21.639426063,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/add_project_member_spec.rb": 32.685666012,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/create_project_badge_spec.rb": 29.041984398,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/create_project_spec.rb": 56.481595366,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/dashboard_images_spec.rb": 22.738437165,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/invite_group_to_project_spec.rb": 54.548344267000004,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/project_owner_permissions_spec.rb": 178.041656998,
+ "qa/specs/features/browser_ui/9_tenant_scale/project/view_project_activity_spec.rb": 24.761728824,
+ "qa/specs/features/browser_ui/9_tenant_scale/user/follow_user_activity_spec.rb": 26.594523245,
+ "qa/specs/features/browser_ui/9_tenant_scale/user/parent_group_access_termination_spec.rb": 29.703109918,
+ "qa/specs/features/browser_ui/9_tenant_scale/user/user_inherited_access_spec.rb": 35.873381803,
+ "qa/specs/features/ee/api/10_govern/compliance_pipeline_spec.rb": 27.990791839,
+ "qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb": 23.876685125999998,
+ "qa/specs/features/ee/api/10_govern/user/minimal_access_user_spec.rb": 83.41368070499999,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/advanced_global_advanced_syntax_search_spec.rb": 114.08060985,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/elasticsearch_api_spec.rb": 110.64275206500001,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/blob_index_spec.rb": 42.299344592,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/commit_index_spec.rb": 39.190616521,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/issue_index_spec.rb": 45.731552806,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/merge_request_index_spec.rb": 28.517704861,
+ "qa/specs/features/ee/api/17_foundations/elasticsearch/index_tests/note_index_spec.rb": 36.025010085,
+ "qa/specs/features/ee/api/1_manage/import/import_github_repo_spec.rb": 26.742735677,
+ "qa/specs/features/ee/api/1_manage/integrations/group_webhook_events_spec.rb": 13.725903805,
+ "qa/specs/features/ee/api/1_manage/migration/gitlab_migration_group_spec.rb": 76.185247628,
+ "qa/specs/features/ee/api/2_plan/analytics/dora_metrics_spec.rb": 2.134576299,
+ "qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb": 88.307651451,
+ "qa/specs/features/ee/api/3_create/code_suggestions_spec.rb": 62.483465078,
+ "qa/specs/features/ee/api/6_deploy/kubernetes/kubernetes_agent_spec.rb": 333.841964395,
+ "qa/specs/features/ee/browser_ui/10_govern/change_vulnerability_status_spec.rb": 117.605842988,
+ "qa/specs/features/ee/browser_ui/10_govern/create_merge_request_with_secure_spec.rb": 70.493630702,
+ "qa/specs/features/ee/browser_ui/10_govern/dismissed_vulnerabilities_in_security_widget_spec.rb": 78.775272987,
+ "qa/specs/features/ee/browser_ui/10_govern/explain_this_vulnerability_spec.rb": 48.390992685,
+ "qa/specs/features/ee/browser_ui/10_govern/export_vulnerability_report_spec.rb": 25.195373892,
+ "qa/specs/features/ee/browser_ui/10_govern/fix_vulnerability_workflow_spec.rb": 154.707140401,
+ "qa/specs/features/ee/browser_ui/10_govern/group/group_audit_event_streaming_spec.rb": 43.394211121,
+ "qa/specs/features/ee/browser_ui/10_govern/group/group_audit_logs_1_spec.rb": 132.310534667,
+ "qa/specs/features/ee/browser_ui/10_govern/group/group_ldap_sync_spec.rb": 129.970168319,
+ "qa/specs/features/ee/browser_ui/10_govern/group/restrict_by_ip_address_spec.rb": 130.90665025799998,
+ "qa/specs/features/ee/browser_ui/10_govern/group_pipeline_execution_policy_spec.rb": 274.306130962,
+ "qa/specs/features/ee/browser_ui/10_govern/instance/instance_audit_logs_spec.rb": 130.149224385,
+ "qa/specs/features/ee/browser_ui/10_govern/project/project_audit_logs_spec.rb": 214.633844395,
+ "qa/specs/features/ee/browser_ui/10_govern/project_security_dashboard_spec.rb": 65.29810035,
+ "qa/specs/features/ee/browser_ui/10_govern/scan_execution_policy_vulnerabilities_spec.rb": 127.97672757800001,
+ "qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_license_finding_spec.rb": 51.5421001,
+ "qa/specs/features/ee/browser_ui/10_govern/scan_result_policy_vulnerabilities_spec.rb": 115.277674252,
+ "qa/specs/features/ee/browser_ui/10_govern/security_policies_spec.rb": 81.00644148,
+ "qa/specs/features/ee/browser_ui/10_govern/security_reports_spec.rb": 361.54343162199996,
+ "qa/specs/features/ee/browser_ui/10_govern/user/minimal_access_user_spec.rb": 24.578217313,
+ "qa/specs/features/ee/browser_ui/10_govern/vulnerabilities_jira_integration_spec.rb": 42.807938893,
+ "qa/specs/features/ee/browser_ui/10_govern/vulnerability_management_spec.rb": 361.155253561,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/license/cloud_activation_spec.rb": 52.245580561,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/license/license_spec.rb": 13.510919953,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/saas_user_limit_experience_spec.rb": 188.378093649,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/free_namespace_storage_spec.rb": 345.016066913,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/saas_user_caps_spec.rb": 51.455543511,
+ "qa/specs/features/ee/browser_ui/11_fulfillment/utilization/user_registration_billing_spec.rb": 18.337433436,
+ "qa/specs/features/ee/browser_ui/13_secure/cvs_dependency_scanning_spec.rb": 100.302462833,
+ "qa/specs/features/ee/browser_ui/13_secure/license_scanning_spec.rb": 125.252427312,
+ "qa/specs/features/ee/browser_ui/13_secure/on_demand_dast_spec.rb": 116.524583274,
+ "qa/specs/features/ee/browser_ui/13_secure/secret_push_protection_spec.rb": 143.955237362,
+ "qa/specs/features/ee/browser_ui/15_growth/free_trial_spec.rb": 67.843876343,
+ "qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_explain_code_spec.rb": 36.093509303,
+ "qa/specs/features/ee/browser_ui/16_ai_powered/duo_chat/duo_chat_spec.rb": 51.176578692,
+ "qa/specs/features/ee/browser_ui/1_manage/integrations/jira_issues_list_spec.rb": 58.508339867000004,
+ "qa/specs/features/ee/browser_ui/2_plan/analytics/contribution_analytics_spec.rb": 180.922854976,
+ "qa/specs/features/ee/browser_ui/2_plan/analytics/mr_analytics_spec.rb": 72.150498024,
+ "qa/specs/features/ee/browser_ui/2_plan/analytics/value_stream_analytics_spec.rb": 75.65637634000001,
+ "qa/specs/features/ee/browser_ui/2_plan/burndown_chart/burndown_chart_spec.rb": 23.40066441,
+ "qa/specs/features/ee/browser_ui/2_plan/custom_email/custom_email_spec.rb": 17.422913947,
+ "qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb": 382.51985342,
+ "qa/specs/features/ee/browser_ui/2_plan/epic/promote_issue_to_epic_spec.rb": 53.152013451,
+ "qa/specs/features/ee/browser_ui/2_plan/epic/roadmap_spec.rb": 15.612040113,
+ "qa/specs/features/ee/browser_ui/2_plan/group_wiki/create_group_wiki_page_spec.rb": 43.134573792,
+ "qa/specs/features/ee/browser_ui/2_plan/group_wiki/delete_group_wiki_page_spec.rb": 17.688236191,
+ "qa/specs/features/ee/browser_ui/2_plan/group_wiki/file_upload_group_wiki_page_spec.rb": 36.245175063,
+ "qa/specs/features/ee/browser_ui/2_plan/insights/default_insights_spec.rb": 36.127016912,
+ "qa/specs/features/ee/browser_ui/2_plan/issue/default_issue_template_spec.rb": 29.981502699,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/configurable_issue_board_spec.rb": 20.511514982,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/configure_issue_board_by_label_spec.rb": 28.127288041,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/create_group_issue_board_spec.rb": 33.431527318,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/group_issue_boards_spec.rb": 38.178550758,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/project_issue_boards_spec.rb": 83.637027736,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/read_only_board_configuration_spec.rb": 31.767948444,
+ "qa/specs/features/ee/browser_ui/2_plan/issue_boards/sum_of_issues_weights_spec.rb": 24.656618797,
+ "qa/specs/features/ee/browser_ui/2_plan/issues_analytics/issues_analytics_spec.rb": 44.522445772,
+ "qa/specs/features/ee/browser_ui/2_plan/issues_weight/issue_weight_visualization_spec.rb": 35.332557938,
+ "qa/specs/features/ee/browser_ui/2_plan/iterations/assign_group_iteration_spec.rb": 30.182850649,
+ "qa/specs/features/ee/browser_ui/2_plan/iterations/create_group_iteration_spec.rb": 45.154880479,
+ "qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/four_assignees_spec.rb": 40.772116388,
+ "qa/specs/features/ee/browser_ui/2_plan/multiple_assignees_for_issues/more_than_four_assignees_spec.rb": 74.761764619,
+ "qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb": 25.870807747,
+ "qa/specs/features/ee/browser_ui/3_create/merge_request/approval_rules_spec.rb": 135.927114261,
+ "qa/specs/features/ee/browser_ui/3_create/merge_request/default_merge_request_template_spec.rb": 45.063333201,
+ "qa/specs/features/ee/browser_ui/3_create/merge_request/generate_commit_message_spec.rb": 31.566704251,
+ "qa/specs/features/ee/browser_ui/3_create/remote_development/workspace_actions_spec.rb": 543.233404997,
+ "qa/specs/features/ee/browser_ui/3_create/repository/assign_code_owners_spec.rb": 59.357746585,
+ "qa/specs/features/ee/browser_ui/3_create/repository/code_owners_spec.rb": 36.869256928,
+ "qa/specs/features/ee/browser_ui/3_create/repository/file_locking_spec.rb": 246.545303253,
+ "qa/specs/features/ee/browser_ui/3_create/repository/group_file_template_spec.rb": 43.200725758,
+ "qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_root_group_spec.rb": 128.98384694,
+ "qa/specs/features/ee/browser_ui/3_create/repository/merge_with_code_owner_in_subgroup_spec.rb": 211.633649123,
+ "qa/specs/features/ee/browser_ui/3_create/repository/prevent_forking_outside_group_spec.rb": 41.111944978,
+ "qa/specs/features/ee/browser_ui/3_create/repository/project_templates_spec.rb": 176.516678502,
+ "qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_http_spec.rb": 44.548635509,
+ "qa/specs/features/ee/browser_ui/3_create/repository/pull_mirroring_over_ssh_with_key_spec.rb": 74.217703857,
+ "qa/specs/features/ee/browser_ui/3_create/repository/push_rules_spec.rb": 475.40952402,
+ "qa/specs/features/ee/browser_ui/3_create/repository/restrict_push_protected_branch_spec.rb": 262.966270802,
+ "qa/specs/features/ee/browser_ui/3_create/web_ide/code_suggestions_in_web_ide_spec.rb": 110.59269366000001,
+ "qa/specs/features/ee/browser_ui/4_verify/multi-project_pipelines_spec.rb": 44.332298042,
+ "qa/specs/features/ee/browser_ui/4_verify/parent_child_pipelines_dependent_relationship_spec.rb": 94.640597731,
+ "qa/specs/features/ee/browser_ui/4_verify/pipeline_for_merged_result_spec.rb": 64.50677508,
+ "qa/specs/features/ee/browser_ui/4_verify/pipeline_subscription_with_group_owned_project_spec.rb": 65.356541838,
+ "qa/specs/features/ee/browser_ui/4_verify/root_cause_analysis_with_duo_chat_spec.rb": 33.753791004,
+ "qa/specs/features/ee/browser_ui/8_monitor/incident_management/incident_quick_action_spec.rb": 22.417525672,
+ "qa/specs/features/ee/browser_ui/9_tenant_scale/share_group_with_group_spec.rb": 21.968808136
}
diff --git a/qa/tasks/ci.rake b/qa/tasks/ci.rake
index 7c8fb9abfef..3e371153be1 100644
--- a/qa/tasks/ci.rake
+++ b/qa/tasks/ci.rake
@@ -85,13 +85,13 @@ namespace :ci do
label: tests_from_mapping.nil? || tests_from_mapping.empty? ? 'non-selective' : 'selective',
value: tests_from_mapping.nil? || tests_from_mapping.empty? ? 0 : tests_from_mapping.count
}
- Tooling::Events::TrackPipelineEvents.new(
- event_name: "e2e_tests_selected_for_execution_gitlab_pipeline",
- properties: properties
- ).send_event
+ Tooling::Events::TrackPipelineEvents.new(logger: logger).send_event(
+ "e2e_tests_selected_for_execution_gitlab_pipeline",
+ **properties
+ )
rescue StandardError => e
- logger.warn("*** Error while creating pipeline with selected specs: #{e.backtrace} ****")
- logger.info("*** Running full suite ***")
+ logger.warn("*** Error while creating pipeline with selected specs: #{e.backtrace} ***")
+ logger.info("*** Defaulting to running full suite ***")
QA::Tools::Ci::PipelineCreator.new([], **creator_args).create
end
end
diff --git a/scripts/rspec_helpers.sh b/scripts/rspec_helpers.sh
index d25a9249e62..54279aaf3c8 100644
--- a/scripts/rspec_helpers.sh
+++ b/scripts/rspec_helpers.sh
@@ -16,13 +16,16 @@ function update_tests_metadata() {
}
function retrieve_tests_mapping() {
- mkdir -p $(dirname "$RSPEC_PACKED_TESTS_MAPPING_PATH")
+ local mapping_archive="${1:-$RSPEC_PACKED_TESTS_MAPPING_PATH}"
+ local mapping_path="${2:-$RSPEC_TESTS_MAPPING_PATH}"
- if [[ ! -f "${RSPEC_PACKED_TESTS_MAPPING_PATH}" ]]; then
- (curl --fail --location -o "${RSPEC_PACKED_TESTS_MAPPING_PATH}.gz" "https://gitlab-org.gitlab.io/gitlab/${RSPEC_PACKED_TESTS_MAPPING_PATH}.gz" && gzip -d "${RSPEC_PACKED_TESTS_MAPPING_PATH}.gz") || echo "{}" > "${RSPEC_PACKED_TESTS_MAPPING_PATH}"
+ mkdir -p $(dirname "$mapping_archive")
+
+ if [[ ! -f "${mapping_archive}" ]]; then
+ (curl --fail --location -o "${mapping_archive}.gz" "https://gitlab-org.gitlab.io/gitlab/${mapping_archive}.gz" && gzip -d "${mapping_archive}.gz") || echo "{}" > "${mapping_archive}"
fi
- scripts/unpack-test-mapping "${RSPEC_PACKED_TESTS_MAPPING_PATH}" "${RSPEC_TESTS_MAPPING_PATH}"
+ scripts/unpack-test-mapping "${mapping_archive}" "${mapping_path}"
}
function retrieve_frontend_fixtures_mapping() {
diff --git a/spec/controllers/user_settings/personal_access_tokens_controller_spec.rb b/spec/controllers/user_settings/personal_access_tokens_controller_spec.rb
index 73a5fcfeeb8..b3f9963bb45 100644
--- a/spec/controllers/user_settings/personal_access_tokens_controller_spec.rb
+++ b/spec/controllers/user_settings/personal_access_tokens_controller_spec.rb
@@ -211,9 +211,8 @@ RSpec.describe UserSettings::PersonalAccessTokensController, feature_category: :
end
end
- context 'with virtual_registry_maven feature flag disabled and dependency proxy disabled' do
+ context 'with dependency proxy disabled' do
before do
- stub_feature_flags(virtual_registry_maven: false)
stub_config(dependency_proxy: { enabled: false })
end
diff --git a/spec/db/schema_spec.rb b/spec/db/schema_spec.rb
index 0fbcda7c0b8..d550d58f2f5 100644
--- a/spec/db/schema_spec.rb
+++ b/spec/db/schema_spec.rb
@@ -115,7 +115,6 @@ RSpec.describe 'Database schema',
deploy_keys_projects: %w[deploy_key_id],
deployments: %w[deployable_id user_id],
deployment_merge_requests: %w[project_id],
- description_versions: %w[namespace_id], # namespace_id will be added as an FK after backfill
draft_notes: %w[discussion_id commit_id],
epics: %w[updated_by_id last_edited_by_id state_id],
events: %w[target_id],
diff --git a/spec/frontend/environments/environment_details/environment_breadcrumbs_spec.js b/spec/frontend/environments/environment_details/environment_breadcrumbs_spec.js
index fd33d18c285..f96f6ad1b33 100644
--- a/spec/frontend/environments/environment_details/environment_breadcrumbs_spec.js
+++ b/spec/frontend/environments/environment_details/environment_breadcrumbs_spec.js
@@ -19,7 +19,7 @@ describe('Environment Breadcrumb', () => {
},
];
- const mountComponent = ($route) => {
+ const mountComponent = ($route, props = {}) => {
wrapper = mount(EnvironmentBreadcrumb, {
mocks: {
$route,
@@ -32,6 +32,7 @@ describe('Environment Breadcrumb', () => {
stubs: {
RouterLink: RouterLinkStub,
},
+ propsData: props,
});
};
@@ -70,4 +71,22 @@ describe('Environment Breadcrumb', () => {
expect(lastLink.text()).toContain(routes[1].params.podName);
});
});
+
+ describe('when staticBreadcrumbs are provided', () => {
+ beforeEach(() => {
+ mountComponent(routes[0], {
+ staticBreadcrumbs: {
+ items: [{ text: 'static', href: '/static' }],
+ },
+ });
+ });
+
+ it('contains the static breadcrumbs', () => {
+ const links = wrapper.findAll('a');
+
+ expect(links).toHaveLength(2);
+ expect(links.at(0).text()).toContain('static');
+ expect(links.at(1).text()).toContain(environmentName);
+ });
+ });
});
diff --git a/spec/migrations/20250514054305_add_status_widget_definition_to_issues_spec.rb b/spec/migrations/20250514054305_add_status_widget_definition_to_issues_spec.rb
new file mode 100644
index 00000000000..1ca14f29ee8
--- /dev/null
+++ b/spec/migrations/20250514054305_add_status_widget_definition_to_issues_spec.rb
@@ -0,0 +1,8 @@
+# frozen_string_literal: true
+
+require 'spec_helper'
+require_migration!
+
+RSpec.describe AddStatusWidgetDefinitionToIssues, :migration, feature_category: :team_planning do
+ it_behaves_like 'migration that adds widgets to a work item type'
+end
diff --git a/spec/requests/admin/impersonation_tokens_controller_spec.rb b/spec/requests/admin/impersonation_tokens_controller_spec.rb
index 14cb060ede8..ab4107e021e 100644
--- a/spec/requests/admin/impersonation_tokens_controller_spec.rb
+++ b/spec/requests/admin/impersonation_tokens_controller_spec.rb
@@ -64,11 +64,9 @@ RSpec.describe Admin::ImpersonationTokensController, :enable_admin_mode, feature
end
describe '#index', :with_current_organization do
- let(:virtual_registry_maven_enabled) { true }
let(:dependency_proxy_enabled) { true }
before do
- stub_feature_flags(virtual_registry_maven: virtual_registry_maven_enabled)
stub_config(dependency_proxy: { enabled: dependency_proxy_enabled })
get admin_user_impersonation_tokens_path(user_id: user.username)
@@ -85,8 +83,7 @@ RSpec.describe Admin::ImpersonationTokensController, :enable_admin_mode, feature
)
end
- context 'with virtual_registry_maven feature flag disabled and dependency proxy disabled' do
- let(:virtual_registry_maven_enabled) { false }
+ context 'with dependency proxy disabled' do
let(:dependency_proxy_enabled) { false }
it 'does not include the virtual registry scopes' do
diff --git a/spec/requests/projects/settings/access_tokens_controller_spec.rb b/spec/requests/projects/settings/access_tokens_controller_spec.rb
index 4abf9bf66cf..6fd839cfebc 100644
--- a/spec/requests/projects/settings/access_tokens_controller_spec.rb
+++ b/spec/requests/projects/settings/access_tokens_controller_spec.rb
@@ -108,12 +108,8 @@ RSpec.describe Projects::Settings::AccessTokensController, feature_category: :sy
describe '#index' do
let_it_be(:resource_access_tokens) { create_list(:personal_access_token, 3, user: access_token_user) }
- let(:virtual_registry_maven_enabled) { true }
- let(:dependency_proxy_enabled) { true }
-
before do
- stub_feature_flags(virtual_registry_maven: virtual_registry_maven_enabled)
- stub_config(dependency_proxy: { enabled: dependency_proxy_enabled })
+ stub_config(dependency_proxy: { enabled: true })
get project_settings_access_tokens_path(resource)
end
diff --git a/spec/tooling/lib/tooling/events/track_pipeline_events_spec.rb b/spec/tooling/lib/tooling/events/track_pipeline_events_spec.rb
index 449a173ce6f..d24bff7dc56 100644
--- a/spec/tooling/lib/tooling/events/track_pipeline_events_spec.rb
+++ b/spec/tooling/lib/tooling/events/track_pipeline_events_spec.rb
@@ -1,96 +1,111 @@
# frozen_string_literal: true
require 'gitlab/rspec/stub_env'
+require 'logger'
+
require_relative '../../../../../tooling/lib/tooling/events/track_pipeline_events'
RSpec.describe Tooling::Events::TrackPipelineEvents, feature_category: :tooling do
include StubENV
+ subject(:send_event) { described_class.new(logger: logger).send_event(event_name, **additional_properties) }
+
let(:event_name) { "e2e_tests_selected_for_execution_gitlab_pipeline" }
- let(:additional_properties) { { label: 'label', property: 'property', value: 10 } }
+ let(:additional_properties) { { label: 'label', value: 10, property: 'property' } }
let(:access_token) { 'test-admin-token' }
+ let(:logger) { instance_double(Logger, info: nil, error: nil) }
+ let(:http_client) { instance_double(Net::HTTP, :use_ssl= => true, :request_post => response) }
let(:response) { instance_double(Net::HTTPResponse, code: 200, body: '{}') }
- let(:http_client) { instance_double(Net::HTTP) }
- let(:http_request) { instance_double(Net::HTTP::Post) }
+ let(:api_path) { "/api/v4/usage_data/track_event" }
+ let(:headers) do
+ {
+ "PRIVATE-TOKEN" => access_token,
+ "Content-Type" => "application/json"
+ }
+ end
before do
stub_env("CI_INTERNAL_EVENTS_TOKEN", access_token)
- stub_env("CI_API_V4_URL", 'https://gitlab.com/api/v4')
- allow($stdout).to receive(:puts)
+ stub_env("CI_SERVER_URL", "https://gitlab.com")
+ stub_env("CI_PROJECT_NAMESPACE_ID", "1")
+ stub_env("CI_PROJECT_ID", "2")
end
describe '#send_event' do
- subject(:send_event) do
- described_class
- .new(event_name: event_name, properties: additional_properties).send_event
- end
-
context 'with API request' do
- let(:expected_request_body) do
- {
- event: event_name,
- send_to_snowplow: true,
- namespace_id: Tooling::Events::TrackPipelineEvents::NAMESPACE_ID,
- project_id: Tooling::Events::TrackPipelineEvents::PROJECT_ID,
- additional_properties: additional_properties
- }
- end
-
- let(:uri_double) do
- instance_double(URI::HTTPS,
- host: 'gitlab.com',
- port: 443, path: 'api/v4/usage_data/track_event')
- end
-
before do
- allow(URI).to receive(:parse).and_return(uri_double)
allow(Net::HTTP).to receive(:new).and_return(http_client)
- allow(http_client).to receive(:use_ssl=).and_return(true)
- allow(Net::HTTP::Post).to receive(:new).with(uri_double.path).and_return(http_request)
- allow(http_request).to receive(:body=)
- allow(http_request).to receive(:[]=)
+ end
+
+ it "sets up correct http client" do
+ send_event
+
+ expect(Net::HTTP).to have_received(:new).with('gitlab.com', 443)
+ expect(http_client).to have_received(:use_ssl=).with(true)
end
context 'when successful' do
- before do
- allow(http_client).to receive(:request).and_return(response)
+ let(:expected_request_body) do
+ {
+ event: event_name,
+ send_to_snowplow: true,
+ namespace_id: 1,
+ project_id: 2,
+ additional_properties: additional_properties
+ }.to_json
end
it 'sends correct event parameters and success message' do
send_event
- expect(http_request).to have_received(:body=).with(expected_request_body.to_json)
- expect($stdout).to have_received(:puts).with("Successfully sent data for event: #{event_name}")
+
+ expect(http_client).to have_received(:request_post).with(api_path, expected_request_body, headers)
+ expect(logger).to have_received(:info).with("Successfully sent data for event")
end
end
context 'when error response' do
- let(:error_response) do
- instance_double(Net::HTTPResponse, code: 422,
- body: '{"error":"Invalid parameters"}')
- end
-
- before do
- allow(http_client).to receive(:request).and_return(error_response)
+ let(:response) do
+ instance_double(Net::HTTPResponse, code: 422, body: '{"error":"Invalid parameters"}')
end
it 'checks for failed error message' do
- result = send_event
- expect($stdout).to have_received(:puts)
- .with("Failed event tracking: 422, body: {\"error\":\"Invalid parameters\"}")
- expect(result).to eq(error_response)
+ expect(send_event).to eq(response)
+ expect(logger).to have_received(:error).with("Failed event tracking: 422, body: #{response.body}")
+ end
+ end
+
+ context 'when error is raised' do
+ before do
+ allow(http_client).to receive(:request_post).and_raise(StandardError, "some error")
+ end
+
+ it 'logs the error' do
+ send_event
+
+ expect(logger).to have_received(:error).with(
+ "Exception when posting event #{event_name}, error: 'some error'"
+ )
+ end
+ end
+
+ context 'without logger configured' do
+ let(:logger) { nil }
+
+ it 'logs to stdout' do
+ expect { send_event }.to output(/Successfully sent data for event/).to_stdout
end
end
context 'when CI_INTERNAL_EVENTS_TOKEN is not set' do
before do
stub_env("CI_INTERNAL_EVENTS_TOKEN", nil)
- allow(http_client).to receive(:request).and_return(response)
end
it 'prints an error message and returns' do
- expect do
- send_event
- end.to output("Error: Cannot send event '#{event_name}'. Missing project access token.\n").to_stderr
+ send_event
+
+ expect(logger).to have_received(:error)
+ .with("Error: Cannot send event '#{event_name}'. Missing project access token.")
end
end
end
diff --git a/spec/tooling/lib/tooling/glci/failure_categories/report_job_failure_spec.rb b/spec/tooling/lib/tooling/glci/failure_categories/report_job_failure_spec.rb
index 43602cee34b..16b7c676e87 100644
--- a/spec/tooling/lib/tooling/glci/failure_categories/report_job_failure_spec.rb
+++ b/spec/tooling/lib/tooling/glci/failure_categories/report_job_failure_spec.rb
@@ -11,10 +11,12 @@ RSpec.describe Tooling::Glci::FailureCategories::ReportJobFailure, feature_categ
let(:job_id) { '12345' }
let(:failure_category) { 'test_failures' }
- let(:track_pipeline_events_instance) { instance_double(Tooling::Events::TrackPipelineEvents) }
+ let(:track_pipeline_events_instance) { instance_double(Tooling::Events::TrackPipelineEvents, send_event: nil) }
before do
stub_env('CI_JOB_ID', nil)
+
+ allow(Tooling::Events::TrackPipelineEvents).to receive(:new).and_return(track_pipeline_events_instance)
end
describe '#initialize' do
@@ -42,36 +44,14 @@ RSpec.describe Tooling::Glci::FailureCategories::ReportJobFailure, feature_categ
describe '#report' do
subject(:reporter) { described_class.new(job_id: job_id, failure_category: failure_category) }
- before do
- allow(Tooling::Events::TrackPipelineEvents).to receive(:new).and_return(track_pipeline_events_instance)
- allow(track_pipeline_events_instance).to receive(:send_event)
- end
-
- it 'initializes TrackPipelineEvents with correct event name' do
+ it 'sends event with correct attributes' do
reporter.report
- expect(Tooling::Events::TrackPipelineEvents).to have_received(:new).with(
- hash_including(event_name: "glci_job_failed")
+ expect(track_pipeline_events_instance).to have_received(:send_event).with(
+ "glci_job_failed",
+ label: job_id,
+ property: failure_category
)
end
-
- it 'passes the correct properties structure to TrackPipelineEvents' do
- reporter.report
-
- expect(Tooling::Events::TrackPipelineEvents).to have_received(:new).with(
- hash_including(
- properties: {
- label: job_id,
- property: failure_category
- }
- )
- )
- end
-
- it 'calls send_event on the TrackPipelineEvents instance' do
- reporter.report
-
- expect(track_pipeline_events_instance).to have_received(:send_event)
- end
end
end
diff --git a/spec/tooling/lib/tooling/predictive_tests_spec.rb b/spec/tooling/lib/tooling/predictive_tests_spec.rb
index 70414b217fb..cc3de8c5e1b 100644
--- a/spec/tooling/lib/tooling/predictive_tests_spec.rb
+++ b/spec/tooling/lib/tooling/predictive_tests_spec.rb
@@ -11,6 +11,7 @@ RSpec.describe Tooling::PredictiveTests, feature_category: :tooling do
let(:instance) { described_class.new }
let(:matching_tests_initial_content) { 'initial_matching_spec' }
let(:fixtures_mapping_content) { '{}' }
+ let(:event_tracker) { instance_double(Tooling::Events::TrackPipelineEvents, send_event: nil) }
attr_accessor :changed_files, :changed_files_path, :fixtures_mapping,
:matching_js_files, :matching_tests, :views_with_partials
@@ -62,6 +63,7 @@ RSpec.describe Tooling::PredictiveTests, feature_category: :tooling do
File.write(fixtures_mapping.path, fixtures_mapping_content)
allow(Gitlab).to receive(:configure)
+ allow(Tooling::Events::TrackPipelineEvents).to receive(:new).and_return(event_tracker)
end
describe '#execute' do
@@ -136,6 +138,17 @@ RSpec.describe Tooling::PredictiveTests, feature_category: :tooling do
expect { subject }.not_to change { File.read(fixtures_mapping.path) }
expect { subject }.not_to change { File.read(matching_js_files.path) }
end
+
+ it "sends number of tests selected via internal events" do
+ subject
+
+ expect(event_tracker).to have_received(:send_event).with(
+ "glci_predictive_tests_count",
+ label: "test-count",
+ value: File.read(matching_tests.path).lines.length,
+ property: "described_class"
+ )
+ end
end
end
end
diff --git a/tooling/lib/tooling/events/track_pipeline_events.rb b/tooling/lib/tooling/events/track_pipeline_events.rb
index 182949a77b0..a76c58b0fdc 100644
--- a/tooling/lib/tooling/events/track_pipeline_events.rb
+++ b/tooling/lib/tooling/events/track_pipeline_events.rb
@@ -7,69 +7,100 @@ require 'uri'
module Tooling
module Events
class TrackPipelineEvents
- API_ENDPOINT = "#{ENV['CI_API_V4_URL']}/usage_data/track_event".freeze
- NAMESPACE_ID = 9970 # gitlab-org group
- PROJECT_ID = 278964 # gitlab-org/gitlab project
-
- # Initializes a new event tracker
- #
- # @param [String] event_name The name of the event to track
- # @param [Hash] properties A hash of properties to include with the event
- # @option properties [String] :label String Event attribute
- # @option properties [Integer] :value Numeric Event attribute
- # @option properties [String] :property Another String attribute
- # @param [Hash] args Additional arguments to pass to the parent class
- def initialize(event_name:, properties: {}, **args)
- @event_name = event_name
- @properties = properties
- @args = args
- @api_token = ENV["CI_INTERNAL_EVENTS_TOKEN"]
+ def initialize(api_token: ENV["CI_INTERNAL_EVENTS_TOKEN"], logger: nil)
+ @api_token = api_token
+ @logger = logger
end
- def send_event
- unless api_token
- warn "Error: Cannot send event '#{event_name}'. Missing project access token."
- return
- end
+ # Send tracking event to usage_data API
+ #
+ # @param event_name [String] the name of the event to track
+ # @param label [String] Event attribute
+ # @param value [Number] Numeric event attribute
+ # @param property [String] Optional event attribute
+ # @return [Net::HTTPResponse]
+ def send_event(event_name, label:, value: nil, property: nil)
+ return log(:error, "Error: Cannot send event '#{event_name}'. Missing project access token.") unless api_token
- uri = URI.parse(API_ENDPOINT)
- http = Net::HTTP.new(uri.host, uri.port)
- http.use_ssl = true
+ body = {
+ event: event_name,
+ send_to_snowplow: true,
+ namespace_id: namespace_id,
+ project_id: project_id,
+ additional_properties: {
+ label:,
+ value:,
+ property:
+ }.compact
+ }.to_json
- request = Net::HTTP::Post.new(uri.path)
- request.body = request_body.to_json
- headers.each { |key, value| request[key] = value }
-
- response = http.request(request)
+ log(:info, "Sending data for event: #{event_name}")
+ response = client.request_post("/api/v4/usage_data/track_event", body, headers)
if response.code.to_i == 200
- puts "Successfully sent data for event: #{event_name}"
+ log(:info, "Successfully sent data for event")
else
- puts "Failed event tracking: #{response.code}, body: #{response.body}"
+ log(:error, "Failed event tracking: #{response.code}, body: #{response.body}")
end
response
+ rescue StandardError => e
+ log(:error, "Exception when posting event #{event_name}, error: '#{e.message}'")
end
private
- attr_reader :event_name, :properties, :args, :api_token
+ attr_reader :api_token, :logger
+ # Print to stdout/stderr or use logger if defined
+ #
+ # @param level [Symbol]
+ # @param message [String]
+ # @return [void]
+ def log(level, message)
+ return logger.public_send(level, message) if logger.respond_to?(level) # rubocop:disable GitlabSecurity/PublicSend -- CI usage only
+
+ %i[warn error].include?(level) ? warn(message) : puts(message)
+ end
+
+ # Http client
+ #
+ # @return [Net::HTTP]
+ def client
+ @client ||= Net::HTTP.new(uri.host, uri.port).tap do |http|
+ http.use_ssl = true
+ end
+ end
+
+ # CI server uri
+ #
+ # @return [Uri]
+ def uri
+ @uri ||= URI.parse(ENV['CI_SERVER_URL'])
+ end
+
+ # Default request headers
+ #
+ # @return [Hash]
def headers
- {
+ @headers ||= {
"PRIVATE-TOKEN" => api_token,
"Content-Type" => "application/json"
}
end
- def request_body
- {
- event: event_name,
- send_to_snowplow: true,
- namespace_id: NAMESPACE_ID,
- project_id: PROJECT_ID,
- additional_properties: properties
- }
+ # Project namespace ID
+ #
+ # @return [Integer]
+ def namespace_id
+ @namespace_id ||= ENV["CI_PROJECT_NAMESPACE_ID"].to_i
+ end
+
+ # Project ID
+ #
+ # @return [Integer]
+ def project_id
+ @project_id ||= ENV["CI_PROJECT_ID"].to_i
end
end
end
diff --git a/tooling/lib/tooling/glci/failure_categories/report_job_failure.rb b/tooling/lib/tooling/glci/failure_categories/report_job_failure.rb
index 3176ff74b04..f84b89ecad3 100755
--- a/tooling/lib/tooling/glci/failure_categories/report_job_failure.rb
+++ b/tooling/lib/tooling/glci/failure_categories/report_job_failure.rb
@@ -22,13 +22,11 @@ module Tooling
end
def report
- Tooling::Events::TrackPipelineEvents.new(
- event_name: "glci_job_failed",
- properties: {
- label: @job_id,
- property: @failure_category
- }
- ).send_event
+ Tooling::Events::TrackPipelineEvents.new.send_event(
+ "glci_job_failed",
+ label: @job_id,
+ property: @failure_category
+ )
end
end
end
diff --git a/tooling/lib/tooling/predictive_tests.rb b/tooling/lib/tooling/predictive_tests.rb
index 3d65672ddc5..fcc7ad52334 100644
--- a/tooling/lib/tooling/predictive_tests.rb
+++ b/tooling/lib/tooling/predictive_tests.rb
@@ -8,6 +8,7 @@ require_relative 'mappings/js_to_system_specs_mappings'
require_relative 'mappings/partial_to_views_mappings'
require_relative 'mappings/view_to_js_mappings'
require_relative 'mappings/view_to_system_specs_mappings'
+require_relative 'events/track_pipeline_events'
module Tooling
class PredictiveTests
@@ -30,6 +31,7 @@ module Tooling
@rspec_views_including_partials_path = ENV['RSPEC_VIEWS_INCLUDING_PARTIALS_PATH']
@frontend_fixtures_mapping_path = ENV['FRONTEND_FIXTURES_MAPPING_PATH']
@rspec_matching_js_files_path = ENV['RSPEC_MATCHING_JS_FILES_PATH']
+ @predictive_tests_strategy = ENV['PREDICTIVE_TESTS_STRATEGY'] || 'described_class'
end
def execute
@@ -52,11 +54,28 @@ module Tooling
frontend_fixtures_mapping_pathname: frontend_fixtures_mapping_path
).execute
Tooling::Mappings::ViewToJsMappings.new(rspec_changed_files_path, rspec_matching_js_files_path).execute
+
+ record_selected_test_count
end
private
- attr_reader :rspec_changed_files_path, :rspec_matching_tests_path, :rspec_views_including_partials_path,
- :frontend_fixtures_mapping_path, :rspec_matching_js_files_path
+ attr_reader :rspec_changed_files_path,
+ :rspec_matching_tests_path,
+ :rspec_views_including_partials_path,
+ :frontend_fixtures_mapping_path,
+ :rspec_matching_js_files_path,
+ :predictive_tests_strategy
+
+ def record_selected_test_count
+ test_count = File.read(rspec_matching_tests_path).lines.length
+
+ Tooling::Events::TrackPipelineEvents.new.send_event(
+ "glci_predictive_tests_count",
+ label: "test-count",
+ value: test_count,
+ property: predictive_tests_strategy
+ )
+ end
end
end