AI Engineer World's Fair 2026
AI Coding Agents Are Breaking Big Codebases — Dan Adler, Sourcegraph
Read the talk
AI Coding Agents Are Breaking Big Codebases
Dan Adler connects faster code generation to a growing maintenance burden, then explains why agents need codebase-wide search, compiler-informed context and coordinated changes across repositories.
From a talk by Dan Adler
At a glance
Ideas worth remembering
An agent can create duplicate functionality when it cannot discover an existing library. Codebase-wide visibility addresses the missing context behind that locally successful edit.
Enterprise remediation requires finding affected code and understanding what runs in production, as well as producing a correct patch in one repository.
Agentic Batch Changes combines coding agents where judgment is needed, deterministic scripts for repeatable edits, and CI, PR feedback and tracking for coordinated rollout.
The Mercari example illustrates how a search can expand two known problem repositories into 80 additional potential findings before a consistent configuration fix is applied.
The maintenance problem starts with software people already depend on
A bank rejecting a transaction at an account limit depends on a large, long-lived codebase. So do insurance reimbursements, warehouse scanners, arrival estimates and payroll. Dan Adler, CEO of Sourcegraph, opens with this everyday dependence: software accumulated over decades still performs the work people expect to happen reliably. Owning that code is “unglamorous but load-bearing.”
The scale matters because the glamorous picture of software development can obscure where maintenance happens. Adler cites 72% of software industry employment as being in companies with more than 500 people. That is an employment statistic, rather than a direct measure of repository size, but it establishes the population his talk addresses: engineers working inside large organizations, often with thousands of repositories and decades of history.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Faster generation increases the work of keeping code coherent
Coding agents accelerate the arrival of new code. Every addition still needs review for how it fits the surrounding system. Code review agents and tools that measure codebase health can help absorb that work; Adler expects coding tools to incorporate more of those capabilities as models improve. His “sandbags” analogy captures the limitation: local checks can hold back parts of the flood while the total volume continues to grow.
At enterprise scale, incomplete context creates several distinct maintenance problems:
- Duplicated functionality. An agent implements something the organization already has a library for because it cannot find that library. The new code adds another implementation to maintain.
- Drifting standards. Different agents apply different conventions in different places. Small deviations accumulate across a codebase, making consistency harder to preserve.
- Brittle service dependencies. Changes made locally can leave relationships between services harder to maintain when the wider system is outside the agent’s view.
- Security upkeep. Newly uncovered vulnerabilities create continuing work across legacy code, alongside the vulnerabilities that new changes may introduce.
The duplicate-library example shows the causal chain clearly. A useful implementation already exists elsewhere. The agent’s accessible context does not include it, so the agent writes another implementation. A locally successful change therefore leaves the organization with more code and another place where future fixes may be needed. Better generation alone does not resolve the missing information that caused the duplication.
Responsibility also becomes harder when engineers cannot explain the generated code they submit. Adler recounts a technology executive at a top 10 car manufacturer overhearing a developer say, “I don’t know what this code does. AI wrote it for me.” In the context of vehicle autopilot software and thousands of engineers, that disconnect between producing code and understanding it carries serious stakes. This anecdote and the maintenance mechanisms motivate Adler’s warning about decay; they do not establish a measured industry-wide rate of failure caused by agents.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Making one change and making it in 90,000 repositories are different jobs
Small-scale coding assistance already solves valuable daily problems. The harder infrastructure problem is seeing and understanding an organization’s whole codebase. Adler calls on agent harness builders and developer tools companies to supply that visibility, and to recognize the people who keep these systems running. His criticism of the named coding-tool vendors is scoped to this large-codebase infrastructure gap at the time of the talk.
A technology leader at a top 10 US bank gives the scale problem a concrete form: Claude Code can make a required change, but the bank has 90,000 repositories to make it in. The reported request concerned an npm supply-chain vulnerability. Producing a patch in one repository is only one part of the task. The organization must also find the affected repositories, understand how their code fits together and determine which code is actually running across its products.
That changes the meaning of completion. A correct edit in the repository currently open to an agent does not establish that the vulnerability has been addressed across the company. The owner needs both an effective transformation and a way to establish where that transformation belongs. Repository coverage becomes part of the security work.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Search can only build understanding from code the agent can see
Agents learn their way around a codebase much like a new hire: they search repeatedly, inspect results and build a working model of the system. Repository architecture notes in AGENTS.md can provide orientation, but Adler places much more weight on the agent’s repeated searches. The practical constraint is simple: “You can’t grep what you literally cannot see.”
Millions of lines across tens of thousands of repositories cannot all sit inside a context window. Adler also rejects cloning and grepping the whole estate in real time as a practical answer at that scale. The agent therefore needs infrastructure that makes relevant code searchable beyond its immediate checkout. Improving the model’s reasoning does not, by itself, give it access to an unseen library or service.
Sourcegraph’s proposed foundation is a code graph that combines search with compiler-accurate analysis where that analysis is performed. Search supplies a way to locate code; the analysis supplies structured information for understanding it and making changes effectively. The recording does not specify the graph’s schema or the extent of compiler analysis across languages and repositories, so the supported mechanism is this combination rather than a particular graph implementation.
“Visibility is infrastructure” names the dependency: agents need access to the code they must understand before they can evolve it responsibly. Adler’s forecast is that these large codebases will persist and contain much more code. In that future, discovering existing implementations and relationships becomes more valuable as generation adds to the estate.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Batch changes combine agent judgment, repeatable edits and feedback
Agentic Batch Changes, announced in beta during the talk, builds coordinated execution on top of this visibility. Its stated job is to start from a single prompt and carry out changes across hundreds or thousands of repositories. The rollout is iterative: it responds to CI status and pull request comments, repairs problems and continues the change process.
The design separates work by what it requires:
- Coding agents for judgment. Use an agent where a change needs interpretation or a decision about the surrounding code.
- Deterministic scripts for repetition. Use a script where the transformation can be specified consistently, avoiding a fresh discretionary edit at every occurrence.
- Tracking for coverage. Record the progress of the change across the places that need it, so the owner can audit completion.
How does one request become a coordinated rollout rather than a collection of isolated edits? The diagram shows the two execution methods feeding the same feedback loop. CI and review comments can send work back for revision, while tracking makes progress across repositories inspectable. Adler presents 100% coverage as the product’s intended assurance; that assurance depends on identifying the full set of places requiring the patch.
Request a change across hundreds or thousands of repositories.
Agent judgment and deterministic transformations serve different kinds of edits. CI and PR feedback drive revision, while tracking records rollout coverage.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Mercari expands a known fix into a codebase-wide search
The Mercari early-access example follows the change from known locations to newly discovered ones. An engineer began with two repositories known to contain a GitHub code-injection issue involving environment-variable configuration. The engineer then expanded the request to explore the rest of the codebase. Adler reports that this search found 80 other potential vulnerabilities across an estate with hundreds of independent microservices in production.
The observable change is the scope of the work: two known repositories became a much wider set of candidate locations. Because the issue involved configuration files and a repeatable correction, a deterministic script could carry the fix across matching locations consistently. Search discovers where the pattern occurs; the script applies the specified transformation. The 80 findings are described as potential vulnerabilities, and Adler’s subsequent reference to 100 patch locations does not reconcile with the earlier counts. The example supports expanded discovery and consistent batch editing, rather than a precise total of confirmed remediations.
The ending returns to the inventory that makes such work possible. How many repositories exist? How many forks and copies? Which imported repositories now supply a library or API used in production without the codebase owner knowing? A scan cannot establish complete coverage if the organization’s view omits code that is actually deployed. Keeping the estate updated begins with finding that estate.
That is the practical question Adler leaves with codebase owners: can you see the code running across your company, scan it and update all the places that need a change? His invitation to bring their “gnarliest” codebase stories fits the subject. The difficult cases are the accumulated systems people already rely on, now receiving code faster than their owners can comfortably absorb.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Read the complete timestamped transcript
- 0:12
Hey, welcome everybody. I'm Dan Adler, CEO at Sourcegraph. It is, uh, great to see you all here today. Thank you so much for coming out and joining us. Um, this is a talk today about the unglamorous but load-bearing work of owning a large, complex codebase, and why AI and agentic coding tools today make that job more difficult and more important than ever before.
- 0:38
Just to start, the software that runs the world is not pretty. It's not new. It's not clean. It's how everything actually works. 72% of software industry employment is in companies with more than 500 people. These are the large enterprises of the world. These are the companies managing thousands of repositories and decades of codebase history. Few of your peers work at startups, at the hot companies you may hear about on social media, and even fewer of them are
- 1:08
actually, like, ex-solopreneurs making a living off of their f- um, social feeds. Most of us work in large, long-lived codebases. Those codebases are how your bank account will reject a transaction in real time if you hit your limit. They're how your insurance carrier calculates the reimbursement rate for a policyholder with dual coverage. It's how a chip in a warehouse scanner will actually allow Amazon to tell you when your socks arrive. It's how your Uber estimates an arrival time. It's how an airplane uses radar to, uh,
- 1:38
adjust trajectories, how your paycheck gets issued. It's how your office air conditioner ticks on, and on, and on, and on, and on. These are the things that keep the world moving. We are all completely, utterly dependent on massive, decades-old, super complex codebases that have been built over many, many years by thousands of engineers.
- 2:05
And coding agents are writing more, better code today faster than we have ever seen before. A tidal wave of code is coming for you. It's coming for your codebase and for all of your engineers on your team who are trying to just keep their heads above water. Every one of us has felt this pain, this flood of AI-generated code that we now have to review and make sure is healthy for our codebase, and we're exhausted by it. And look, there are now code review agents. I'm sure there's a lot of them around this room right now. There
- 2:35
are tools designed to help you measure your codebase's he- codebase's health and so on. And look, the new ... The major coding agents will start to pull this stuff in. The models will get better. Over time, we'll keep putting sandbags down to keep this flood held back, right? We're gonna keep finding these local maxima to help ourselves sort of avoid this problem. But meanwhile, what's happening is that these codebases, these massive ones that keep the world running, are beginning to decay. Millions of
- 3:05
lines of code, tens of thousands of repositories, way too much to fit into a context window or even just to clone and grep in real time. That's just not possible, and this is causing big problems. We're publishing new features, new patches at record speed. There are different coding standards being applied in different places by different agents across the codebase. There's duplicated code proliferating. Your, you already have a library that does this, but your agent doesn't know that. There's cross-service
- 3:35
dependencies that are becoming more brittle. There are slight deviations in standards that are creating more insidious hidden issues across the codebase. And maybe more important than anything else here, there are new vulnerabilities being uncovered by agents every single day. They require constant, constant oversight and upkeep of all of these massive legacy codebases that nobody wants to think about or deal with. The job of owning a codebase is harder today than it has ever been
- 4:04
before.
- 4:07
And at the end of the day, the problem here is actually the volume of code. The call is coming from inside the house, right? The very tools that are speeding all of us up and letting us write more code faster than ever are also the tools that are creating the conditions that will cause these massive codebases that run our world to begin to fail.
- 4:31
Every day, I talk to technology executives at these large companies, and they are feeling this so viscerally. The same pain that I imagine many of you are feeling too, right? "I want to give my devs the best tools possible, but just today I overheard a dev say, 'I don't know what this code does. AI wrote it for me.'" This is a tech leader and executive at a top 10 car manufacturer. When you're writing vehicle autopilot code and you have thousands of engineers in your org that you have to manage and you want to enable, this is
- 5:00
terrifying.
- 5:06
All right, here we go.
- 5:11
So what I deli- um, deeply believe is that these codebase owners deserve better. Today's agentic dev tools are not meeting the moment for this. The infrastructure to see and understand a 50,000 repo codebase is not being built or sold by OpenAI, by Anthropic, by Cursor, by the rest of them. This is a hard and unique problem. Their agents are so unbelievably good at smalling th- at solving the small scale problems that most developers deal with every
- 5:41
day that they are ... Their demand is growing faster than ever before, and this bigger problem of these codebases beginning to fall apart is going unnoticed. So this session, this is a call, first of all, of, to celebrate the people, the owners of these codebases, people around the world who are actually keeping them alive and keeping them running, most of our software engineer peers around the globe. So thank you all so much for what you're doing. But this session is also a call to dev
- 6:11
tools companies out there, to the agent harness builders, to people who are building the infrastructure for these agents, to help build the, the infrastructure, the, the ability to go see and understand these massive scale repositories and give that to their agents.
- 6:36
This is a great quote that I heard from, um, a tech leader at, uh, one of the top 10 US banks, tens of trillions of dollars in assets, uh, in custody or administration. "Sure, Claude Code can, uh, make this change, but I have 90,000 repositories to make it in." This is actually a specific quote about a specific supply chain vulnerability, uh, an npm thing. Won't get into it. But if you're a bank and you're seeing agents uncover and create these new vulnerabilities at an unprecedented pace,
- 7:06
and you're being told to go use Claude Code to solve this, that's a problem. Good luck doing that in 90,000 repositories, mapping out how these code bases all come toge- together, what's actually living in production across your company, across your product offerings.
- 7:23
Because at the end of the day, right, what's really funny about all this is that we-- if we know anything about LLMs, it's that they just love to search. It's like a new hire getting up to speed on the code base. It's how agents build models of the world. The repo architecture that you're plugging into your AGENTS.md files, like, let's be real, that's barely moving the needle here. This agent is going to grep, grep, grep, grep, grep, grep, grep, grep, grep its way to code base understanding. That's simply how it works. But
- 7:52
understanding is a context problem. You can't grep what you literally cannot see. This is tools and infrastructure that's needed. And the infrastructure to go see and search and really deeply understand a five hundred or five thousand or fifty thousand or half a million repo code base is not being built by the agent builders today.
- 8:17
And so that's where, what we're solving, what we're working on as a company. This is what Sourcegraph is built around, right? Give us a second. If you'll let me sort of take a moment and predict the future of our industry, these massive code bases are not going away. In fact, there will be more code. There will be much, much, much more code out there in the future. And we believe very m- deeply that building tools to give agents the
- 8:47
ability to actually see and understand and evolve those large code bases is essential for the future.
- 8:56
And where this comes from, at the end of the day, is having a graph, that code graph in mind. The foundational graph of your code base, including search and then the actual compiler accurate output, um, if you go in and do that analysis, that is essential to give your agents the ability to go and understand how to make changes effectively. Visibility is infrastructure.
- 9:21
And we actually built a lot on top of this, right? We're not stopping here. Actually, just today, we launched our new, um, our new Agentic Batch Changes product into beta. This is a frontier agent. Uh, and its job is to let the owner of a massive code base actually execute code changes across hundreds or thousands of repositories at once, starting with a single prompt. This is a product that will iteratively roll out changes across that, that code base, self-heal, respond to CI status, PR comments, use coding agents where it makes sense, where judgment
- 9:52
is needed, use deterministic scripts where it's not, and provide tracking and auditability to be sure that you've covered one hundred percent of the places where that patch is needed, where that change is needed. Because like I keep saying here, at the end of the day, this is an infrastructure problem. When you're putting code out there into the world, you need to make sure that it's actually gonna keep your code base healthy, that it's actually gonna make-- be able to, um, adapt to the places where your code base is beginning to fall apart.
- 10:21
Here's a great quote from an early access user, um, uh, actually at Mercari, a global, um, shopping tool out of Japan, incredible company, massive code base, hundreds and hundreds of independent microservices running in production. This user was using, um, this product to go actually patch a GitHub, uh, code injection issue where you have to set environment variables correctly. Um, he ran this on two repos where he knew this issue existed and then said, "Yeah, go explore the rest of our code base," and found eighty other potential vulnerabilities across their code base in other places. This
- 10:51
is like base... This is like config files. This is basically just going and doing that scan. Patching them all in one go with a sort of deterministic script that can go make sure it's making that change consistently, effectively across one hundred of the places where that risk exists, that is what confidence is all about in the agentic coding era.
- 11:12
So yeah, I'll stop here. If you're wondering right now about, like, how many repos in your code base, how many forks are there out there, how many, um, copies of r- repos are there out there, how many repos have your in-- your developers brought into your, um, company and are now being plugged in as a library or an API somewhere in your code base that's live in production that you're not aware of, that's the sort of thing that we're here to help, right? If you're wondering what code is deployed right now and how you can go scan it all and see it all and make sure it's all updated, come talk to me.
- 11:42
And, uh, tonight, we're actually hosting a, uh, event here in SF called Code, Cocktails, and Cutovers. Come on out, join us. Um, come find us. Bring your gnarliest code-based stories. This is where we want to, uh, talk and hear from all of you about what you're trying to deal with and how you're dealing with the tidal wave of code that's coming for you.
- 12:01
Cool. Thank you. I'll stop there. Any questions? Thank you.