feat: backlog nao-VPS + tags/flakiness rumo a X-Ray/TestRail #34
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/combined-perf-quality"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
119 testes backend, 47 frontend, todos passando; verificado ao vivo no navegador.
- ESLint no frontend (flat config), wirado no CI; desligada a regra nova react-hooks/set-state-in-effect (conflita com o padrao proposital de useQuery+useEffect->draft local usado em toda tela de detalhe). - SBOM do Trivy publicado como artifact baixavel do workflow (if: always()). - Cobertura de CRUD destrutivo/versionamento/concorrencia que estava zerada: delete de Plan/Run/RunScenario/scenario alias/ScenarioTemplate direto/item de checklist com cascata correta; template referenciado por Run existente vira SET NULL sem alterar a copia; edicao nao retroage sobre execucoes ja copiadas; historico de versao acumula em ordem; endpoints sem If-Unmodified-Since ignoram o header (last-write-wins), nunca 400/412. - UX: guarda de duplicate-submit (saving/deleting) nos formularios e deletes que ficaram de fora do padrao original; os 3 componentes "picker" agora aguardam onSelect e mostram erro em vez de fire-and-forget silencioso; acoes de "salvar instantaneo" (status de step, item de checklist) capturam e mostram erro em vez de falhar em silencio. - Logs da API viraram JSON estruturado (observability.py). Bug real encontrado no processo: alembic/env.py chama fileConfig no init_db(), que desabilita todo logger nao listado no alembic.ini -- os logs da API vinham sendo silenciados a cada subida do processo. Corrigido reafirmando a config depois de init_db(); travado em teste. - Tags/labels em Issue e TestScenarioTemplate (mesmo vocabulario de Report), com filtro em GET /api/issues e contagem em GET /api/tags somando as tres entidades. Migration 632765b48860. - Historico de execucao + sinal de flakiness por cenario da biblioteca (GET /api/scenario-templates/{id}/executions) -- mesmo cenario passando e falhando entre runs diferentes. Logica de agregacao de status extraida pra services/scenario_status.py, compartilhada com a matriz de rastreabilidade. - Import de JUnit XML deixado de fora de proposito -- tem decisoes de produto reais em aberto (mapeamento testsuite/testcase, criacao automatica de achado, dedup de reimportacao) documentadas no BACKLOG. 119 testes backend, 47 frontend, todos passando; verificado ao vivo no navegador (tags, filtro por tag, flakiness).Substitui a barra de nav em lista unica (quebrando linha de forma inconsistente) por menus agrupados com dropdown ("Testes", "Rastreabilidade") mais icones em todos os itens, incluindo os botoes de acao da Biblioteca (.feature/Historico/Execucoes).