This is a very useful list, thank you. Let me sort it into what the dataset already has and what it doesn't.
Already in v1.0.0:
- Tool and environment details: exact uv version and exact CPython build are recorded per experiment (in
runtime). One caveat: the environment is fixed by design, everything ran on Linux x86_64, so the OS fields never vary. They confirm the setup rather than describe differences. Expanding to more OS types (Windows, macOS) is something I may explore in the future, and the schema already has the fields ready for it. - The exact input spec: both packages, versions, Python version (in
spec). - The full resolved package graph, not just the two headline packages (in
installed_environment). - Every stage's exact command, exit code, stdout/stderr, plus a timeout flag and peak memory (in
stages). - Retry count, normalized error text next to the raw output, and full wheel provenance: ABI/platform tags, sha256, source URL.
Not covered today, but I will try to include these in a future v2 release:
- The smoke-test code snippet itself (only its output is captured)
- Explicit timeout and resource limit values
- Confirming a failure reproduces across retries
- A "likely cause" label: ABI mismatch, removed symbol, missing optional dependency, build backend, platform wheel
Your likely-cause idea is the most interesting one to me. Since all raw tracebacks are preserved, labels like that could in principle be derived from the existing records without rerunning anything.
The benchmark framing also makes sense: an agent proposes a requirements change and gets scored against known real outcomes before anything is installed. That's much closer to real developer work than a synthetic task. Thanks for laying it out so clearly.