Skip to content

Filter by dismissal reason on the Vulnerability Report

Proposal

After we implement Dismissal Types/ Reasons, we will be dismissed vulnerabilities with 1 of 5 possible categories of dismissal reasons. Users will want the ability to filter the Vulnerability Report by each dismissal reason, so we should add this into the Status filter.

Make sure to pay attention to the GlListbox toggle text that it indicates how many of the dismissed types are chosen.

filter-dismissal

dismissal-2types

Implementation steps

  • update following graphql queries to filter the dismissal reason (check #411570 (closed) for what key and values query accepts):
    • ee/app/assets/javascripts/security_dashboard/graphql/queries/project_vulnerabilities.query.graphql
    • ee/app/assets/javascripts/security_dashboard/graphql/queries/group_vulnerabilities.query.graphql
    • ee/app/assets/javascripts/security_dashboard/graphql/queries/instance_vulnerabilities.query.graphql
  • update ee/app/assets/javascripts/security_dashboard/components/shared/filters/status_filter.vue to include dismissal reasons:
    • use GlCollapsibleListbox with default group (no label textSrOnly=true) for normal statuses and group called "Dismissed as..." for dismissal reasons (including "All dismissal reasons" option)
    • Update 'filter-changed' emit to also include dismissal reason in payload (filter the dismissal reasons from selected data)
    • current "Dismissed" status is equivalent of "All dismissed types" option
    • the dismissal reason selections are synced to the same state query string
  • Update spec

Testing

  • Update relevant E2E spec
Edited by Lorenz van Herwaarden