Fetching from the wire…
Top 5 · 2026-04-08 · source-backed
Ryan Lopopolo from OpenAI Frontier went on the Latent Space podcast and described something I've been circling around for months. His team of three engineers built Symphony, OpenAI's internal orchestration layer, as a million-line Elixir codebase. Not one line was written by a human. No pre-merge human review. They burn over one billion tokens per day at roughly $2-3K/day in API costs.
The patterns he described match what I've been building toward with my own harness: 1-minute maximum build loops, 5-10 PRs per engineer per day, "ghost libraries" (software distributed as specs that agents implement independently), and post-merge review instead of the pre-merge gatekeeping we've been doing for decades.
Then Martin Fowler published a full article on the same day formalizing the concept. His framing: Agent = Model + Harness. Everything except the model itself, context engineering, architectural constraints, garbage collection, that's the harness. The key insight that clicked for me: instead of manually fixing AI output (what Fowler calls "on-the-loop"), you improve the harness that produces the output. You create a flywheel, not a treadmill.
OpenAI published an official blog post coining the term formally.
Three independent sources converging on the same idea in one day. That doesn't happen unless the idea is already real and practitioners just needed a name for it.
Here's what this means for you: if you're still writing code line by line and reviewing AI output manually, you're already behind. The competitive unit isn't the engineer anymore, it's the harness. The $2-3K/day in tokens that Symphony burns is cheaper than a single junior developer's salary. And those 1-minute build loops mean the agent gets 480 attempts per 8-hour day to get it right.
Start by identifying your tightest feedback loop. For me it's pytest. My test suite runs in under 30 seconds, which means Claude Code can iterate fast. If your build takes 10 minutes, fixing that is now higher priority than any feature work. The harness is only as good as its feedback speed.
Each link below shares sources, entities, or timing with this story.
Symphony supports Claude Code / Shared entities / Same source / Shared topic / What happened next
Linked by a graph relationship (Symphony supports Claude Code); both cover Agent, Claude Code, Fowler, Harness; cite the same source (Martin Fowler published a full article).
Symphony supports Gemini / Shared entities / Same source domain / Shared topic / What happened next
Linked by a graph relationship (Symphony supports Gemini); both cover Claude Code, Elixir, OpenAI, PRs; reported by the same outlet (openai.com).
OpenAI released Symphony / Shared entities / Same source domain / Shared topic / Earlier coverage
Linked by a graph relationship (OpenAI released Symphony); both cover Agent, Claude Code, Martin Fowler, OpenAI; reported by the same outlet (martinfowler.com).
OpenAI released Symphony / Shared entities / Same source domain / Shared topic / What happened next / Tension
Linked by a graph relationship (OpenAI released Symphony); both cover Agent, Claude Code, OpenAI; reported by the same outlet (openai.com).
Symphony uses Linear / Shared entities / Shared topic / Earlier coverage
Linked by a graph relationship (Symphony uses Linear); both cover Claude Code, Elixir, OpenAI, Symphony; overlapping topics (agent, code, loop).
OpenAI released Symphony / Shared entities / Same source domain / Shared topic / What happened next
Linked by a graph relationship (OpenAI released Symphony); both cover Harness, OpenAI, Then; reported by the same outlet (openai.com).
Symphony supports Claude Code / Shared entities / Same source domain / Shared topic / What happened next
Linked by a graph relationship (Symphony supports Claude Code); both cover Claude Code, Latent Space, Start; reported by the same outlet (latent.space).
Linked by a graph relationship (Symphony supports Claude Code); both cover Claude Code, Code, Latent Space; reported by the same outlet (latent.space).