Lego-RL

Task Instances

Convert a raw issue dataset into Harbor task directories

A task instance is a directory, not a row. It holds three things: a Dockerfile that builds the environment, an instruction that states the issue, and an executable verifier that runs the hidden tests. This is the unit a sandbox runs and a verifier grades.

  • Input — raw issue records from a source dataset.
  • Output — one task directory per instance.

One converter per source dataset writes these directories:

python /path/to/convert_openswe_to_harbor.py \
    --output-dir /data/openswe_filtered \
    --index-dir  /data/harbor_indexes \
    --index-name train_openswe_filtered

utils/convert_swerebench_filtered.py does the same for SWE-rebench records.

What to check before moving on: the verifier must fail on the unpatched repo and pass on the reference patch. A verifier that passes either way produces a constant reward and silently wastes every rollout spent on it.