OpenHands / OpenHands/benchmarks

Consider pinning public-skill context in benchmark metadata

Open
#744 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
124
Forks
90
Avg merge
1d 6h
Merged PRs (30d)
1

Description

Context

During a local SWE-bench smoke evaluation on an HPC/Apptainer setup, I temporarily added an environment variable to disable load_public_skills() so the run only reflected the benchmark prompt, tools, model checkpoint, and dataset instance.

That local change was not kept for upstreaming because public skills are part of the current OpenHands benchmark harness and are standardized through OpenHands/extensions.

Reproducibility question

For controlled model comparisons, it may still be useful to make the skill set explicit in run metadata, because public skills are loaded from external extension content rather than being fully described by the benchmark repo commit alone. If the extension ref changes, two runs using the same benchmark commit/model/dataset could differ in available skill context.

Possible directions

  • Record the resolved EXTENSIONS_REF and loaded skill names in benchmark metadata.
  • Add documentation recommending a pinned EXTENSIONS_REF for benchmark papers or checkpoint comparisons.
  • Consider an explicit opt-out only for ablation/control runs, if maintainers think that is appropriate.

Non-goal

This is not proposing to disable public skills by default. The issue is only to decide whether benchmark metadata/config should make the loaded public skill context more explicit for reproducibility.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the benchmark metadata/configuration and the path that calls load_public_skills(), then trace how EXTENSIONS_REF and loaded skill names are resolved. Review the existing benchmark documentation and metadata outputs before choosing among recording the ref and skills, documenting a pinned ref, or supporting an opt-out. Done means the reproducibility decision is implemented and reflected in metadata or documentation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.