🤖 AI Summary
Existing repository-level code generation methods struggle to capture functions that share similar procedural logic but differ in identifiers or domains, and they inadequately model cross-file dependencies and project-specific conventions. This work introduces procedural similarity as an explicit retrieval signal, decomposing the target function into intermediate reasoning steps. At each step, an agent-based workflow retrieves repository functions exhibiting analogous behavior, iteratively refining the generated code by integrating semantic retrieval with feedback from conservative static analysis. Evaluated on the REPOCOD benchmark, the proposed approach achieves a Pass@1 score of 41.14%, significantly outperforming current retrieval-augmented baselines and demonstrating the efficacy of procedural similarity for repository-scale code generation.
📝 Abstract
Repository-level code generation requires implementing target functions while accounting for complex cross-file dependencies and project-specific conventions. Existing retrieval methods predominantly rely on lexical, structural, or semantic similarity, often overlooking repository functions that implement similar procedural logic despite differing in identifiers or application domains. We propose ProjAgent, a repository-level code generation system that introduces procedural similarity as an explicit retrieval signal. ProjAgent decomposes the target function into intermediate reasoning steps and employs an agentic workflow to retrieve repository functions that exhibit similar procedural behavior at each step. The retrieved procedural context is integrated with conventional semantic retrieval to construct a richer repository context for code generation. ProjAgent further incorporates a conservative static-analysis feedback loop that iteratively repairs generated code using compiler and static-analysis feedback. Evaluated on REPOCOD, ProjAgent achieves 41.14% Pass@1, outperforming existing retrieval-based baselines. These results demonstrate that procedural similarity is an effective and previously unexplored retrieval dimension for repository-level code generation.