Overwatch: Learning Patterns in Code Edit Sequences
Not on the map. Why?
Abstract (arXiv)
Integrated Development Environments (IDEs) provide tool support to automate many source code editing tasks. Traditionally, IDEs use only the spatial context, i.e., the location where the developer is editing, to generate candidate edit recommendations. However, spatial context alone is often not sufficient to confidently predict the developer's next edit, and thus IDEs generate many suggestions at a location. Therefore, IDEs generally do not actively offer suggestions and instead, the developer is usually required to click on a specific icon or menu and then select from a large list of potential suggestions. As a consequence, developers often miss the opportunity to use the tool support because they are not aware it exists or forget to use it. To better understand common patterns in developer behavior and produce better edit recommendations, we can additionally use the temporal context, i.e., the edits that a developer was recently performing. To enable edit recommendations based on temporal context, we present Overwatch, a novel technique for learning edit sequence patterns from traces of developers' edits performed in an IDE. Our experiments show that Overwatch has 78% precision and that Overwatch not only completed edits when developers missed the opportunity to use the IDE tool support but also predicted new edits that have no tool support in the IDE.
Key facts. Cited by 8 papers in the map (data through 14 Oct 2026). Builds on 4 of its 38 references that are in the map. First posted on arXiv 25 Jul 2022.
Builds on
4 of 38 references.
References · 4
- 2019Getafix: Learning to Fix Bugs Automaticallycited by 41
- 2018Learning to Represent Editscited by 34
- 2016Learning Syntactic Program Transformations from Examplescited by 17
- 2018Learning Quick Fixes from Code Repositoriescited by 8
Built on by
Citing papers per year: 2023: 2; 2024: 2; 2025: 3; 2026: 1.
8 papers.
- 2023GrACE: Generation using Associated Code Editscited by 16
- 2023Anti-unification and Generalization: A Surveycited by 7
- 2024CursorCore: Assist Programming through Aligning Anythingcited by 7
- 2024CodeLutra: Boosting LLM Code Generation via Preference-Guided Refinementcited by 6
- 2025NES: An Instruction-Free, Low-Latency Next Edit Suggestion Framework Powered by Learned Historical Editing Trajectoriescited by 2
- 2025Pre-Filtering Code Suggestions using Developer Behavioral Telemetry to Optimize LLM-Assisted Programmingcited by 2
- 2026Learning from 53.6K Real-World Developer Edits of AI-Generated Codecited by 1
- 2025Wired for Reuse: Automating Context-Aware Code Adaptation in IDEs via LLM-Based Agentcited by 0
- 2026Learning from 53.6K Real-World Developer Edits of AI-Generated Code27 Jul 2026
- 2025Pre-Filtering Code Suggestions using Developer Behavioral Telemetry to Optimize LLM-Assisted Programming24 Nov 2025
- 2025NES: An Instruction-Free, Low-Latency Next Edit Suggestion Framework Powered by Learned Historical Editing Trajectories4 Aug 2025
- 2025Wired for Reuse: Automating Context-Aware Code Adaptation in IDEs via LLM-Based Agent2 Jul 2025
- 2024CodeLutra: Boosting LLM Code Generation via Preference-Guided Refinement7 Nov 2024
- 2024CursorCore: Assist Programming through Aligning Anything9 Oct 2024
- 2023GrACE: Generation using Associated Code Edits23 May 2023
- 2023Anti-unification and Generalization: A Survey1 Feb 2023