Clarify and harden cleanroom rules around reference executable instrumentation
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- docker
- Área
- documentation, infrastructure, security
Línea de trabajo
Comienza con las instrucciones actuales de ProgramBench y mini-SWE-agent y con la configuración recomendada de Docker descrita en el issue. Compara el sondeo de caja negra permitido explícitamente con la instrumentación del entorno, el loader, el estado del proceso y el sistema de archivos, y determina después si el límite de cleanroom documentado es suficiente o si se necesita un harness de oracle estructurado y aislado. Se considera terminado cuando las reglas y, si se lleva a cabo, el comportamiento del harness sean explícitos y reproducibles.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi ProgramBench team, thanks for releasing the benchmark.
I wanted to ask for clarification about the intended cleanroom boundary for the provided reference executable during inference.
The current ProgramBench / mini-SWE-agent instructions are very clear that agents should infer behavior only by running the provided executable and reading bundled documentation. The default ProgramBench config also disallows internet access (--network none), runs as a non-root user, and drops SYS_PTRACE. The prompt explicitly forbids source lookup, wrapping/reusing the original binary, decompilation/disassembly, and strace/ltrace or similar instrumentation.
My question is whether the following should also be explicitly considered cleanroom violations, which I have observed during inference of my tested model:
- executing the reference with a polluted environment, e.g.
PATH=/tmp:$PATH ./executable ...to make it call agent-written fake dependencies - using loader instrumentation such as
LD_PRELOAD,LD_LIBRARY_PATH, or dynamic linker tricks against./executable - inspecting runtime process state via
/proc/$pid/{maps,fd,environ,cmdline}or core/memory dumps - changing cwd/tmp/config files specifically to observe implementation-level effects rather than normal public CLI behavior
These are different from normal allowed black-box probing, such as running ./executable --help, passing inputs, and observing stdout/stderr/exit codes/filesystem side effects.
The current recommended Docker setup appears to run the agent and the reference executable in the same container. This blocks important classes of abuse (--network none, non-root user, SYS_PTRACE dropped), but it does not fully isolate the true reference executable from agent-controlled environment variables, writable /tmp/workspace state, PATH/cwd pollution, or same-container process observation.
Would you consider either:
- documenting the above behaviors explicitly as disallowed instrumentation/wrapping of the oracle, and/or
- adding an optional hardened inference harness where the true reference executable runs behind a separate sanitized oracle process/container, with the agent only able to issue structured black-box execution requests?
This is not intended as a security vulnerability report. It is a benchmark semantics / reproducibility question: the goal is to ensure scores measure behavioral inference from the public interface, not implementation-level oracle instrumentation.
- 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
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
anthropics/skills#1811 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
speaches-ai/speaches#678 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
datalayer/mcp-compose#42 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
conda-forge/spacy-feedstock#177 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
UKGovernmentBEIS/inspect_evals#2523 ·