Feat(Q): Add Group AmazonQ availability settings
- Feature branch: DRAFT: Amazon q spike (!174614 - closed)
- Side note: This was originally developed in a private fork by GitLab team members in collaboration with Amazon's team.
What does this MR do and why?
This MR adds the AmazonQ availability settings for the Group Settings page.
- It takes over where the Duo settings would normally be. It looks like in a recent MR, these Duo settings have moved. We'll keep the Amazon settings here for now and open a follow-up to figure out what to do in the long run with UX.
- When the availability is turned off, we remove the Amazon Q service account user from any subgroups or projects.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
Demo | Screenshot |
---|---|
demo_group_settings | ![]() |
How to set up and validate locally
Prerequisites:
- You'll need to make sure you have an Ultimate license and AI features setup on your GDK. See these instructions.
- Setup the AmazonQ configuration following these instructions. Make sure that the availability is set to
On by default
.
Instructions for these changes:
- Visit a group and go to Settings
- EXPECTATION: A section for Amazon Q should be in the group settings page.
- Try changing the Availability and click Save changes.
- EXPECTATION: A toast message should pop up that this was successful.
- Add the service account user for Amazon Q to the group and a subproject.
- Go to the group's Settings and under the Amazon Q section set the availability to Always Off.
- Click Save changes.
- EXPECTATION: The service account user should have been removed from the group and subproject.
Merge request reports
Activity
assigned to @pslaughter
- A deleted user
added backend label
- Resolved by Paul Slaughter
3 Warnings This merge request is quite big (593 lines changed), please consider splitting it into multiple merge requests. featureaddition and featureenhancement merge requests normally have a documentation change. Consider adding a documentation update or confirming the documentation plan with the Technical Writer counterpart.
For more information, see:
- The Handbook page on merge request types.
- The definition of done documentation.
This merge request does not refer to an existing milestone. 1 Message CHANGELOG missing: If this merge request needs a changelog entry, add the
Changelog
trailer to the commit message you want to add to the changelog.If this merge request doesn't need a CHANGELOG entry, feel free to ignore this message.
Reviewer roulette
Category Reviewer Maintainer backend @dbiryukov
(UTC+1, 7 hours ahead of author)
@halilcoban
(UTC+1, 7 hours ahead of author)
frontend @glin5
(UTC-5, 1 hour ahead of author)
@justin_ho
(UTC+1, 7 hours ahead of author)
test for spec/features/*
@dbiryukov
(UTC+1, 7 hours ahead of author)
Maintainer review is optional for test for spec/features/*
Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.
Searchable setting sections
Looks like you have edited the template of some settings section. Please check that all changed sections are still searchable:
- If you created a new section, make sure to add it to either
lib/search/project_settings.rb
orlib/search/group_settings.rb
, or in their counterparts inee/
if this section is only available behind a licensed feature. - If you removed a section, make sure to also remove it from the files above.
- If you changed a section's id, please update it also in the files above.
- If you just moved code around within the same page, there is nothing to do.
- If you are unsure what to do, please reach out to grouppersonal productivity.
ee/app/assets/javascripts/amazon_q_settings/components/amazon_q_settings_block.vue
+ <settings-block id="js-amazon-q-settings" :title="$options.i18n.settingsBlockTitle"> + </settings-block>
ee/app/assets/javascripts/amazon_q_settings/components/group_settings_app.vue
+ <amazon-q-settings-block
If needed, you can retry the
danger-review
job that generated this comment.Generated by
Dangermentioned in merge request !174614 (closed)
Bundle size analysis [beta]
This compares changes in bundle size for entry points between the commits d8cbc723 and f377478b
Special assetsEntrypoint / Name Size before Size after Diff Diff in percent average 4.42 MB 4.42 MB - 0.0 % mainChunk 3.28 MB 3.28 MB - 0.0 % Significant Growth: 13Expand
Entrypoint / Name Size before Size after Diff Diff in percent pages.groups 59.45 KB 61.73 KB +2.28 KB 3.8 % pages.groups.activity 68.37 KB 70.65 KB +2.28 KB 3.3 % pages.groups.clusters 72.83 KB 75.11 KB +2.28 KB 3.1 % pages.groups.clusters.connect 75.82 KB 78.1 KB +2.28 KB 3.0 % pages.groups.epics.index 60.06 KB 62.34 KB +2.28 KB 3.8 % pages.groups.epics.new 60.61 KB 62.88 KB +2.28 KB 3.8 % pages.groups.epics.show 61.27 KB 63.55 KB +2.28 KB 3.7 % pages.groups.labels.new 62.05 KB 64.33 KB +2.28 KB 3.7 % pages.groups.omniauth_callbacks 85.69 KB 87.97 KB +2.28 KB 2.7 % pages.groups.projects 59.81 KB 62.09 KB +2.28 KB 3.8 % The table above is limited to 10 entries. Please look at the full report for more details
Your MR has at least one entrypoint growing significantly (more > 1 KB or 2%). If you write new or extend existing features, this is expected and there is nothing to worry about.
Please consider pinging someone from the FE Foundations (
@leipert
,@markrian
,@pgascouvaillancourt
,@sdejonge
or@thutterer
) for review, if you are unsure about the size increase.Note: We do not have exact data for d8cbc723. So we have used data from: e1d3e9f2.
The intended commit has no webpack pipeline, so we chose the last commit with one before it.Please look at the full report for more details
Read more about how this report works.
Generated by
Danger Generated bygitlab_quality-test_tooling
.
Slow tests detected in this merge request. These slow tests might be related to this merge request's changes.Click to expand
Job File Name Duration Expected duration #8674070104 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 33.14 s < 27.12 s #8674070497 ee/spec/lib/ee/search/group_settings_spec.rb#L17
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 36.79 s < 27.12 s #8675276807 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 32.84 s < 27.12 s #8675277431 ee/spec/lib/ee/search/group_settings_spec.rb#L17
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 38.07 s < 27.12 s #8676098675 ee/spec/lib/ee/search/group_settings_spec.rb#L17
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 37.52 s < 27.12 s #8678587558 ee/spec/lib/ee/search/group_settings_spec.rb#L17
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 48.73 s < 27.12 s #8679734153 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 31.57 s < 27.12 s #8679734999 ee/spec/lib/ee/search/group_settings_spec.rb#L19
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 38.67 s < 27.12 s #8680775536 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 33.1 s < 27.12 s #8680775490 ee/spec/lib/ee/search/group_settings_spec.rb#L19
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 39.81 s < 27.12 s #8681388806 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 32.62 s < 27.12 s #8681979826 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 41.93 s < 27.12 s #8681979497 spec/lib/search/group_settings_spec.rb#L6
Search results for group settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 31.49 s < 27.12 s #8681979715 ee/spec/lib/ee/search/group_settings_spec.rb#L19
Search results for settings behaves like all group settings sections exist and have correct anchor links has only valid settings sections 37.4 s < 27.12 s - A deleted user
added rspec:slow test detected label
E2E Test Result Summary
allure-report-publisher
generated test report!e2e-test-on-cng:
test report for f377478bexpand test summary
+------------------------------------------------------------------+ | suites summary | +-------------+--------+--------+---------+-------+-------+--------+ | | passed | failed | skipped | flaky | total | result | +-------------+--------+--------+---------+-------+-------+--------+ | Fulfillment | 2 | 0 | 7 | 0 | 9 | ✅ | | Plan | 86 | 0 | 8 | 0 | 94 | ✅ | | Create | 140 | 0 | 19 | 1 | 159 | ✅ | | Analytics | 2 | 0 | 0 | 0 | 2 | ✅ | | Govern | 84 | 0 | 10 | 0 | 94 | ✅ | | Data Stores | 33 | 0 | 10 | 0 | 43 | ✅ | | Verify | 49 | 0 | 16 | 0 | 65 | ✅ | | Monitor | 8 | 0 | 12 | 0 | 20 | ✅ | | Manage | 1 | 0 | 9 | 0 | 10 | ✅ | | Release | 5 | 0 | 1 | 0 | 6 | ✅ | | Configure | 0 | 0 | 3 | 0 | 3 | ➖ | | Package | 24 | 0 | 14 | 0 | 38 | ✅ | | Growth | 0 | 0 | 2 | 0 | 2 | ➖ | | Secure | 2 | 0 | 5 | 0 | 7 | ✅ | | Ai-powered | 0 | 0 | 2 | 0 | 2 | ➖ | | ModelOps | 0 | 0 | 1 | 0 | 1 | ➖ | +-------------+--------+--------+---------+-------+-------+--------+ | Total | 436 | 0 | 119 | 1 | 555 | ✅ | +-------------+--------+--------+---------+-------+-------+--------+
e2e-test-on-gdk:
test report for f377478bexpand test summary
+--------------------------------------------------------------+ | suites summary | +---------+--------+--------+---------+-------+-------+--------+ | | passed | failed | skipped | flaky | total | result | +---------+--------+--------+---------+-------+-------+--------+ | Govern | 1 | 0 | 0 | 0 | 1 | ✅ | | Package | 1 | 0 | 0 | 0 | 1 | ✅ | | Create | 2 | 0 | 0 | 0 | 2 | ✅ | +---------+--------+--------+---------+-------+-------+--------+ | Total | 4 | 0 | 0 | 0 | 4 | ✅ | +---------+--------+--------+---------+-------+-------+--------+
added 1 commit
- 4b7ba007 - Feat(Q): Add Group AmazonQ availability settings
added 1 commit
- 96aa7cdf - Feat(Q): Add Group AmazonQ availability settings
added 1 commit
- cf339ae3 - Feat(Q): Add Group AmazonQ availability settings
- Resolved by Paul Slaughter
removed pipeline:mr-approved label
removed workflowproduction label
removed rspec:slow test detected label
- Resolved by Brett Walker
mentioned in commit b575c09a
added 1 commit
- b575c09a - Feat(Q): Add Group AmazonQ availability settings
@jannik_lehmann do you have availability to review the frontend for this high priority Amazon Q MR? We're upstreaming changes we've made in a private fork so considering this as already having received an initial review. Checkout the MR description for details. Thanks!
requested review from @jannik_lehmann
- Resolved by Brett Walker
Excellent work on this @pslaughter Was able to reproduce locally, nothing to be found regarding the changes. frontend LGTM!
added pipeline:mr-approved label
- Resolved by Brett Walker
mentioned in issue #510171
mentioned in issue #510174
added 1 commit
- 1110617a - Update groups API endpoint with check_query_limit
reset approvals from @jannik_lehmann by pushing to the branch
- Resolved by Brett Walker
- Resolved by Brett Walker
- Resolved by Brett Walker
- Resolved by Brett Walker
@digitalmoksha could you please review and merge this Amazon Q MR? See the MR description and annotations for more context on the changes. The next MR will be the project-level settings FE (see the feature branch spike MR for the commit).
FYI - @jannik_lehmann approved the FE changes, but the last 2 BE-only commits have reset his approval. I think we can consider the FE as approved still
requested review from @digitalmoksha
- Resolved by Brett Walker
mentioned in commit a35fd539
added 1 commit
- a35fd539 - Polish group_amazon_q_settings_view_model with ::Gitlab::Json.generate
reset approvals from @digitalmoksha by pushing to the branch
- Resolved by Brett Walker
Thanks for taking a look at this @digitalmoksha! While
master
is broken, I took a whack at resolving the non-blocking comment in the latest commit. WDYT?
requested review from @digitalmoksha
Hey there
, could you please make sure this merge request gets merged?The merge request is set to auto-merge, but it is not currently mergeable (MR
detailed_merge_status
is conflict).This message was generated automatically. Improve it or delete it.
- Resolved by Brett Walker
@pslaughter pipeline passed, but now there are merge conflicts
aborted automatic add to merge train because the source branch was updated. Learn more.
added 162 commits
-
a35fd539...d8cbc723 - 161 commits from branch
master
- f377478b - Merge branch 'master' into 'ps-amazon-q-group-settings'
-
a35fd539...d8cbc723 - 161 commits from branch
reset approvals from @digitalmoksha by pushing to the branch
started a merge train
mentioned in commit bb828ce3
mentioned in commit a0ac8570
added workflowstaging-canary label
added workflowcanary label and removed workflowstaging-canary label
changed milestone to %17.8
added workflowstaging label and removed workflowcanary label
added workflowproduction label and removed workflowstaging label
added releasedcandidate label
added releasedpublished label and removed releasedcandidate label