Skip to content

fix(deps): corrige avisos de segurança novos que quebram a main [SPEC-0010] - #23

Merged
thomasravache merged 7 commits into
mainfrom
sdd/SPEC-0001
Oct 28, 2026
Merged

thomasravache merged 7 commits into
mainfrom
sdd/SPEC-0001

Conversation

@thomasravache

Copy link
Copy Markdown
Owner

Resumo

A main está vermelha desde o merge do PR #13 (run 40779730006, 2026-10-28): o mesmo código que passou no PR em 2026-10-14 agora falha em build-lint, unit, architecture, e2e e security. Esperado: main sempre verde (ADR-0005/ADR-0008).

Reprodução: dotnet build Vitrine.slnx -warnaserror → NU1902: Package 'MessagePack' 2.5.302 has a known moderate severity vulnerability (GHSA-qhrr-8q5h-9q3h); npm --prefix web audit --audit-level=high → undici < 7.30.1 e happy-dom ≤ 21.0.3 (alta).

Impacto: nenhum deploy sai da main (sem imagem nova) e todo PR fica bloqueado.

Por quê: Avisos publicados depois do PR (as versões fixadas ficaram vulneráveis com o tempo, não por mudança de código):

  • MessagePack 2.5.302 vem transitivo de Aspire.Hosting 13.6.1 (AppHost, Tooling.Tests e fixture E2E); a auditoria NuGet com warnings como erro (ADR-0003) quebra o restore. Aspire 13.6.4 depende de MessagePack 2.5.307 (corrigido).
  • undici 7.29.1, fixado pelo overrides de web/package.json (dependência do orval), tem aviso alto novo; corrigido em 7.30.1.
  • happy-dom 20.14.6 (ambiente do Vitest) tem aviso alto (≥17.0.0 ≤21.0.3); corrigido em 21.0.4.

Specs

Spec Título Tier · Tipo Status Board
SPEC-0010 Avisos de segurança novos em dependências quebram o build da main lite · fix approved —

Como foi feito

Muda: Aspire 13.6.1 → 13.6.4 (patch; Directory.Packages.props e SDK do AppHost), overrides.undici 7.29.1 → 7.30.1, happy-dom 20.14.6 → 21.0.4 (dev), lockfiles regenerados. Não muda: código de produção, orval (8.37.0 do ADR-0013), demais dependências — as outras atualizações seguem nos PRs do Dependabot com revisão própria.

Padrão seguido: versões só em Directory.Packages.props e lockfiles versionados (ADR-0008); teste de arquivo no estilo de tests/Vitrine.Tooling.Tests/BuildRulesTests.cs; overrides já usado em web/package.json

Rollback: revert do merge (volta à main vermelha; nada em produção)

Outras ocorrências: Vai se repetir sempre que sair um aviso novo; a defesa é a rotina semanal do Dependabot (ADR-0008) — PRs #10, #17, #18 e #19 abertos para revisão. Nenhuma spec nova.

Arquitetura

  • Padrão seguido: versões só em Directory.Packages.props e lockfiles versionados (ADR-0008); teste de arquivo no estilo de tests/Vitrine.Tooling.Tests/BuildRulesTests.cs; overrides já usado em web/package.json
  • Desvio do padrão existente: Nenhum
  • ADR-0008 — Dependências e ciclo de vida da stack (accepted)

Como foi testado

Testes do plano (ainda sem Relatório de Entrega): SPEC-0010:UT-01

Risco, rollout e rollback

  • Rollback: revert do merge (volta à main vermelha; nada em produção)

Breaking changes

Nenhuma

Gates

Gate Status Evidência Data
G0 Spec PASS validate: 0 erro(s) — bf1862a 2026-10-28
G1 Red PASS MANUAL: verify G1 PASS (fc3f2e9); red real: dotnet test tests/Vitrine.Tooling.Tests -p:NuGetAudit=false -- --filter-trait spec=SPEC-0010:UT-01 → failed 1: MessagePack 2.5.302 em 3 lockfiles, happy-dom 20.14.6, undici 7.29.1 (o red do comando test do sdd-config foi 'vitest not found' — worktree sem node_modules, não conta) 2026-10-28
G2 Green PASS build exit 0 (npm warn install-scripts Run npm install-scripts ls to review, or `npm install-scripts a); test exit 0 (Duration 322ms (environment 60%, import 22%, transform 9%, tests 7%, worker 1%)); lint exit 0 (> tsc --noEmit && tsc --noEmit -p tsconfig.node.json); coverage exit 0 (Installed 6 packages in 8ms) — a0ea53c 2026-10-28
G3 Arquitetura PASS arch_test exit 0 (duration: 974ms) — a0ea53c 2026-10-28
G4 Review PASS MANUAL: Review de fc3f2e9..a0ea53c: 0 blocker/major; minor (comparação textual de pré-release, sem efeito nas faixas atuais) e nits aceitos; verify --base sdd/SPEC-0001 PASS (1 aviso justificado: lockfile do restore); build -warnaserror 0 avisos; Tooling 13/13; npm audit high exit 0; dotnet list --vulnerable: nenhum; diff de lockfiles: só Aspire 13.6.4, MessagePack 2.5.307, undici 7.30.1, happy-dom 21.0.4 2026-10-28
G5 Integração & CI PENDING
H2 Integração aprovada PENDING
G6 Deploy PENDING
G7 Pronto & Docs PENDING

Checklist

  • Spec(s) aprovada(s) (H1) e gates G0–G4 com evidência
  • Testes do plano (unitários, integração, contrato, E2E) passando no CI
  • Padrão arquitetural existente mantido, ou desvio coberto por ADR aprovado
  • Nenhuma alteração fora do escopo (touches) da spec
  • Documentação e CHANGELOG (Keep a Changelog) atualizados quando aplicável
  • Sem segredos ou dados sensíveis no código ou nos logs

Refs: SPEC-0010

🤖 Generated with Claude Code

https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW

thomasravache and others added 7 commits October 28, 2026 19:32
Refs: SPEC-0006

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
…a main

Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
… conhecidos

Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
…MessagePack

Aspire 13.6.4 resolve MessagePack 2.5.307 (GHSA-qhrr-8q5h-9q3h corrigido em 2.5.303). Lockfiles do AppHost, Tooling.Tests e fixture E2E regenerados; DCP/dashboard continuam fixados em linux-x64.

Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
…avisos altos

overrides.undici 7.29.1 -> 7.30.1 (dependência do orval) e happy-dom 20.14.6 -> 21.0.4 (ambiente do Vitest); npm audit --audit-level=high sem achados.

Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
Refs: SPEC-0010

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019kVNQvRmA9JJyLzKxbyetW
@thomasravache
thomasravache merged commit 94ac6ff into main Oct 28, 2026
8 checks passed
@thomasravache
thomasravache deleted the sdd/SPEC-0001 branch October 28, 2026 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant