Closed mallamanis closed 3 years ago
Thanks for reaching out! This is indeed a known bug in this version of the dataset; we are planning to role out a revision in the near future (though likely not before the NeurIPS deadline). In short, it stems from a tokenization issue where e.g. function headers were converted into a single token (e.g. def foo(
), so that when foo
was used as the buggy variable, the target could not be found.
This issue affects slightly under 1% of samples in this dataset. While it should not affect localization accuracy, it does make achieving perfect repair accuracy (anything over ~99%) impossible. In practice, current models struggle to exceed 80% (joint) accuracy, so it should not prevent significant innovations. This applies to the results in both the GREAT paper and the public replication package, so comparison with those numbers when keeping these examples as-is should be sound.
Our apologies for the inconvenience; hope this helps. -Vincent
Thanks, this makes sense :)
Some buggy examples (
has_bug=True
), have either an emptyrepair_targets
or none of therepair_targets
is not in therepair_candidates
field (below see a list of such examples fromtrain__VARIABLE_MISUSE__SStuB.txt-00000-of-00300
).(format: provenances json, repair_candidates, repair_targets)