@@ -539,7 +539,9 @@ def get_similar_findings(self, request: HttpRequest, finding: Finding):
539539 finding_filter_class = SimilarFindingFilterWithoutObjectLookups if filter_string_matching else SimilarFindingFilter
540540 similar_findings_filter = finding_filter_class (
541541 request .GET ,
542- queryset = get_authorized_findings (Permissions .Finding_View ),
542+ queryset = get_authorized_findings (Permissions .Finding_View )
543+ .filter (test__engagement__product = finding .test .engagement .product )
544+ .exclude (id = finding .id ),
543545 user = request .user ,
544546 finding = finding ,
545547 )
@@ -3027,7 +3029,10 @@ def get_missing_mandatory_notetypes(finding):
30273029def mark_finding_duplicate (request , original_id , duplicate_id ):
30283030
30293031 original = get_object_or_404 (Finding , id = original_id )
3030- duplicate = get_object_or_404 (Finding , id = duplicate_id )
3032+ duplicate = get_object_or_404 (
3033+ Finding .objects .filter (test__engagement__product = original .test .engagement .product ),
3034+ id = duplicate_id ,
3035+ )
30313036
30323037 if original .test .engagement != duplicate .test .engagement :
30333038 if (original .test .engagement .deduplication_on_engagement
@@ -3112,7 +3117,10 @@ def reset_finding_duplicate_status(request, duplicate_id):
31123117
31133118def set_finding_as_original_internal (user , finding_id , new_original_id ):
31143119 finding = get_object_or_404 (Finding , id = finding_id )
3115- new_original = get_object_or_404 (Finding , id = new_original_id )
3120+ new_original = get_object_or_404 (
3121+ Finding .objects .filter (test__engagement__product = finding .test .engagement .product ),
3122+ id = new_original_id ,
3123+ )
31163124
31173125 if finding .test .engagement != new_original .test .engagement :
31183126 if (finding .test .engagement .deduplication_on_engagement
0 commit comments