> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qlty.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Coverage not received for default branch

## What happened

Qlty has received code coverage for this project from pull requests, but never from its default branch.

Coverage is normally set up in a pull request, so what this tells you is that the setup never reached your default branch. Usually that is one of two things:

* **The pull request that added coverage was never merged.** The coverage step exists only on that branch, so it runs on the pull request and nowhere else.
* **It was merged, but the coverage step only runs on pull requests.** The CI trigger lists `pull_request` and not `push`.

Either way, coverage keeps arriving and nothing looks broken from Qlty's side.

## Why it matters

Qlty reports coverage for your default branch, so until it arrives the project has no coverage information at all:

* No total coverage percentage or grade on the project's [Overview](/cloud/projects/overview).
* No coverage in the [Code view](/coverage/browsing), including line-by-line coverage for individual files.
* No [trend chart](/coverage/trends), [hotspots](/coverage/hotspots), or coverage-coloured sunburst.
* The **Qlty Coverage** [commit status](/coverage/commit-statuses) has no base branch coverage to compare against.

## How to fix it

<Steps titleSize="h3">
  <Step title="Check whether the pull request was merged">
    Find the pull request that added coverage to your CI configuration. If it is still open, merging it is the whole fix.
  </Step>

  <Step title="If it was merged, check the CI trigger">
    Your coverage step needs to run on pushes to the default branch, not only on pull requests. In GitHub Actions, that means adding your default branch to `push`:

    ```yaml theme={"system"}
    on:
        push:
            branches: [main]
        pull_request:
    ```

    Then confirm the coverage publish step is not itself conditional on the event being a pull request.
  </Step>
</Steps>

<Note>
  The alert clears once Qlty has processed a coverage report for your default branch.
</Note>

For the full setup, see the [Code Coverage quickstart](/coverage/quickstart). If reports are being sent but not arriving, see [Troubleshooting Code Coverage](/coverage/troubleshooting).

## What counts

Only coverage published for the project's configured default branch clears this alert. Coverage on another long-lived branch does not. If Qlty has the wrong default branch, go to **Project Settings > General** and click **Re-sync** under **Re-Sync with GitHub**.

The count shown on the alert is the number of coverage reports Qlty has received from pull requests. It is there to show that coverage is arriving — the problem is where it is arriving from, not whether it works. You can see every report Qlty has received under **Project Settings > Code Coverage > Reports**.
