Defects
How defects work in Qualflare: the four statuses, severity, categories, team ownership, automatic defects from clusters and flaky tests, and field limits.
Last updated
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: Viewer+ · project (requires the Viewer role or higher in the project). Create, edit, change status, assign a team and comment: Editor+ · project (requires the Editor role or higher in the project). Delete in the app: Owner · project (requires the Owner role in the project) |
| Plans | Defects are on every plan. Cluster defects: Starter, Core, Scale, Enterprise (available on Starter, Core, Scale, Enterprise). Flaky-test defects: All plans (available on Starter, Core, Scale, Enterprise, Open Source). Redundant-case defects: Core, Scale, Enterprise (available on Core, Scale, Enterprise) |
| CLI | qf <identifier> defects list and qf <identifier> defect get <seq> (Defects commands) |
| MCP | list_defects, get_defect, create_defect and update_defect (MCP server reference). Quo can read defects but not create or change them |
| Issue trackers | GitHub, GitLab, Jira and Linear, one way (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 Scale and above (available on Scale, Enterprise, Open Source).
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. |
| 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. |
| 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. |
| 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, 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.
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.
Row actions
More options (⋯) at the end of a row has Severity, Status and Delete. Delete runs at once (see 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) 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
- Find defects Qualflare creates
- Triage new defects
- Route a defect to a team
- Change the status
- Reopen a defect
- Verify a fix
- Check release readiness
- Report on defect trends
- Comment on a defect
- Delete a defect
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.
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. See 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, and Slack can post when a defect is created and when it is closed or marked False positive. See GitHub, GitLab and Jira.
Comments
Post comments on a defect's Comments tab: type in Write a comment... and click Post, or press ⌘Enter or Ctrl+Enter. 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 (edited), and a comment holds up to 10,000 characters. Posting needs the Editor role or higher in the project.
Delete a defect
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 | Viewer+ · project (requires the Viewer role or higher in the project) |
| Create and edit defects, change severity or status, reopen, assign a team, comment, unlink cases | Editor+ · project (requires the Editor role or higher in the project) |
| Delete defects in the app | Owner · project (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.
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 · Failure clusters · Defect charts on the Overview
- Reference: Teams · Roles and permissions · Audit logs · Glossary: Defect · Webhooks
- CLI/API: Defects commands · MCP server reference
Environments
Environments in Qualflare label where tests ran. Every project starts with development, staging, production and qa; uploads must name an existing identifier.
Create, triage and close defects
Create a defect in Qualflare, find the ones it creates for you, then triage, route to a team, change the status, reopen, verify fixes and report on trends.