For about a year, my AI code review setup looked like this: AI gets a PR, AI greps for related code, AI reads way too many files, AI says "looks fine."
It mostly worked. Until the bugs that didn't show up in grep started shipping.
The problem wasn't the model. It was the retrieval. Vector search and keyword grep are great at finding files that mention auth.py. They're terrible at finding files that depend on auth.py through three import hops, an event bus, and a decorator. That's where the bugs live.
I rewired the retrieval layer with a code knowledge graph plugged in through MCP. Three bugs surfaced in the first week that vector search had been quietly missing. Here's what changed and the bugs themselves.
Why grep + vector search missed these






