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

# Verificação de Correções

> Verifique que seu PR corrige uma vulnerabilidade conhecida referenciando-a na descrição do PR

<h2 id="overview">
  Visão Geral
</h2>

Quando você abre um PR que corrige uma vulnerabilidade conhecida, pode referenciar a issue na descrição do PR. O ZeroPath verificará automaticamente se as suas mudanças resolveriam a vulnerabilidade e informará os resultados no PR. Quando o PR é mesclado, o ZeroPath verifica novamente e atualiza o status da issue no dashboard.

<h2 id="referencing-vulnerabilities">
  Referenciando Vulnerabilidades
</h2>

Adicione referências a issues do ZeroPath em qualquer lugar da descrição do seu PR usando qualquer um destes formatos:

<Tabs>
  <Tab title="Formato ZP-ID">
    Referencie uma ou mais issues pelo seu UUID:

    ```
    ZP-ID: 550e8400-e29b-41d4-a716-446655440000
    ```

    Separadas por vírgula para múltiplas issues:

    ```
    ZP-ID: 550e8400-e29b-41d4-a716-446655440000, 6ba7b810-9dad-11d1-80b4-00c04fd430c8
    ```
  </Tab>

  <Tab title="URL do Dashboard">
    Cole a URL da issue diretamente do dashboard do ZeroPath. Todos os formatos de URL são suportados:

    ```
    https://zeropath.com/app/issues/550e8400-e29b-41d4-a716-446655440000
    ```

    ```
    https://zeropath.com/app/issues?issueId=550e8400-e29b-41d4-a716-446655440000
    ```

    ```
    https://zeropath.com/app/repositories/repo-id?issueId=550e8400-e29b-41d4-a716-446655440000
    ```
  </Tab>
</Tabs>

Ambos os formatos são insensíveis a maiúsculas e minúsculas. Você pode misturá-los livremente e incluir múltiplas referências por PR.

<h2 id="where-to-find-the-issue-uuid">
  Onde Encontrar o UUID da Issue
</h2>

Navegue até a página de detalhes da issue no dashboard do ZeroPath. O UUID aparece na URL:

```
https://zeropath.com/app/issues/{uuid}
```

Você também pode copiá-lo da visão de detalhes da issue.

<h2 id="how-it-works">
  Como Funciona
</h2>

<Steps>
  <Step title="Abra um PR com Referências">
    Inclua uma ou mais referências `ZP-ID` ou URLs do dashboard na descrição do seu PR.
  </Step>

  <Step title="Verificação Pré-Merge">
    O ZeroPath verifica se cada vulnerabilidade referenciada seria resolvida pelas mudanças do seu PR e publica um comentário com os resultados. Isso é **apenas informativo** — o status da issue ainda não é alterado.
  </Step>

  <Step title="Itere se Necessário">
    Se a verificação reportar "still present", envie commits adicionais e responda `@ZeroPath retriage` para executar novamente a verificação contra o código mais recente.
  </Step>

  <Step title="Faça o Merge do PR">
    Assim que a verificação confirmar "would fix", faça o merge do PR normalmente.
  </Step>

  <Step title="Verificação Pós-Merge">
    Depois que o PR é mesclado, o ZeroPath executa automaticamente a verificação novamente contra o código mesclado no branch de destino. Se a correção for confirmada, a issue é marcada como **resolved** no dashboard.
  </Step>
</Steps>

<h2 id="results">
  Resultados
</h2>

O ZeroPath publica um comentário no seu PR e atualiza um status de check em dois momentos — antes e depois do merge.

<h3 id="pr-comment">
  Comentário no PR
</h3>

<h4 id="pre-merge-informational">
  Pré-Merge (Informativo)
</h4>

| Resultado         | Significado                                                                                                                                                              |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Would fix**     | A vulnerabilidade não foi detectada após a aplicação das mudanças do seu PR. Após o merge, a issue será marcada como resolvida.                                          |
| **Still present** | A vulnerabilidade ainda é detectada. O comentário inclui uma explicação do porquê. Responda `@ZeroPath retriage` para verificar novamente depois de enviar mais commits. |
| **Not found**     | O UUID é inválido, a issue já está fechada ou não pertence a este repositório.                                                                                           |

<h4 id="post-merge-status-update">
  Pós-Merge (Atualização de Status)
</h4>

| Resultado         | Significado                                                                                                                                 |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| **Resolved**      | A vulnerabilidade foi confirmada como corrigida no branch de destino. A issue é marcada como resolvida no dashboard, com um link para o PR. |
| **Still present** | A vulnerabilidade persiste após o merge. A issue permanece aberta.                                                                          |

<h3 id="check-status">
  Status do Check
</h3>

Um status de check dedicado **Fix Verification** é publicado no commit do PR junto com o comentário. Você pode usar esse check em regras de proteção de branch para exigir que a verificação de correção passe antes do merge.

| Status      | Significado                                                                                                    |
| ----------- | -------------------------------------------------------------------------------------------------------------- |
| **Success** | Todas as vulnerabilidades referenciadas parecem estar resolvidas.                                              |
| **Failure** | Uma ou mais vulnerabilidades referenciadas ainda estão presentes.                                              |
| **Neutral** | Algumas vulnerabilidades referenciadas não puderam ser encontradas, ou nenhuma vulnerabilidade foi verificada. |

<h2 id="re-investigation">
  Reinvestigação
</h2>

Se a verificação inicial reportar "still present" mas você acredita que a sua correção está correta, envie o código atualizado e responda com:

```
@ZeroPath retriage
```

Isso executa novamente a verificação de correção contra o código mais recente do PR. Diferentemente da verificação inicial (que roda apenas na abertura do PR), o retriage pode ser acionado a qualquer momento para verificar novamente após novos commits.

<h2 id="important-notes">
  Notas Importantes
</h2>

* **Os resultados pré-merge são informativos.** O status da issue só é atualizado depois que o PR é mesclado e a verificação pós-merge confirma a correção.
* **Funciona para issues tanto de SAST quanto de SCA.** Qualquer issue rastreada no dashboard do ZeroPath pode ser referenciada.
* **Autocorretivo.** Se uma correção for marcada como resolvida incorretamente, o próximo full scan detectará novamente a vulnerabilidade e reabrirá a issue automaticamente.
* **Suportado no GitHub, GitLab e Bitbucket.** O formato `ZP-ID` e as URLs do dashboard funcionam em todas as plataformas de VCS suportadas.
