Can the agent distinguish stdout and stderr?
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 64/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- python
- Área
- devtools, testing-qa
Línea de trabajo
Comienza en src/programbench/container.py alrededor de la línea 85, donde parece que el helper de ejecución del contenedor combina stdout y stderr. Reproduce el comportamiento con el caso de evaluación de cmatrix en eval/tests/test_cmatrix.py:120 y compara los streams observados con la salida real del comando. Se considera terminado cuando el comportamiento previsto de stdout/stderr está claro y la observación predeterminada del agente ya no oculta la distinción, con el comportamiento de evaluación relevante comprobado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi!
I find that some test functions failed against a generated executable because the test expected to have some string in stderr, while the executable gave that string in stdout.
I also noticed that ProgramBench’s container execution helper appears to merge stdout/stderr streams here.
Is stdout/stderr separation intentionally unavailable to agents during exploration? (I think it is still possible for an agent to manually test stream placement with shell redirection, e.g. cmd >/tmp/out 2>/tmp/err, but the default observation format seems to make the distinction easy to miss.)
Thank you!
The commands I ran
uv run --with mini-swe-agent mini-extra programbench \
--filter "abishekvashok__cmatrix.5c082c6" \
--output output \
--model openai/gpt-5.4
uv run programbench eval output
Score log
Evaluation Summary
Instance Score Comment
abishekvashok__cmatrix.5c082c6 94 507 tests
Average 94 1 instances
A failed test in eval.json
- task:
abishekvashok/cmatrix - test function name:
eval.tests.test_cmatrix.TestColorOptions.test_color_invalid_shows_error_message - branch:
1b991a57d4e9
self = <test_cmatrix.TestColorOptions object at 0x7732071f2bf0>
def test_color_invalid_shows_error_message(self):
"""Test invalid color name produces error message."""
result = run("-C", "purple")
assert result.returncode == 0 # Exits with 0 but shows error
> assert b"Invalid color" in result.stderr
E AssertionError: assert b'Invalid color' in b''
E + where b'' = CompletedProcess(args=['./executable', '-C', 'purple'], returncode=0, stdout=b' Invalid color selection\n Valid colors are green, red, blue, white, yellow, cyan, magenta and black.\n', stderr=b'').stderr
eval/tests/test_cmatrix.py:120: AssertionError
- Lenguaje dominante
- Python
- Estrellas
- 928
- Forks
- 67
- Métricas de merge de PR
- Sin PR fusionados en 30 d
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 facebookresearch/ProgramBench
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 58/100
Todos los issues de facebookresearch/ProgramBench
Issues similares
-
bug confirmed issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
open-webui/open-webui#30750 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100