diff --git a/.gitlab/lint/unused_methods/excluded_methods.yml b/.gitlab/lint/unused_methods/excluded_methods.yml
index e28bcfc6006b45baf06a67127e55430a06cc5385..6d05448ebf537c57179780370c36405de2e7f0f9 100644
--- a/.gitlab/lint/unused_methods/excluded_methods.yml
+++ b/.gitlab/lint/unused_methods/excluded_methods.yml
@@ -2,6 +2,9 @@
# scripts/lint/unused_methods.rb, however subsequent research shows
# them to be false positives, and should be ignored when running that script.
#
+x509_commit:
+ file: app/models/commit_signatures/x509_commit_signature.rb
+ reason: Accessed from lib/tasks/gitlab/x509/update.rake
sort_value_stars_desc:
file: app/helpers/sorting_titles_values_helper.rb
reason: Used to build sorting dropdowns in app/helpers/sorting_helper.rb
diff --git a/.gitlab/lint/unused_methods/potential_methods_to_remove.yml b/.gitlab/lint/unused_methods/potential_methods_to_remove.yml
index dd28696a5c2855ac85656c6d862ee9db044e42a9..d0ccf4801ce39ad4e6bf6d7ebd9cd93c8731465a 100644
--- a/.gitlab/lint/unused_methods/potential_methods_to_remove.yml
+++ b/.gitlab/lint/unused_methods/potential_methods_to_remove.yml
@@ -237,8 +237,6 @@ updateable?:
file: app/models/clusters/concerns/application_status.rb
update_available?:
file: app/models/clusters/concerns/application_version.rb
-x509_commit:
- file: app/models/commit_signatures/x509_commit_signature.rb
user_authored?:
file: app/models/concerns/awardable.rb
degenerate!:
diff --git a/doc/administration/settings/scim_setup.md b/doc/administration/settings/scim_setup.md
index 9760678bdc52f704c7a6fa90125f0fb2dfb91828..01a917053ee140f9ff7f11552f2df067a92f5d72 100644
--- a/doc/administration/settings/scim_setup.md
+++ b/doc/administration/settings/scim_setup.md
@@ -320,6 +320,9 @@ For detailed instructions on configuring group synchronization in your identity
- [Okta Groups API](https://developer.okta.com/docs/reference/api/groups/)
- [Microsoft Entra ID (Azure AD) SCIM Groups](https://learn.microsoft.com/en-us/entra/identity/app-provisioning/use-scim-to-provision-users-and-groups)
+ - By default, the `displayName` source attribute is used to find SAML group links with user-friendly names.
+ - However, if your SAML group links use an object ID for the name,
+ you must update the source attribute to `objectId`.
{{< alert type="warning" >}}
diff --git a/doc/user/application_security/vulnerability_report/_index.md b/doc/user/application_security/vulnerability_report/_index.md
index e1306800e213b2745e3ddb9c31345a9f21e201f6..63b7f537557c561db6051b506817a3e3b77b06dc 100644
--- a/doc/user/application_security/vulnerability_report/_index.md
+++ b/doc/user/application_security/vulnerability_report/_index.md
@@ -587,6 +587,13 @@ For more information, see the history.
{{< /alert >}}
+{{< alert type="note" >}}
+
+On GitLab Self-Managed, advanced vulnerability management capabilities might be temporarily unavailable, typically for a few hours, after upgrading from versions earlier than GitLab 18.7 while the data migration completes.
+Full capabilities will be available after the migration finishes.
+
+{{< /alert >}}
+
GitLab primarily uses PostgreSQL for filtering in the vulnerability report. Due to database indexing limitations and performance challenges when applying multiple filters, GitLab uses [advanced search](../../search/advanced_search.md) for specific vulnerability management features.
Advanced search powers the following features:
@@ -602,7 +609,7 @@ Advanced search is used only for these specific features, including when they ar
### Requirements
-To use the filters in advanced vulnerability management:
+To use the capabilities in advanced vulnerability management:
- You must have [advanced search enabled](../../search/advanced_search.md#use-advanced-search).
- On GitLab Self-Managed, after [setting up advanced search](../../../integration/advanced_search/elasticsearch.md#enable-advanced-search), ensure the **Search with advanced search** checkbox is selected.
diff --git a/doc/user/project/settings/import_export.md b/doc/user/project/settings/import_export.md
index d76edcae14e7f9dc85f84d78f35f69c687ff28b4..f64d535db51c4b30bab824d685539ecb1dcaa528 100644
--- a/doc/user/project/settings/import_export.md
+++ b/doc/user/project/settings/import_export.md
@@ -2,7 +2,7 @@
stage: Create
group: Import
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
-title: Migrate GitLab data by using by using file exports
+title: Migrate GitLab data by using file exports
description: "Use file exports to migrate GitLab data."
---
diff --git a/ee/app/assets/javascripts/ai/duo_agents_platform/constants.js b/ee/app/assets/javascripts/ai/duo_agents_platform/constants.js
index f7c201bca3d7faf5abb8519c779649b1083ae4f4..5cf98a2d20c6c137aa208dca5a9d604fd3c797ff 100644
--- a/ee/app/assets/javascripts/ai/duo_agents_platform/constants.js
+++ b/ee/app/assets/javascripts/ai/duo_agents_platform/constants.js
@@ -124,3 +124,13 @@ export const DEFAULT_AGENT_PLATFORM_PAGINATION_VARIABLES = {
after: null,
last: null,
};
+
+// Can cancel only if session is in an active state (not already finished, failed, or stopped)
+export const AGENT_PLATFORM_CANCELABLE_STATUSES = [
+ 'CREATED',
+ 'RUNNING',
+ 'PAUSED',
+ 'INPUT_REQUIRED',
+ 'PLAN_APPROVAL_REQUIRED',
+ 'TOOL_CALL_APPROVAL_REQUIRED',
+];
diff --git a/ee/app/assets/javascripts/ai/duo_agents_platform/graphql/fragments/flow.fragment.graphql b/ee/app/assets/javascripts/ai/duo_agents_platform/graphql/fragments/flow.fragment.graphql
index 929e43672ef4f2f6958a13ac88f6a640b0c45002..96e4e977f09a7321e9b6e0c62feb526c84fdf909 100644
--- a/ee/app/assets/javascripts/ai/duo_agents_platform/graphql/fragments/flow.fragment.graphql
+++ b/ee/app/assets/javascripts/ai/duo_agents_platform/graphql/fragments/flow.fragment.graphql
@@ -5,6 +5,9 @@ fragment FlowFragment on DuoWorkflow {
updatedAt
workflowDefinition
userId
+ userPermissions {
+ updateDuoWorkflow
+ }
project {
id
name
diff --git a/ee/app/assets/javascripts/ai/duo_agents_platform/pages/show/components/agent_flow_cancelation_modal.vue b/ee/app/assets/javascripts/ai/duo_agents_platform/pages/show/components/agent_flow_cancelation_modal.vue
new file mode 100644
index 0000000000000000000000000000000000000000..f2d1e4003c79523526bd819a7f4888f967a3bc14
--- /dev/null
+++ b/ee/app/assets/javascripts/ai/duo_agents_platform/pages/show/components/agent_flow_cancelation_modal.vue
@@ -0,0 +1,69 @@
+
+
+
+
+ {{
+ s__(
+ 'DuoAgentsPlatform|Are you sure you want to cancel this session? This action cannot be undone.',
+ )
+ }}
+