Brownfield codebases: 20 sourced coding agent stories
Agents working in existing codebases rather than starting from scratch. Of the 20 stories, 11 were published by a tool vendor, 7 by the people who did the work and 2 by independent researchers or press. 20 involve an existing codebase and 0 started from scratch. Every number links to where it was published.
- Vendor-published Language port brownfield
GitHub ports the Copilot agent runtime from TypeScript to 800K+ lines of Rust, mostly by one engineer
GitHub (Microsoft) · 2026-09-16
- 832,378 lines Production Rust written
- ~430,000 lines TypeScript passed through the port (author estimate)
- ~14.5 weeks Porting window
GitHub Copilot
- Vendor-published Test migration brownfield
Asana finishes a five-year Enzyme → React Testing Library migration in two weeks with Codex
Asana · 2026-08-19
- ~2 weeks Calendar time
- ~1.5 weeks Engineering effort
- Up to 4 Parallel agents
OpenAI Codex
- Vendor-published Language port brownfield
Bun's 535,000-line Zig codebase is ported to Rust in 11 days by up to 64 parallel Claude Code agents
Bun (Oven / Anthropic) · 2026-07-08
- 535,496 lines of Zig (excluding comments), 1,448 .zig files Source size
- 11 days (May 3 to merged May 14, 2026) Time
- 6,778 Commits
Claude Code
- Independent Research / benchmark brownfield
MSR 2026 study: coding agents give open-source repos a velocity bump only as their first AI tool, but lasting technical debt either way
Shyam Agarwal, Hao He, Bogdan Vasilescu (MSR 2026) · 2026-04-13
- +36.3% Commits (agents as first AI tool)
- +76.6% Lines added (agents as first AI tool)
- +3.1% / −6.3% Commits / lines (prior AI IDE users)
Various tools
- Vendor-published Research / benchmark brownfield
Legacy-Bench: frontier agents pass only 16.9–42.5% of COBOL, Java 7 and Fortran tasks
Factory · 2026-04-01
- 16.9%–42.5% Pass rate range (12 model–agent combos)
- >70% Same models on Terminal-Bench 2 / SWE-bench Verified
- 42.5% Best overall (GPT-5.3-Codex)
Factory Droid, OpenAI Codex, Gemini CLI
- Vendor-published Refactor / maintenance brownfield
Cisco uses Codex across 15+ repos to cut build times ~20% and speed up C/C++ defect fixing
Cisco · 2026-01
- 1,500+ per month Engineering hours saved
- ~20% reduction Build time
- 10–15× increase Defect resolution throughput
OpenAI Codex
- Practitioner (own blog/paper) Migration brownfield
Spotify's background coding agent merges 1,500+ migration PRs with 60–90% time savings
Spotify · 2025-11
- 1,500+ Agent PRs merged to production
- 60–90% vs writing by hand Time saved on these migrations
- Hundreds of developers Users
Claude Code, Claude Agent SDK, Honk (Spotify)
- Practitioner (own blog/paper) Feature brownfield
Mitchell Hashimoto ships a non-trivial Ghostty feature with Amp in 16 sessions for $15.98
Ghostty (Mitchell Hashimoto) · 2025-10-11
- 16 Agent sessions
- $15.98 Token spend
- ~8 hours, over 3 days from first to last commit Hands-on time (author's estimate)
Amp
- Practitioner (own blog/paper) Upgrade / modernisation brownfield
Claude Code ports a 25-year-old Linux tape driver from kernel 2.4 to 6.8 over two evenings
Dmitry Brant (independent developer) · 2025-09-07
- Two evenings Time
- 2.4 → 6.8 Kernel version jump
- Probably several weeks (would have meant learning 25-year-old kernel development) Author's by-hand estimate
Claude Code
- Independent Research / benchmark brownfield
METR RCT: experienced open-source developers took 19% longer with early-2025 AI tools
METR (16 open-source developers) · 2025-07-10
- 16 Developers
- 246 Tasks
- 19% longer with AI Measured effect
Cursor
- Practitioner (own blog/paper) Test migration brownfield
Airbnb migrates ~3.5K Enzyme test files to React Testing Library in 6 weeks with LLMs
Airbnb · 2025-03
- ~3,500 Test files migrated
- 6 weeks Actual duration
- 1.5 years of engineering time Manual estimate
Various tools
- Practitioner (own blog/paper) Refactor / maintenance brownfield
Google Ads uses LLMs to migrate 32-bit IDs to 64-bit in a 500M+ line codebase
Google · 2025-01
- 500M+ lines Codebase size
- 80% Code changes fully AI-authored (landed CLs)
- ~50% reduction (engineer-reported estimate) Total migration time
Google internal migration toolkit (fine-tuned Gemini)
- Practitioner (own blog/paper) Test migration brownfield
Google migrates 5,359 test files from JUnit3 to JUnit4 in 3 months with LLMs
Google · 2025-01
- 5,359 Files migrated
- 149,000+ Lines modified
- 3 months Duration
Google internal migration toolkit (fine-tuned Gemini)
- Practitioner (own blog/paper) Migration brownfield
Google estimates ~89% time saved on Joda-Time → java.time migration clusters
Google · 2025-01
- ~89% Time saved on small clusters (estimate)
Google internal migration toolkit (fine-tuned Gemini)
- Vendor-published Migration brownfield
Nubank uses fine-tuned Devin to split a 6M-line ETL monolith, claiming 8–12x engineering-hour efficiency
Nubank · 2024-12
- 6M+ lines, ~100,000 data-class implementations Codebase
- 18 months, 1,000+ engineers Original estimate
- 8–12x Engineering-hour efficiency
Devin
- Vendor-published Upgrade / modernisation brownfield
Amazon upgrades tens of thousands of production apps to Java 17 with Amazon Q Developer
Amazon · 2024-08-01
- Tens of thousands (Java 8/11 → 17) Applications upgraded
- 4,500+ years Development work saved (estimate)
- $260M from performance improvements Annual cost savings (estimate)
Amazon Q Developer
- Vendor-published Language port brownfield
Stripe migrates 10,000 lines of Scala to Java in four days
Stripe
- 10,000 Lines migrated
- 4 days Actual duration
- 10 engineering weeks Manual estimate
Claude
- Vendor-published Upgrade / modernisation brownfield
Altisource modernizes 350,000 lines of legacy Java with Amazon Q Developer
Altisource
- 350,000+ lines Legacy Java modernized
- +25% (one modernization team, 'up to') Developer productivity
- ~160 → 200 Story points (3-month avg per engineer)
Amazon Q Developer
- Vendor-published Language port brownfield
Wiz ports a 50,000-line Python PDF library to Go in about 20 hours with Claude Code
Wiz
- ~50,000 lines of Python (pypdf) Source size
- 18,413 lines of Go Output size
- ~20 hours (10 active development, 10 testing) Time
Claude Code
- Vendor-published Migration brownfield
Block uses Claude Fable to orchestrate code migrations of thousands of pull requests, with two humans approving every deploy
Block
- "hundreds or thousands of individual pull requests across multiple repos and millions of lines of code" Migration size
- "we might merge a thousand pull requests orchestrated by Fable" PRs per migration
- "up to dozens of smaller, more cost-effective models like Opus or Sonnet" Worker models
Buzz (Block)