Suite runner never asserts PASS + FAIL == TOTAL, so a section can vanish from the tally or double-count
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
- #1561 de @InauguralPhysicist — cerrado sin fusionar
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 74/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- bash, shell
- Área
- testing-qa
Línea de trabajo
Start with tests/run_all_tests.sh and read how each section updates PASS, FAIL, TOTAL, and skipped counts, then inspect tools/section_plan.sh for the existing skip audit. Run full, sharded, and changed-sections suites, including the three [99zb] mutations described in the issue. Done means the suite reports a named nonzero failure for mismatched counters while valid skips remain outside TOTAL.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Found by a blind critic while reviewing the #1326 fix. It is out of scope there, so it is filed here.
tests/run_all_tests.sh prints RESULTS: $PASS/$TOTAL passed, $FAIL failed, $SKIPPED skipped, but nothing asserts the three counters agree. Each section increments TOTAL and then PASS or FAIL (or gives the TOTAL back and calls section_skip) by hand. A mistake in one of those increments does not show up anywhere.
Measured with the #1326 branch, a changed-sections run, and bash32 hidden. Each case mutated only [99zb]'s skip arm:
| mutation | RESULTS line | suite rc |
|---|---|---|
section_skip ... → PASS=$((PASS+1)) (the pre-#1326 behaviour) |
419/418 passed, 0 failed, 0 skipped |
0 |
section_skip ... → : |
418/418 passed, 0 failed, 0 skipped (the section vanishes) |
0 |
drop TOTAL=$((TOTAL - 1)) |
418/419 passed, 0 failed, 1 skipped |
0 |
tools/section_plan.sh --skip-audit is static: it checks that skip lines are ROUTED through section_skip, not that the counters add up. So all three mutations pass it. It does catch a bare echo " SKIP:".
This exists only as mutants today; the real tree reads 5397/5397 on a full release run. It is still a missing invariant: the RESULTS line is the suite's verdict, and it can currently state an impossible fraction and exit 0.
Done when
- The runner fails (nonzero exit, named reason) when
PASS + FAIL != TOTALat the RESULTS line. - Calibrated: each of the three mutations above makes the suite red. Shown in the PR.
- Sharded and changed-sections runs obey the same invariant (their TOTAL is the selected sections' total).
- A section's skip still counts only in
skipped=. The invariant does not push skips back into TOTAL.
- Lenguaje dominante
- C
- Estrellas
- 3
- Forks
- 7
- Merge medio
- 11 h 28 min
- PR fusionados (30 d)
- 262
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
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 InauguralSystems/EigenScript
-
area:gates area:gfx found-by:critic kind:gate-defect
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
InauguralSystems/EigenScript#1825 ·
Los mantenedores suelen responder en 1 día
-
Amalgamation compiles with warnings at -O0 (-Wreturn-type) and -O1 (-Wmaybe-uninitialized)Posiblemente ocupada @facelessdevhack la tomó hace 4 días. Abiertoarea:embed bug found-by:code-review kind:gate-defect
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
InauguralSystems/EigenScript#1775 ·
Los mantenedores suelen responder en 1 día
-
UB: (int) cast of a user double outside int range in dispatch / vm_index_is_int / flat_index_atAbiertoarea:runtime-vm kind:silent-wrong
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
InauguralSystems/EigenScript#1748 ·
Los mantenedores suelen responder en 1 día
-
area:gfx bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
InauguralSystems/EigenScript#1684 ·
Los mantenedores suelen responder en 1 día
-
area:stdlib bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
InauguralSystems/EigenScript#1679 ·
Los mantenedores suelen responder en 1 día
Todos los issues de InauguralSystems/EigenScript
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
vercel-labs/zerolang#442 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
Los mantenedores suelen responder en 1 día
-
mewencode: base256[] and base128[] are indexed out of bounds by a non-ASCII octetPosiblemente ocupada @kazu-yamamoto la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
kazu-yamamoto/Mew#276 ·
Los mantenedores suelen responder en 1 día
-
[iwm] transaction_get() copies the whole payload regardless of the length asked forPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 91/100
FujiNetWIFI/fujinet-firmware#2045 ·
Los mantenedores suelen responder en 1 día