repository-navigation CAP-0039 · active

Finding what matters in a large codebase

Whether an agent can locate the files, symbols and call paths relevant to a task in a repository too large to read, and avoid editing the wrong place; the failure is a plausible patch in the wrong file.

Also called: issue localization, fault localization, code localization, bug localization

Tags: coding-agent, context

Filed from Russ's capability map (2026-09-12). The SWE-agent and SWE-bench findings in the catalog show that interface design changes agent success, and part of what the interface changes is navigation. This entry isolates the navigation competence: retrieval over code, search strategy, and knowing when enough context has been gathered.

What counts as this capability

Scope boundary used when deciding whether a paper is really about this capability, rather than merely mentioning it.

In scope when the paper measures whether the agent finds the right locations in a repository, or ablates the navigation tools. NOT in scope when repository-level success is reported without isolating navigation from editing.

Claims

Techniques

  • Code-graph tools for localization agentstooling
    Parse the repository once into a heterogeneous graph of code entities and their dependency edges, expose search, traverse and retrieve-entity tools over it, and let the agent hop across the graph from the issue's mentioned names to the func
  • Hierarchical localization from tree, then union with embeddiprocess
    Show the model the repository's file tree and the issue and have it rank suspicious files, retrieve files by embedding similarity to the issue, merge the two lists, then narrow within the chosen files to classes and functions and finally to
  • Priority-scheduled search with distance-aware context pruninprocess
    Keep a scored queue of code entities to inspect, let the model decompose each search into smaller lookups it scores for relevance, and drop context whose graph distance from already-relevant anchors is large, so the agent spends its budget
  • Repository code graph as a navigation plug-intooling
    Build a graph whose nodes are definition and reference lines and whose edges are contain and invoke relations across the whole repository, then answer the agent's or pipeline's lookups with the sub-graph around a queried symbol so it sees c
  • Retrieve-and-rerank localization trained on mined issue-patcretrieval
    Mine issues paired with the functions their fixing commits changed, train a code embedding model and a listwise reranker on those pairs so they read failure-style queries, then localize new issues by embedding search over the repository's f
  • Two-phase call-graph search, files broad then functions deepprocess
    Start from files the issue mentions, build a module-level call graph dynamically and explore it broadly to pick files, then expand only the chosen files into a function call graph and search it iteratively, with the graph structure steering

Sources

Every paper, post or observation behind this capability. Ones cited by a claim show the claim and its stance; ones filed directly are about the capability but have no claim drafted from them yet. Open one to add support or contest it.

Related: Using what was retrieved, and only that, Generating and editing working code
Suggest a change

Capabilities are a way of carving up the subject, and carvings are arguable. Say so if this one is wrong — especially a proposed one, which a pipeline added because several papers used the same framing, not because anyone decided it was right.