Skip to content
Snippets Groups Projects
Commit 24afe947 authored by Thomas Randolph's avatar Thomas Randolph Committed by guillaume micouin
Browse files

Remove default on `group_saved_replies_flag feature flag

Changelog: other
parent b60acbe9
No related branches found
No related tags found
No related merge requests found
This commit is part of merge request !176142. Comments created here will be created in the context of that merge request.
Showing
with 8 additions and 146 deletions
......@@ -25898,11 +25898,7 @@ four standard [pagination arguments](#pagination-arguments):
 
##### `Group.savedReplies`
 
Saved replies available to the group. Available only when feature flag `group_saved_replies_flag` is enabled. This field can only be resolved for one group in any single request.
DETAILS:
**Introduced** in GitLab 16.10.
**Status**: Experiment.
Saved replies available to the group. This field can only be resolved for one group in any single request.
 
Returns [`GroupSavedReplyConnection`](#groupsavedreplyconnection).
 
......@@ -25918,11 +25914,7 @@ four standard [pagination arguments](#pagination-arguments):
 
##### `Group.savedReply`
 
Saved reply in the group. Available only when feature flag `group_saved_replies_flag` is enabled. This field can only be resolved for one group in any single request.
DETAILS:
**Introduced** in GitLab 16.10.
**Status**: Experiment.
Saved reply in the group. This field can only be resolved for one group in any single request.
 
Returns [`GroupSavedReply`](#groupsavedreply).
 
......@@ -16,7 +16,7 @@ DETAILS:
> - [Feature flag `saved_replies` removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/123363) in GitLab 16.6.
> - Group-level saved replies [introduced](https://gitlab.com/groups/gitlab-org/-/epics/12669) in GitLab 16.11 [with a flag](../../administration/feature_flags.md) named `group_saved_replies_flag`. Disabled by default.
> - Group-level saved replies [enabled](https://gitlab.com/gitlab-org/gitlab/-/issues/440817) on GitLab.com and self-managed in GitLab 16.11.
> - Group-level saved replies [generally available](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148958) in GitLab 17.0. Feature flag `group_saved_replies_flag` removed.
> - Group-level saved replies [generally available](https://gitlab.com/gitlab-org/gitlab/-/issues/504028) in GitLab 17.7. Feature flag `group_saved_replies_flag` removed.
> - Project-level saved replies [introduced](https://gitlab.com/groups/gitlab-org/-/epics/12669) in GitLab 17.0 [with a flag](../../administration/feature_flags.md) named `project_saved_replies_flag`. Enabled by default.
> - [Generally available](https://gitlab.com/gitlab-org/gitlab/-/issues/504028) in GitLab 17.7. Feature flag `project_saved_replies_flag` removed.
......
......@@ -276,17 +276,13 @@ module GroupType
::Types::Groups::SavedReplyType.connection_type,
null: true,
resolver: ::Resolvers::Groups::SavedRepliesResolver,
description: 'Saved replies available to the group. Available only when feature flag ' \
'`group_saved_replies_flag` is enabled. This field can only be resolved ' \
'for one group in any single request.',
experiment: { milestone: '16.10' }
description: 'Saved replies available to the group. This field can only be resolved ' \
'for one group in any single request.'
field :saved_reply,
resolver: ::Resolvers::Groups::SavedReplyResolver,
description: 'Saved reply in the group. Available only when feature flag ' \
'`group_saved_replies_flag` is enabled. This field can only ' \
'be resolved for one group in any single request.',
experiment: { milestone: '16.10' }
description: 'Saved reply in the group. This field can only ' \
'be resolved for one group in any single request.'
field :value_stream_analytics,
::Types::Analytics::ValueStreamAnalyticsType,
......
......@@ -298,7 +298,7 @@ def epic_and_work_item_associations_unification_enabled?
override :supports_saved_replies?
def supports_saved_replies?
::Feature.enabled?(:group_saved_replies_flag, self, type: :beta) && licensed_feature_available?(:group_saved_replies)
licensed_feature_available?(:group_saved_replies)
end
def licensed_ai_features_available?
......
---
name: group_saved_replies_flag
feature_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/330098
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/143660
rollout_issue_url:
milestone: '16.9'
group: group::code review
type: beta
default_enabled: true
......@@ -4067,14 +4067,6 @@ def create_member_role(member, abilities = member_role_abilities)
context 'saved replies permissions' do
let(:current_user) { owner }
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
end
it { is_expected.to be_disallowed(:read_saved_replies, :create_saved_replies, :update_saved_replies, :destroy_saved_replies) }
end
context 'when no license is present' do
before do
stub_licensed_features(group_saved_replies: false)
......
......@@ -13,19 +13,6 @@
let(:mutation) { graphql_mutation(:group_saved_reply_create, input) }
let(:mutation_response) { graphql_mutation_response(:group_saved_reply_create) }
context 'with group_saved_replies_flag disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
end
it 'returns null' do
post_graphql_mutation(mutation, current_user: current_user)
expect(mutation_response).to be_nil
end
end
context 'when license is invalid' do
before do
stub_licensed_features(group_saved_replies: false)
......
......@@ -14,19 +14,6 @@
let(:mutation) { graphql_mutation(:group_saved_reply_destroy, input) }
let(:mutation_response) { graphql_mutation_response(:group_saved_reply_destroy) }
context 'with group_saved_replies_flag disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
end
it 'returns null' do
post_graphql_mutation(mutation, current_user: current_user)
expect(mutation_response).to be_nil
end
end
context 'when license is invalid' do
before do
stub_licensed_features(group_saved_replies: false)
......
......@@ -14,19 +14,6 @@
let(:mutation) { graphql_mutation(:group_saved_reply_update, input) }
let(:mutation_response) { graphql_mutation_response(:group_saved_reply_update) }
context 'with group_saved_replies_flag disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
end
it 'returns null' do
post_graphql_mutation(mutation, current_user: current_user)
expect(mutation_response).to be_nil
end
end
context 'when license is invalid' do
before do
stub_licensed_features(group_saved_replies: false)
......
......@@ -51,19 +51,6 @@
end
end
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
end
it 'returns nil' do
post_query
expect(saved_reply_graphl_response).to be_nil
end
end
context 'when license is valid' do
before do
stub_licensed_features(group_saved_replies: true)
......
......@@ -48,19 +48,6 @@
end
end
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
end
it 'returns null' do
post_query
expect(saved_reply_graphl_response).to be_nil
end
end
context 'when license is valid' do
before do
stub_licensed_features(group_saved_replies: true)
......
......@@ -18,17 +18,6 @@
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
get group_comment_templates_path(group)
end
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when license is valid' do
before do
stub_licensed_features(group_saved_replies: true)
......@@ -61,17 +50,6 @@
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
get group_comment_templates_path(group)
end
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when license is valid' do
before do
stub_licensed_features(group_saved_replies: true)
......@@ -104,17 +82,6 @@
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when group_saved_replies_flag feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
stub_licensed_features(group_saved_replies: true)
get group_comment_templates_path(group)
end
it { expect(response).to have_gitlab_http_status(:not_found) }
end
context 'when license is valid' do
before do
stub_licensed_features(group_saved_replies: true)
......
......@@ -12,17 +12,6 @@
subject(:service) { described_class.new(object: group, name: name, content: content).execute }
context 'when feature flag is disabled' do
before do
stub_feature_flags(group_saved_replies_flag: false)
end
it 'returns an error' do
expect(service[:status]).to eq(:error)
expect(service[:message]).to eq(_('You have insufficient permissions to create a saved reply'))
end
end
context 'when not licensed' do
before do
stub_licensed_features(group_saved_replies: false)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment