# Defects

Source: https://docs.qualflare.com/docs/defects · Last updated: 2026-10-27

How defects work in Qualflare: the four statuses, severity, categories, team ownership, automatic defects from clusters and flaky tests, and field limits.

In Qualflare, a **defect** is a bug found during testing that a project tracks by number, severity, one of four statuses and an owning team; Qualflare also opens defects for you from failure clusters and flaky tests.

| Fact           | Detail                                                                                                                                                                                                                                        |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Where          | **Defects** under **Analysis** in the project sidebar; each defect opens in a side panel                                                                                                                                                      |
| Who            | Read: (requires the Viewer role or higher in the project). Create, edit, change status, assign a team and comment: (requires the Editor role or higher in the project). Delete in the app: (requires the Owner role in the project)           |
| Plans          | Defects are on every plan. Cluster defects: (available on Starter, Core, Scale, Enterprise). Flaky-test defects: (available on Starter, Core, Scale, Enterprise, Open Source). Redundant-case defects: (available on Core, Scale, Enterprise) |
| CLI            | `qf <identifier> defects list` and `qf <identifier> defect get <seq>` ([Defects commands](https://docs.qualflare.com/docs/cli/read-commands#defects))                                                                                         |
| MCP            | `list_defects`, `get_defect`, `create_defect` and `update_defect` ([MCP server reference](https://docs.qualflare.com/docs/api/mcp-reference)). Quo can read defects but not create or change them                                             |
| Issue trackers | GitHub, GitLab, Jira and Linear, one way ([Linked issues](https://docs.qualflare.com/docs/defects#linked-issues))                                                                                                           |

## How defects work

A Qualflare defect records one bug in one project, and each project numbers its own defects, for example `#123`. A defect has:

* a **Name**, and a plain-text **Description**, **Expected Result** and **Actual Result**
* a **Severity**, Medium by default
* a **Status**, which starts as **Active**
* a **Category**, which Qualflare sets: **Unknown** for defects you create
* an **Environment**, No environment by default, which the app can't change after you create the defect
* a **Team**, related test cases, linked issues and comments

Defects have no assignee, priority field, milestone, tags, attachments, steps or activity timeline; screenshots and logs stay on the case runs. For who changed what, see [Audit logs](https://docs.qualflare.com/docs/administration/audit-logs) (available on Scale, Enterprise, Open Source).

*Figure: A defect Qualflare creates from a failure cluster links the cluster and carries its summary, expected result and actual result.*

### How defects are created

| Source                           | What happens                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Create Defect**                | You fill in the form on the **Defects** page. The defect starts **Active**, with the category **Unknown**. See [Create a defect](https://docs.qualflare.com/docs/defects/manage-defects#create-a-defect).                                                                                                                                                                                                                                         |
| **Failure clusters**             | When AI failure clustering labels a new cluster, Qualflare creates one defect for it, sets its severity and category, links the cluster's test cases and sends a "New defect created" notification. It needs **Enable AI Features** in the project's **AI Features** settings and a plan with AI failure clustering. See [Failure clusters](https://docs.qualflare.com/docs/ai/failure-clusters).                                                 |
| **Flaky detection**              | When a test case becomes flaky, Qualflare creates a Medium-severity defect named "Flaky detection:" and the case name, with the flaky category, and closes it when the case is stable again. It works with the project's AI features off and follows the project's [Quality settings](https://docs.qualflare.com/docs/administration/project-settings#quality-settings).                                                                          |
| **Redundant case notifications** | Click **Create Defect** on a redundant case notification: Qualflare creates a Low-severity defect, `Redundant test cases: <n> cases affected`, with the Redundant Case category, linked to the recommended cases. It needs the project's AI features on, a plan with [AI Insights](https://docs.qualflare.com/docs/ai/insights), monthly case analysis quota left and **Redundant Case Insights** on in the project's **Notifications** settings. |
| **MCP**                          | MCP has `list_defects` and `get_defect` (read) and `create_defect` and `update_defect` (write); writes need a token with **Allow writes**. Quo can read defects but cannot create or change them.                                                                                                                                                                                                                                                 |

You can't create a defect from a [case run](https://docs.qualflare.com/docs/runs/launches#case-runs).

### The Defects list

#### Columns

| Column                             | Shows                                                  |
| ---------------------------------- | ------------------------------------------------------ |
| **Name**                           | The number and name. Click it to open the defect panel |
| **Priority**                       | The severity. Defects have no separate priority        |
| **Category**                       | The kind of failure                                    |
| **Environment**                    | The environment, or None                               |
| **Date Created**, **Date Updated** | When the defect was created and last changed           |
| **Status**                         | The status                                             |
| **Team**                           | The owning team. Click **Assign team** to pick one     |

Click a column header to sort by it; the first click sorts descending, and Team can't be sorted. By default, the list is sorted by number, oldest first.

#### Filters

The filter bar has **Severity**, **Status**, **Category** (only the categories your defects use) and **Environment**. Several values in one filter match any of them, and several filters must all match. You can also type them as tokens, for example `severity:critical,high status:active,action_required`. See [Search, filters and shortcuts](https://docs.qualflare.com/docs/get-started/search-and-filters).

#### Row actions

**More options** (⋯) at the end of a row has **Severity**, **Status** and **Delete**. Delete runs at once (see [Delete a defect](https://docs.qualflare.com/docs/defects#delete-a-defect)).

#### Bulk actions

Select defects with the checkboxes and click **Delete**. Qualflare asks you to confirm. The **Change Status** bulk action isn't available yet, so change statuses one defect at a time.

### The defect panel

Click a defect's name to open it in a resizable side panel over the list. Close it with its close button, Esc while the panel has focus, or the browser Back button; clicking outside the panel doesn't close it.

#### Panel header

The header shows the number and name, an **Automated** icon (defects from failure clusters or flaky detection) or a **Manual** icon, the severity, status, environment and category, how long ago the defect was created, and **Linked issues** when there are any.

#### Panel menu

**More options** (⋯) in the panel header has **Edit** (the name and description), **Severity**, **Status**, **Reopen** (Closed defects only, see [Reopen a defect](https://docs.qualflare.com/docs/defects#reopen-a-defect)) and **Delete**.

#### Tabs

* **Overview**: a **Linked Cluster** card on cluster defects, then **Description**, **Expected Result** and **Actual Result** (each result has its own edit button), and a **Reopen Reason** after a reopen.
* **Related Cases**: the linked test cases. You can unlink a case here.
* **Comments**: the discussion about the defect.

## Work with defects

Each defect task has its own section in the guide:

* [Create a defect](https://docs.qualflare.com/docs/defects/manage-defects#create-a-defect)
* [Find defects Qualflare creates](https://docs.qualflare.com/docs/defects/manage-defects#find-defects-qualflare-creates)
* [Triage new defects](https://docs.qualflare.com/docs/defects/manage-defects#triage-new-defects)
* [Route a defect to a team](https://docs.qualflare.com/docs/defects/manage-defects#route-a-defect-to-a-team)
* [Change the status](https://docs.qualflare.com/docs/defects/manage-defects#change-the-status)
* [Reopen a defect](https://docs.qualflare.com/docs/defects/manage-defects#reopen-a-defect)
* [Verify a fix](https://docs.qualflare.com/docs/defects/manage-defects#verify-a-fix)
* [Check release readiness](https://docs.qualflare.com/docs/defects/manage-defects#check-release-readiness)
* [Report on defect trends](https://docs.qualflare.com/docs/defects/manage-defects#report-on-defect-trends)
* [Comment on a defect](https://docs.qualflare.com/docs/defects/manage-defects#comment-on-a-defect)
* [Delete a defect](https://docs.qualflare.com/docs/defects/manage-defects#delete-a-defect)

- [Create, triage and close defects](https://docs.qualflare.com/docs/defects/manage-defects): Create defects, find the ones Qualflare opens, triage and route them, close or reopen them, and verify fixes.

## Defect statuses

A Qualflare defect has one of four statuses. Active and Action Required count as open; False positive and Closed count as closed.

| Status              | Dot    | Counts as | Meaning                                                      |
| ------------------- | ------ | --------- | ------------------------------------------------------------ |
| **Active**          | Red    | Open      | The default for new and reopened defects                     |
| **Action Required** | Orange | Open      | Someone needs to act                                         |
| **False positive**  | Purple | Closed    | Not a real defect. Qualflare never reopens it automatically. |
| **Closed**          | Green  | Closed    | Fixed                                                        |

You can set any status at any time from the **Status** submenu in the row menu or the panel menu. There is no closure reason or duplicate link, so add a comment to explain your choice. The Status filter also offers Reopened, but Qualflare never sets it.

### Reopen a defect

**Reopen** appears only on Closed defects and needs a **Reopen Reason** of 1 to 1,000 characters. The defect returns to **Active**, with the reason on its **Overview** tab. See [Reopen a defect](https://docs.qualflare.com/docs/defects/manage-defects#reopen-a-defect).

### Automatic status changes

* **Regression**: When new failures join the failure cluster of a Closed defect, Qualflare sets it back to **Active** with a Reopen Reason that starts "Regression detected." and gives the date it was closed, and sends a "Regression detected" notification. This needs the project's AI features on and a plan with AI failure clustering. False positive defects are never reopened this way.
* **Recovery**: When a flaky test case is stable again, Qualflare closes its flaky-detection defect.
* **Still flaky**: If you close a flaky-detection defect, or mark it **False positive**, while the case is still flaky, the next analysis run opens a new one.
* **Deleted cluster defects**: New failures in the cluster of a deleted defect don't create or reopen a defect.

No setting changes a defect's status from CI results.

## Severity

Severity says how bad a defect is, and it's the only ranking a defect has.

| Severity     | Icon              | Use it for                                   | Example                      |
| ------------ | ----------------- | -------------------------------------------- | ---------------------------- |
| **Critical** | Four red bars     | System unusable, data loss, security breach  | Login completely broken      |
| **High**     | Three orange bars | Major feature broken, significant workaround | Checkout fails half the time |
| **Medium**   | Two orange bars   | Minor feature broken, easy workaround        | Sorting in the wrong order   |
| **Low**      | One green bar     | Cosmetic issue, typo                         | Misspelled label             |

Change it from the **Severity** submenu in the row menu or the panel menu.

## Categories

Qualflare sets each defect's category. Defects you create start as **Unknown**. Failure-cluster defects get the category the analysis assigns. Flaky-detection defects get the flaky category, which the defect shows as **Flakiness** and the Category filter lists as **Flaky Test**.

The **Category** filter lists only the categories your project's defects use. Its names are Assertion Failure, Locator Failure, Timeout, Flaky Test, Environment Error, Precondition Failure, Script Error, Data Error, Ci Infrastructure, Regression, Low Value Case, Redundant Case and Unknown. Defects created from redundant case notifications have the Redundant Case category, but the list and the defect panel show them as Unknown.

## Team ownership

Defects belong to teams, not to people. In the **Team** column, click **Assign team** (or the current team) and pick a team; to clear it, click × on the chip or select the current team again. The team's other members get an in-app notification, and an email if **Team Assignment Notifications** is on in the project's [Notifications settings](https://docs.qualflare.com/docs/administration/project-settings#project-email-notifications). See [Teams](https://docs.qualflare.com/docs/administration/teams).

## Related cases

Qualflare links a failure-cluster defect to the cluster's test cases, and a redundant-case defect to the recommended cases. A flaky-detection defect names its test case but doesn't list it. The app has no button to link a case by hand. To remove a link, unlink the case on the defect's **Related Cases** tab or on the case's **Defects** tab.

## Linked issues

Connect GitHub, GitLab, Jira or Linear under **Integrations** in the project sidebar (Jira also needs the Qualflare app for Jira) and choose the events that create issues: Defect Created, Launch Failed, Cluster Created or Flaky Test Detected. Delivery is one way: tracker changes don't flow back.

Only an issue filed for **Defect Created** is recorded on the defect, under **Linked issues**; issues for the other events aren't linked to any defect. Defect Created goes out for defects created with **Create Defect**, the API or MCP, and from flaky detection. Cluster defects and redundant-case defects never send it, so they never show Linked issues.

Defect Created also sends the `defect.created` [webhook](https://docs.qualflare.com/docs/integrations/webhooks), and [Slack](https://docs.qualflare.com/docs/integrations/slack) can post when a defect is created and when it is closed or marked False positive. See [GitHub](https://docs.qualflare.com/docs/integrations/github), [GitLab](https://docs.qualflare.com/docs/integrations/gitlab) and [Jira](https://docs.qualflare.com/docs/integrations/jira).

## Comments

Post comments on a defect's **Comments** tab: type in &#x2A;*Write a comment...** and click **Post**, or press Cmd+Enter (macOS) / Ctrl+Ente&#x72;. Replies go one level deep, and a reply notifies only the author of the comment it answers; there are no @mentions. You can edit or delete your own comments, edited ones show &#x2A;*(edited)**, and a comment holds up to 10,000 characters. Posting needs the Editor role or higher in the project.

## Delete a defect

> **Caution: Deleting a defect can't be undone**
>
> Delete takes effect at once. The row menu and the panel menu don't ask you to confirm; only bulk Delete does. Deleting a defect also deletes its comments, its links to test cases and its record of linked issues. Issues already created in GitHub, GitLab, Jira or Linear stay there. You can't undo a delete.

After you delete a cluster defect, new failures in its cluster don't create or reopen one. To delete a defect, click **More options** (⋯) > **Delete** in its row or panel. In the app, only project Owners can delete defects.

## Permissions

| Action                                                                                           | Role needed                                         |
| ------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| View defects and comments                                                                        | (requires the Viewer role or higher in the project) |
| Create and edit defects, change severity or status, reopen, assign a team, comment, unlink cases | (requires the Editor role or higher in the project) |
| Delete defects in the app                                                                        | (requires the Owner role in the project)            |

Your role on a project is the higher of your project role and your workspace role. In the web app today, buttons follow your project role. See [Roles and permissions](https://docs.qualflare.com/docs/administration/roles-permissions).

## Field limits

| Field                                  | Limit                                                                      |
| -------------------------------------- | -------------------------------------------------------------------------- |
| **Name**                               | Required, up to 128 characters (at least 3 in **Create Defect**)           |
| **Description**                        | Up to 10,000 characters in Create Defect, and up to 5,000 when you edit it |
| **Expected Result**, **Actual Result** | Up to 5,000 characters each when you edit them                             |
| **Reopen Reason**                      | Required, up to 1,000 characters                                           |
| **Comment**                            | Up to 10,000 characters                                                    |

Text fields are plain text. Markdown isn't rendered.

## Related

* **Guides:** [Create, triage and close defects](https://docs.qualflare.com/docs/defects/manage-defects) · [Failure clusters](https://docs.qualflare.com/docs/ai/failure-clusters) · [Defect charts on the Overview](https://docs.qualflare.com/docs/analytics)
* **Reference:** [Teams](https://docs.qualflare.com/docs/administration/teams) · [Roles and permissions](https://docs.qualflare.com/docs/administration/roles-permissions) · [Audit logs](https://docs.qualflare.com/docs/administration/audit-logs) · [Glossary: Defect](https://docs.qualflare.com/docs/reference/glossary#defect) · [Webhooks](https://docs.qualflare.com/docs/integrations/webhooks)
* **CLI/API:** [Defects commands](https://docs.qualflare.com/docs/cli/read-commands#defects) · [MCP server reference](https://docs.qualflare.com/docs/api/mcp-reference)
