← Latest papers
💻 computer science

ARISE: A Repository-level Graph Representation and Toolset for Agentic Fault Localization and Program Repair

ARISE is a repository-level framework that enhances LLM-based agents for fault localization and program repair by introducing a multi-granularity program graph with intra-procedural data-flow edges and a queryable slicing API, achieving significant improvements in localization accuracy and repair success rates on the SWE-bench Lite benchmark.

Original authors: Shahd Seddik, Fatemeh Fard

Published 2026-05-06
📖 5 min read🧠 Deep dive

Original authors: Shahd Seddik, Fatemeh Fard

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine you are a detective trying to solve a crime in a massive, sprawling city (the software repository). The city has thousands of buildings (files), each containing hundreds of rooms (functions), and inside those rooms are countless pieces of furniture and documents (lines of code).

Your job is to find the one specific document that contains the lie (the bug) causing the city's power grid to fail, and then rewrite that document to fix it.

The Problem: Getting Lost in the City

In the past, detectives (AI agents) trying to solve these cases had two main problems:

  1. They only had a map of the buildings: They knew which building was next to which, and which building had a door leading to another. But they didn't know how information moved inside the rooms.
  2. They had to read everything: To find the lie, they often had to read entire books or scan every single page in a building, hoping to stumble upon the clue. This was slow, expensive, and often led them to the wrong room.

The Solution: ARISE (The Super-Sleuth's Toolkit)

The authors created a new system called ARISE. Think of ARISE as giving the detective a super-powered, interactive 3D map of the city that doesn't just show buildings, but also shows exactly how a specific piece of evidence (a variable) moves from one document to another inside a room.

Here is how ARISE works, broken down into three simple tools:

1. The Structural Map (Tier 1)

This is the "building map." It tells the detective: "This file contains this class, which calls that function." It's like knowing that the Library is connected to the School. This helps the detective narrow down which building to search, but it doesn't tell them which page in the book is wrong.

2. The "Follow the Money" Tool (Tier 2 - The Big Innovation)

This is the magic part. In the old days, if a detective found a suspicious number in a document, they had to manually flip through every page before and after it to see where that number came from or where it went.

ARISE introduces a tool called Data-Flow Slicing. Imagine you have a magical magnifying glass. You point it at a specific number in a document and say, "Show me everything that touched this number."

  • Backward Slice: The glass instantly highlights every single sentence that created or changed that number.
  • Forward Slice: It highlights every sentence that used that number later.

Instead of reading 50 pages, the detective gets a single, highlighted list of just the 5 or 6 sentences that actually matter. This is like being able to instantly trace a specific drop of water from a faucet all the way to the sink, ignoring the rest of the plumbing.

3. The Evidence Binder (Tier 3)

Once the detective has found the suspicious sentences, they have to put them together into a report to fix the bug. Sometimes, the report gets too long and the detective's brain (the AI model) gets overwhelmed.
This tool acts like a smart librarian. It takes all the highlighted sentences, ranks them by importance, and packs them into a neat, concise "Evidence Binder" that fits perfectly into the detective's backpack (the memory limit). This ensures the detective sees the most important clues first.

The Results: Did It Work?

The researchers tested this new system on 300 real-world "crimes" (bugs) from popular software projects. They compared ARISE against a standard detective (the SWE-agent) who only had the basic tools.

  • Finding the Crime Scene: The standard detective could guess the right building (file) about 57% of the time. ARISE got it right 67% of the time.
  • Finding the Exact Room: The standard detective guessed the right room (function) 43% of the time. ARISE jumped to 60%.
  • Finding the Exact Sentence: The standard detective found the right line of code 26% of the time. ARISE improved this to 41%.

Most importantly, because the detective could find the exact problem faster and more accurately, they were able to fix the bug successfully 22% of the time, compared to only 17% for the standard detective.

Key Takeaways from the Paper

  • Structure isn't enough: Just knowing how files connect isn't enough; you need to know how data moves inside the code.
  • The "Magic Glass" is the key: The biggest improvement came from the Data-Flow Slicing tool. It allowed the AI to skip the guesswork and go straight to the source of the problem.
  • No need for a translator: The researchers tried adding a step where a smaller AI would summarize the data into plain English for the main detective. They found this was unnecessary. The main detective (a large AI model) could read the raw, structured data just fine. Adding the summary step just wasted time and money.
  • The Limit: The system is great at finding problems inside a single room. However, if the problem starts in one room, gets passed to a neighbor's room, and causes a crash there, the detective sometimes gets confused. This is the one area the authors say needs more work in the future.

In short, ARISE gives AI agents a way to "trace the thread" of a variable through code, turning a needle-in-a-haystack search into a direct path to the solution.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →