feat(gate): auditar_deps lê a lista única de CVE do ORG atrás de cve_lista_unica [INFRA-68190] #74

Merged
tmf-ia merged 1 commit from fix/INFRA-68190-lista-unica-v2 into develop 2026-10-09 08:21:35 -03:00
Owner

INFRA-68190 / INFRA-68311: gate de audit lê a lista única de CVE do ORG

Desligado por padrão. Com cve_lista_unica: false, que é o padrão, o comportamento é o legado sem nenhuma mudança: toda HIGH/CRITICAL e só o audit_ignores do produto. Nenhum produto muda com este merge.

Ligado por produto, o gate passa a:

  • ler a lista única do ORG (seguranca/referencia/excecoes-cve-os.yaml, que já tem ecossistema e a entrada braces/npm até 31/10). Se não conseguir baixar a lista, ou se o token faltar, o gate falha fechado;
  • reprovar só HIGH/CRITICAL que tenham correção (padrão de 28/09). CVE sem correção aparece listada e não bloqueia;
  • aplicar a supressão da causa-raiz também aos dependentes do npm, e avisar quando uma cópia local é redundante;
  • tratar o pip-audit que sai sem relatório como INFRA: ambiente não resolvido, com o stderr completo.

Este PR junta num só os 5 commits de 03/10 da branch fix/INFRA-68190-politica-cve-global, que nunca virou PR. O rebase conflitava em 4 deles por causa do README, que foi dividido em docs/. A seção agora mora em docs/guia-de-adocao.md.

Próximos passos, fora deste PR: gravar CVE_OS_EXCECOES_TOKEN no Infisical (gated) e depois ligar a chave no piloto do DANI. A trava de 15/10 da INFRA-68311 é do TMF/infra e da imagem base, não deste leitor.

Prova: python3 -m pytest tests -q deu 706 passed e 68 skipped (a integração com a lista real só roda com token).

🤖 Generated with Claude Code

https://claude.ai/code/session_017QrAM1chSgVpSwDrKJVLVn

## INFRA-68190 / INFRA-68311: gate de audit lê a lista única de CVE do ORG **Desligado por padrão.** Com `cve_lista_unica: false`, que é o padrão, o comportamento é o legado sem nenhuma mudança: toda HIGH/CRITICAL e só o `audit_ignores` do produto. Nenhum produto muda com este merge. Ligado por produto, o gate passa a: - ler a lista única do ORG (`seguranca/referencia/excecoes-cve-os.yaml`, que já tem `ecossistema` e a entrada `braces`/npm até 31/10). Se não conseguir baixar a lista, ou se o token faltar, o gate falha fechado; - reprovar só HIGH/CRITICAL que tenham correção (padrão de 28/09). CVE sem correção aparece listada e não bloqueia; - aplicar a supressão da causa-raiz também aos dependentes do npm, e avisar quando uma cópia local é redundante; - tratar o `pip-audit` que sai sem relatório como `INFRA: ambiente não resolvido`, com o stderr completo. Este PR junta num só os 5 commits de 03/10 da branch `fix/INFRA-68190-politica-cve-global`, que nunca virou PR. O rebase conflitava em 4 deles por causa do README, que foi dividido em `docs/`. A seção agora mora em `docs/guia-de-adocao.md`. Próximos passos, fora deste PR: gravar `CVE_OS_EXCECOES_TOKEN` no Infisical (gated) e depois ligar a chave no piloto do DANI. A trava de 15/10 da INFRA-68311 é do TMF/infra e da imagem base, não deste leitor. **Prova:** `python3 -m pytest tests -q` deu 706 passed e 68 skipped (a integração com a lista real só roda com token). 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_017QrAM1chSgVpSwDrKJVLVn
Consolidação, sobre a develop atual, dos commits e91e158, a5cfac2, 5cc98cc, 4b168c0 e 6f31d96 da
branch fix/INFRA-68190-politica-cve-global (03/10, nunca virou PR). O README foi fatiado em docs/
depois disso; a seção foi para docs/guia-de-adocao.md.

- auditar_deps.py: lista única do ORG pela URL crua, falha fechada; só HIGH/CRITICAL com correção;
  dependente npm herda a supressão da causa-raiz; aviso de cópia redundante; pip-audit sem
  relatório vira 'INFRA: ambiente não resolvido' com stderr completo
- chave cve_lista_unica (padrão false = legado inalterado) e cve_lista_unica_url no schema, no
  exemplo e no ci.yml
- testes: test_lista_unica.py e test_pip_ambiente_nao_resolvido.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017QrAM1chSgVpSwDrKJVLVn
tmf-ia merged commit e01167963b into develop 2026-10-09 08:21:35 -03:00
Sign in to join this conversation.
No reviewers
No labels
seguranca
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
TMF/ci-shared!74
No description provided.