AI/LLM Updates

Google Just Open-Sourced the Test Failure Triage You Always Wanted: Meet Auto-Diagnose

Why it matters for testing

Google's newly published Auto-Diagnose system achieves 90% root-cause accuracy on integration test failures using LLMs — tackling one of the most time-consuming, cognitively draining parts of QA. If your team spends hours drowning in noisy CI logs, this research shows exactly how large-scale, production-ready LLM triage can be built and what results to expect.


Intro

Every QA engineer knows the feeling: a red CI run, a wall of 10,000 log lines, and the clock ticking. Identifying why an integration test failed — not just that it failed — has always been one of the most expensive parts of the software testing lifecycle. Until now, it was also stubbornly human.

That changes with Google's Auto-Diagnose, a Gemini-powered tool deployed internally across 52,000+ failing integration tests. Presented at ICSE 2026 and published on arXiv in April 2026, this paper is arguably the most practically useful piece of AI-in-testing research to come out this year.


The AI development/news

Auto-Diagnose is a system built by Google engineers and deployed inside Critique, Google's internal code review tool. When an integration test fails, it automatically:

  1. Ingests the failure logs and component metadata
  2. Constructs a structured LLM prompt
  3. Sends it to Gemini 2.5 Flash for speed and cost efficiency
  4. Returns a concise summary with the most relevant log lines and a likely root cause

The paper (arXiv: 2604.12108) reports results from a manual evaluation of 71 real-world failures spanning 39 distinct teams, where the tool correctly identified the root cause 90.14% of the time. In its Google-wide deployment, it was rated "Not helpful" in only 5.8% of cases and ranked #14 most helpful out of 370 internal developer tools.

The key innovation isn't just using an LLM — it's the careful prompt construction that incorporates structured log metadata alongside raw log output, giving the model the signal it needs while filtering the noise.


Current testing landscape

Integration tests sit at an awkward middle layer of the testing pyramid. They're more realistic than unit tests but far noisier. When they fail, the cause could be anything: a network blip, a data dependency, an API contract change, a flaky external service, or a genuine regression. Developers today typically:

  • Scan logs manually (often 5,000–50,000 lines)
  • Apply personal heuristics to guess the failure category
  • Re-run the test to rule out flakiness
  • Escalate to a second team if it looks like a dependency issue

This process takes anywhere from 15 minutes to several hours per failure. At Google's scale — hundreds of thousands of integration test runs per day — even marginal improvements in triage speed translate to enormous developer-hours saved.


The impact

Auto-Diagnose reframes triage as a structured summarization problem, not a search problem. That's the mental model shift that makes LLMs so effective here: they don't need to "understand" code; they need to identify the most signal-rich lines in a log corpus and explain them in the context of what the test was doing.

For QA teams, this has several knock-on effects:

  • Faster feedback loops: developers spend less time in the "was this my fault?" loop and more time fixing confirmed regressions
  • Better team routing: the tool surfaces which component most likely caused the failure, reducing cross-team blame cycles
  • Flakiness detection support: by categorizing failures consistently over time, patterns of environmental vs. code issues become visible at the aggregate level
  • Reduced cognitive load during crunch: during incident response or release freezes, automated triage summaries let engineers prioritize immediately

Practical applications

QA teams outside Google can start applying these concepts today with available tooling:

  1. Build a log summarization pipeline: use Claude API or Gemini API with a structured prompt template. Feed in your test runner output, stack traces, and relevant service metadata. Ask for a 3-bullet summary: what failed, where, and what the most likely cause is.

  2. Integrate into your CI/CD PR comments: auto-post LLM-generated failure summaries directly into GitHub PRs or Jira tickets when tests fail. This removes the "go read the build logs" friction entirely.

  3. Create a failure taxonomy: instruct the LLM to classify each failure as regression | flake | environment | dependency | data. Track these categories over time to find systemic issues.

  4. Combine with test ownership metadata: if you annotate which team or service owns which tests, include that in the prompt context — Auto-Diagnose's routing accuracy depends heavily on this signal.

  5. Benchmark your current mean-time-to-triage (MTTT): before adopting LLM triage, baseline how long developers currently spend per failure. Post-adoption, this becomes a concrete ROI metric.


Tools/frameworks to watch

  • Google Auto-Diagnose (Gemini 2.5 Flash-based, integrated in Critique) — the reference implementation; watch for any open-source artifacts from the ICSE 2026 paper
  • LogSage (arXiv 2506.03691) — an LLM-based CI/CD failure detection and remediation framework with industrial validation
  • ProbeLLM (arXiv 2602.12966) — automates principled diagnosis of LLM-specific failures; useful for teams testing AI features
  • Buildkite AI failure summaries — commercial CI tooling beginning to embed LLM summaries natively
  • GitHub Copilot for CI — GitHub's offering for in-PR failure explanation, directly competitive with what Auto-Diagnose does internally at Google

Conclusion

Google just proved at scale what many QA engineers suspected: LLMs are exceptionally well-suited to the log triage problem. A 90% root-cause accuracy rate with a 5.8% "not helpful" rating isn't theoretical — it's production data from 52,635 real failing tests across 39 engineering teams.

The future of integration test failure management isn't a smarter grep. It's a well-prompted LLM sitting in your CI pipeline, reading logs so your engineers don't have to. The question for QA leaders isn't whether to adopt this pattern — it's how fast they can get there.


References

Latest from the blog

See all →