Add option to control foundational flows in settings

What does this MR do and why?

Add option to control foundational flows in settings, this also controls the availability of buttons that use DuoWorkflowComponents which are all foundational flows.

This feature is behind a feature flag as it's incomplete, but the MR is getting way too big.

References

Screenshots or screen recordings

Before After

How to set up and validate locally

  1. This MR is behind a feature flag, but backend does not yet push it, so you need to apply the following patch to test it in your GDK
Subject: [PATCH] Add option to control foundational flows in settings

Changelog: added
EE: true
---
Index: ee/app/assets/javascripts/ai/settings/components/duo_flow_settings.vue
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/ee/app/assets/javascripts/ai/settings/components/duo_flow_settings.vue b/ee/app/assets/javascripts/ai/settings/components/duo_flow_settings.vue
--- a/ee/app/assets/javascripts/ai/settings/components/duo_flow_settings.vue	(revision ac6127a5c9933a132b52e5b2a074a52b26627df2)
+++ b/ee/app/assets/javascripts/ai/settings/components/duo_flow_settings.vue	(date 1763651299918)
@@ -147,7 +147,6 @@
         </template>
       </gl-form-checkbox>
       <gl-form-checkbox
-        v-if="glFeatures.duoFoundationalFlows"
         v-model="foundationalFlowsEnabled"
         data-testid="duo-foundational-flows-features-checkbox"
         :disabled="disabledCheckbox || !flowEnabled"
Index: app/assets/javascripts/pages/projects/shared/permissions/components/gitlab_duo_settings.vue
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/app/assets/javascripts/pages/projects/shared/permissions/components/gitlab_duo_settings.vue b/app/assets/javascripts/pages/projects/shared/permissions/components/gitlab_duo_settings.vue
--- a/app/assets/javascripts/pages/projects/shared/permissions/components/gitlab_duo_settings.vue	(revision ac6127a5c9933a132b52e5b2a074a52b26627df2)
+++ b/app/assets/javascripts/pages/projects/shared/permissions/components/gitlab_duo_settings.vue	(date 1763650187987)
@@ -267,7 +267,6 @@
           </template>
         </project-setting-row>
         <project-setting-row
-          v-if="glFeatures.duoFoundationalFlows"
           :label="s__('DuoAgentPlatform|Allow foundational flows')"
           :help-text="
             s__(
  1. Run GDK in SaaS mode and in a Duo enabled group go the GitLab Duo settings, e.g.: http://gdk.test:3000/groups/gitlab-duo/-/settings/gitlab_duo/configuration image

  2. Enable "Allow foundational flows" and click on "Save changes"

  3. Go to a project within the group and check if the project allows foundational flows image

  4. Go back to the group and turn off "allow foundational flows"

  5. Go to a project within the group and verify foundational flows is turned off and locked image

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #568031 (closed), #580424 (closed)

Edited by Fred de Gier

Merge request reports

Loading