diff --git a/.rubocop_todo/gitlab/strong_memoize_attr.yml b/.rubocop_todo/gitlab/strong_memoize_attr.yml
index 23fb60dd3849fd8fe31492a89b1b3d80eea6e5b1..c40f51cf04e99e515da4fb8938b5df12f37d47f5 100644
--- a/.rubocop_todo/gitlab/strong_memoize_attr.yml
+++ b/.rubocop_todo/gitlab/strong_memoize_attr.yml
@@ -217,7 +217,6 @@ Gitlab/StrongMemoizeAttr:
     - 'app/services/quick_actions/interpret_service.rb'
     - 'app/services/releases/base_service.rb'
     - 'app/services/resource_access_tokens/revoke_service.rb'
-    - 'app/services/resource_events/base_synthetic_notes_builder_service.rb'
     - 'app/services/search/global_service.rb'
     - 'app/services/search/project_service.rb'
     - 'app/services/search_service.rb'
diff --git a/app/models/resource_label_event.rb b/app/models/resource_label_event.rb
index d5c839724d46241987b2c99c950bb7ae4ebe8935..ad1ce740c89300556cb9c28103b89ffa7f793cba 100644
--- a/app/models/resource_label_event.rb
+++ b/app/models/resource_label_event.rb
@@ -112,7 +112,7 @@ def local_label?
   end
 
   def resource_parent
-    issuable.project || issuable.group
+    issuable.try(:resource_parent) || issuable.project || issuable.group
   end
 
   def discussion_id_key
diff --git a/app/services/resource_events/base_synthetic_notes_builder_service.rb b/app/services/resource_events/base_synthetic_notes_builder_service.rb
index e675bb610724271aae6c6039ec9b9ccef35ad163..9943fd4910b8195638b5591a3a6f200f214dfd85 100644
--- a/app/services/resource_events/base_synthetic_notes_builder_service.rb
+++ b/app/services/resource_events/base_synthetic_notes_builder_service.rb
@@ -44,10 +44,9 @@ def apply_last_fetched_at(events)
     end
 
     def resource_parent
-      strong_memoize(:resource_parent) do
-        resource.project || resource.group
-      end
+      resource.try(:resource_parent) || resource.project || resource.group
     end
+    strong_memoize_attr :resource_parent
 
     def table_name
       raise NotImplementedError
diff --git a/app/services/resource_events/merge_into_notes_service.rb b/app/services/resource_events/merge_into_notes_service.rb
index ea465c1e75e5c79739770f3a6f923628b08eb737..eb0023937b27bc045fbfe801ac3aa78bd007ab9f 100644
--- a/app/services/resource_events/merge_into_notes_service.rb
+++ b/app/services/resource_events/merge_into_notes_service.rb
@@ -37,4 +37,4 @@ def synthetic_notes
   end
 end
 
-ResourceEvents::MergeIntoNotesService.prepend_mod_with('ResourceEvents::MergeIntoNotesService')
+ResourceEvents::MergeIntoNotesService.prepend_mod
diff --git a/spec/services/issuable/discussions_list_service_spec.rb b/spec/services/issuable/discussions_list_service_spec.rb
index 446cc286e280f7aac9d4fbfe8dbb7d8036d990a6..9c791ce9cd36ddc0c04a38d5cf77f51a9d91ccc8 100644
--- a/spec/services/issuable/discussions_list_service_spec.rb
+++ b/spec/services/issuable/discussions_list_service_spec.rb
@@ -30,6 +30,12 @@
         expect(discussions_service.execute).to be_empty
       end
     end
+
+    context 'when issue exists at the group level' do
+      let_it_be(:issuable) { create(:issue, :group_level, namespace: group) }
+
+      it_behaves_like 'listing issuable discussions', :guest, 1, 7
+    end
   end
 
   describe 'fetching notes for merge requests' do