def METHOD_NAME():
    summary_modified_field = '_current_version__autoapprovalsummary__modified'
    # We don't take deleted reports into account
    valid_abuse_report_states = (
        AbuseReport.STATES.UNTRIAGED,
        AbuseReport.STATES.VALID,
        AbuseReport.STATES.SUSPICIOUS,
    )
    recent_abuse_reports_subquery = AbuseReport.objects.filter(
        state__in=valid_abuse_report_states,
        created__gte=OuterRef(summary_modified_field),
        guid=OuterRef('guid'),
    )
    return [
        # Only recalculate add-ons that received recent abuse reports
        # possibly through their authors.
        Q(
            Exists(recent_abuse_reports_subquery),
        )
        | Q(
            authors__abuse_reports__state__in=valid_abuse_report_states,
            authors__abuse_reports__created__gte=F(summary_modified_field),
        )
        # And check ratings that have a rating of 3 or less
        | Q(
            _current_version__ratings__deleted=False,
            _current_version__ratings__created__gte=F(summary_modified_field),
            _current_version__ratings__rating__lte=3,
        )
    ]