Coverage comment replaces "1 Tests Failed" with "All tests successful" when the failing test passed in another CI job
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- testing
Línea de trabajo
Start by reading the linked investigation in get_pr_comment_agg, calc_test_id, get_test_status, and the notify task, then trace how JUnit results from multiple flagged uploads are combined. Check how the existing tests cover mixed pass and fail results across uploads. Done means the failure remains visible and the comment does not claim all tests passed when any upload reports a failure.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
We upload JUnit results from multiple CI matrix jobs, each with its own flag. A test has failed in one job but passed in others that upload later, Codecov first posted a "❌ 1 Tests Failed" comment but then replaced it with the coverage report, which even says "✅ All tests successful. No failed tests found."
See https://github.com/scrapy/scrapy/pull/8387
Screenshots
Additional context
LLM-provided investigation:
get_pr_comment_agg(https://github.com/codecov/umbrella/blob/65af8ae7d13eae4e83f179e2937b1bf18de00ba9/apps/worker/services/test_analytics/ta_timeseries.py#L197-L207) keeps only the latest outcome of eachtest_idacross all uploads of the commit:LAST(outcome, timestamp) … GROUP BY test_id.calc_test_id(https://github.com/codecov/umbrella/blob/65af8ae7d13eae4e83f179e2937b1bf18de00ba9/apps/worker/services/test_analytics/ta_timeseries.py#L46-L48) hashes only name,
classname and testsuite, not the flags. So a later pass in another job hides the failure,get_test_status(https://github.com/codecov/umbrella/blob/65af8ae7d13eae4e83f179e2937b1bf18de00ba9/apps/worker/helpers/ta_status.py) returnsany_failures=False, all_passed=True, and the notify task (https://github.com/codecov/umbrella/blob/65af8ae7d13eae4e83f179e2937b1bf18de00ba9/apps/worker/tasks/notify.py#L229-L250) goes ahead and overwrites the comment.
Though, to be honest, I wouldn't expect it to say "All tests successful" when a test failed, even when not using flags.
- Lenguaje dominante
- Sin datos de lenguaje
- Estrellas
- 52
- Forks
- 26
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de codecov/feedback
-
Bundle analysis: `normalizePath` replaces everything after the first `-` in a file name, so different assets collidePosiblemente ocupada @ChiptenIsCool la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Docs Waiting for: Product Owner
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
-
Merge commits can take the PR head as parent, dropping carryforward flags on the base branchAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
Feature RequestAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 5/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 54/100
Todos los issues de codecov/feedback
Issues similares
-
review-2.0.0 security
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
dkuenzel/meshcore-home-gateway#91 ·
Los mantenedores suelen responder en 1 día
-
tech-debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
rookslog/zlibrary-mcp#408 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
daniel-ospina/tortoise#11283 ·
Los mantenedores suelen responder en 1 día
-
bug correctness
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
KRLabsOrg/verbatim-rag#122 ·
Los mantenedores suelen responder en 1 día
-
provider testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
mishraprafful/multihull#234 ·
Los mantenedores suelen responder en 1 día