Dismiss & Persistence
O sistema de dismiss permite marcar findings como falsos positivos, com persistência entre re-auditorias.
Hash Estável
Cada finding recebe um hash determinístico baseado em:
text
scanner:file:titleLine number NÃO faz parte do hash. Isso garante que o dismiss persiste mesmo quando o código muda de posição (novas linhas, refactors).
Ações disponíveis
| Ação | Escopo | Como usar |
|---|---|---|
| dismiss | Finding individual | Clique no ícone 👁️🗨️ ou via tool |
| restore | Finding individual | Restaura um finding dismissado |
| dismiss-category | Todos de uma categoria | security ou lgpd |
| dismiss-scanner | Todos de um scanner | Ex: SecretScanner |
| dismiss-all | Todos os findings | Dismiss em massa |
Via UI (Sidebar)
- Abra a sidebar Security Check → Findings
- Clique no ícone 👁️🗨️ ao lado do finding
- O finding desaparece da lista e o score é recalculado
Via Chat (Tool)
text
Dismiss all findings from SecretScanner
Dismiss all LGPD findings
Dismiss finding with hash "SecretScanner:src/config.ts:Hardcoded API Key"
Restore the dismissed findingO LLM usa a tool dismiss_finding automaticamente.
Persistência
- Dismissals são armazenados no workspace state do VS Code
- Persistem entre sessões e reloads
- Persistem entre re-auditorias (hash estável)
- São per-workspace (cada workspace tem seus dismissals)
Score
O Security Score (0-100) é recalculado automaticamente excluindo findings dismissados:
- Finding dismissado = não conta no score
- Dismiss all → Score 100/100
- Restore → Score recalculado com o finding incluído