ChatPaper.aiChatPaper

Aprendendo a Comprometer: Gerando Pull Requests Orgânicos por meio de Memória de Repositório Online

Learning to Commit: Generating Organic Pull Requests via Online Repository Memory

March 27, 2026
Autores: Mo Li, L. H. Xu, Qitai Tan, Ting Cao, Yunxin Liu
cs.AI

Resumo

Os agentes de programação baseados em modelos de linguagem de grande escala (LLM) alcançam resultados impressionantes em benchmarks controlados, mas frequentemente produzem pull requests que são rejeitados por mantenedores reais. A causa raiz não é a incorreção funcional, mas a falta de organicidade: o código gerado ignora convenções específicas do projeto, duplica funcionalidades já fornecidas por APIs internas e viola restrições arquitetônicas implícitas acumuladas ao longo de anos de desenvolvimento. Simplesmente expor um agente ao snapshot mais recente do repositório não é suficiente: o snapshot revela o estado final da base de código, mas não os padrões de alteração específicos do repositório pelos quais esse estado foi alcançado. Introduzimos o Learning to Commit, uma estrutura que fecha essa lacuna através da Memória de Repositório Online. Dado um repositório com uma divisão cronológica estrita, o agente realiza uma reflexão contrastiva supervisionada em commits anteriores: ele tenta cegamente resolver cada issue histórica, compara sua previsão com o diff oráculo e destila a lacuna em um conjunto continuamente crescente de habilidades - padrões reutilizáveis que capturam estilo de codificação, uso de APIs internas e invariantes arquiteturais. Quando uma nova descrição de PR chega, o agente condiciona sua geração nessas habilidades acumuladas, produzindo alterações fundamentadas na própria evolução do projeto, e não em prioridades genéricas de pré-treinamento. A avaliação é conduzida em pull requests futuras genuinamente mescladas que não poderiam ter sido vistas durante a fase de construção de habilidades, e abrange múltiplas dimensões, incluindo correção funcional, consistência de estilo de código, taxa de reutilização de API interna e plausibilidade da região modificada. Experimentos em um repositório mantido por especialistas com histórico rico de commits mostram que a Memória de Repositório Online melhora efetivamente as pontuações de organicidade em tarefas futuras retidas.
English
Large language model (LLM)-based coding agents achieve impressive results on controlled benchmarks yet routinely produce pull requests that real maintainers reject. The root cause is not functional incorrectness but a lack of organicity: generated code ignores project-specific conventions, duplicates functionality already provided by internal APIs, and violates implicit architectural constraints accumulated over years of development. Simply exposing an agent to the latest repository snapshot is not enough: the snapshot reveals the final state of the codebase, but not the repository-specific change patterns by which that state was reached. We introduce Learning to Commit, a framework that closes this gap through Online Repository Memory. Given a repository with a strict chronological split, the agent performs supervised contrastive reflection on earlier commits: it blindly attempts to resolve each historical issue, compares its prediction against the oracle diff, and distils the gap into a continuously growing set of skills-reusable patterns capturing coding style, internal API usage, and architectural invariants. When a new PR description arrives, the agent conditions its generation on these accumulated skills, producing changes grounded in the project's own evolution rather than generic pretraining priors. Evaluation is conducted on genuinely future, merged pull requests that could not have been seen during the skill-building phase, and spans multiple dimensions including functional correctness, code-style consistency, internal API reuse rate, and modified-region plausibility. Experiments on an expert-maintained repository with rich commit history show that Online Repository Memory effectively improves organicity scores on held-out future tasks.