Each task in the evaluation directory produces a JSON file (e.g., task_id.eval.json). These files contain the detailed results of the evaluation pipeline.
JSON Schema Reference:
| Field | Description |
|---|
test_results | A list of objects containing {name, branch, status, extra}. status is typically passed or failure. extra may include time (seconds), and on failures, message (assertion text) and text (captured output). |
error_code | Top-level error code; null if the run was clean. |
error_details | Top-level error details; null if the run was clean. |
log | An ordered list of pipeline steps: {step, command, wall_time, output, returncode, exception_info}. Steps may optionally include a branch identifier. |
solution_branch | The name of the branch or folder holding the candidate solution (e.g., submission). |
test_branches | A list of test-branch identifiers run against the solution. |
test_branch_errors | A dictionary mapping branch $\rightarrow$ error info. Empty if all branches ran cleanly. |
executable_hash | The SHA256 hash of the built artifact under test. |
warnings | A list of warning strings emitted by the harness. |
Note on Non-determinism: Some branches or tests may be ignored due to non-determinism. For a complete list of ignored items, refer to the tests.json file in the ProgramBench data folder.
{
"test_results": [
{
"name": "tests.test_foo.test_passes",
"branch": "abc123def456",
"status": "passed",
"extra": { "time": 0.002 }
}
],
"error_code": null,
"error_details": null,
"log": [
{
"step": "results_read",
"branch": "abc123def456",
"command": "cat eval/results.xml",
"wall_time": 0.071,
"output": "<xml>...</xml>",
"returncode": 0,
"exception_info": ""
}
],
"solution_branch": "submission",
"test_branches": ["abc123def456"],
"test_branch_errors": {},
"executable_hash": "980ff4f78ca130cedceaa42cec78431184827154fbc4ef95d2df5c8fee948186",
"warnings": []
}