CoolFace
Datasetpublic

DanCip/lca-StartingPoints-expanded

๐Ÿง  LCA-Starting Points A benchmark for evaluating project-local code completion ranking. Curated to validate TreeRanker (ASE2025). ๐Ÿ“– Dataset Description Starting Points is a specialized dataset designed to evaluate code completion ranking, with a specific focus on locally defined identifiers (project-specific APIs) in Python. Most LLM benchmarks focus on global APIs (standard libraries). However, developers spend significant time using APIs defined within their ownโ€ฆ See the full description on the dataset page: https://huggingface.co/datasets/DanCip/lca-StartingPoints-expanded.

sourceHugging Facemitupdated 9mo agoView on Hugging Face
0likes20downloads
Dataset Card

<h1 align="center">๐Ÿง  LCA-Starting Points</h1>

<div align="center">

![Paper](https://arxiv.org/abs/2508.02455) ![License](https://opensource.org/licenses/MIT) ![Python](https://www.python.org/)

A benchmark for evaluating project-local code completion ranking. Curated to validate [TreeRanker](https://arxiv.org/abs/2508.02455) (ASE2025).

</div>


๐Ÿ“– Dataset Description

Starting Points is a specialized dataset designed to evaluate code completion ranking, with a specific focus on locally defined identifiers (project-specific APIs) in Python.

Most LLM benchmarks focus on global APIs (standard libraries). However, developers spend significant time using APIs defined within their own projects. Starting Points targets this "blind spot" by testing how well models can resolve and rank identifiers that are defined within the user's current repository but may not be visible in the immediate file context.

This dataset is a refined subset of the Long Code Arena, enriched with:

  • โ€”Static Analysis Data: Valid completions resolved by the Jedi library.
  • โ€”Real-World IDE Suggestions: Ranked candidate lists generated by IntelliJ IDEA.

โšก Key Features

  • โ€”Focus: Project-specific API completion (vs. standard library).
  • โ€”Language: Python.
  • โ€”Source: Large projects with rich user-defined classes and functions.
  • โ€”Goal: Benchmark ranking algorithms for local development environments.

๐Ÿ“‚ Dataset Structure

Data Instances

Each instance represents a specific cursor position in a Python file where a dereference operation (e.g., object.) occurs. The task is to predict the correct next identifier from a list of candidates.

๐Ÿ“Š Data Fields

This dataset includes rich metadata to facilitate deep analysis of ranking performance, surpassing the original details in the paper.

FieldTypeDescription
idxint64Unique identifier for the dataset entry.
idx_lcaint64Original index of the file in the Long Code Arena benchmark.
repostringName of the source repository.
commit_hashstringSpecific commit hash used for the snapshot.
target_filestringPath to the file within the repository.
offsetint64Character offset (cursor position) where completion is triggered.
prefixstringSource code content preceding the cursor (the context).
ground_truthstringThe actual identifier the developer typed (target label).
completion_typestringMetadata describing the completion scenario.
start_with_boolTrue if the ground truth starts with an underscore _.
first_occurrenceboolTrue if the identifier has not appeared previously in the prefix (file context). Useful for evaluating "unseen" identifier performance.
in_completionsboolTrue if ground_truth is present in the intellij_completions list.
intellij_completionssequence[string]Ranked list of candidates from IntelliJ IDEA's completion engine.
jedi_completionslist[struct]List of valid completions from Jedi, including name and type.
non_dunder_count_intellijint64Count of IntelliJ candidates excluding dunder methods (e.g., __init__).
non_dunder_count_jediint64Count of Jedi candidates excluding dunder methods.
line_type_lcastringInherited metadata from Long Code Arena regarding line classification.

๐Ÿ› ๏ธ Dataset Creation

Curation Rationale

Standard benchmarks often overlook the difficulty of ranking identifiers that are local to a specific project. This dataset was created to test model performance in this realistic, everyday scenario where context from other files in the repository is crucial.

Source Data

  • โ€”Origin: Long Code Arena benchmark.
  • โ€”Filtering:
  • โ€”Dereference Detection: Uses tree-sitter to find . operators.
  • โ€”Static Analysis: Uses Jedi to resolve object types.
  • โ€”Scope Constraint: Retains only suggestions defined within the same repository, excluding standard library calls.
  • โ€”Quality Control: Requires the ground truth to be in the IntelliJ candidate list and the list to have at least 5 non-trivial items.

๐Ÿ“š Citation

If you use this dataset, please cite the original paper:

bibtex
@article{cipollone2025treeranker,
  title={TreeRanker: Fast and Model-agnostic Ranking System for Code Suggestions in IDEs},
  author={Cipollone, Daniele and Bogomolov, Egor and van Deursen, Arie and Izadi, Maliheh},
  journal={arXiv preprint arXiv:2508.02455},
  year={2025}
}