Source Control When Most Writers Are Agents
A market scan, October 2026: who is rebuilding the repository for agents, and what a team without a Scion can use
Table of Contents
The claim
When agents write most of the changes, the bottleneck in source control moves from merging content to coordinating state: refs, clones, and the merge queue. Two vendors said so in the same week of October 2026, and both answers move work from the client to the server. Everything else on the market is either a client that tolerates concurrency better (jj, GitButler), a server that never assumed a full clone (Perforce, Sapling's Mononoke), or a versioned store for something other than code (Dolt, Neon, Delta).
Falsifiable by: a team at agent scale that keeps plain git, a single merge queue and full clones, and reports no ref or clone bottleneck.
Two signals from October 2026
Anthropic: Scion
Anthropic's source control team described Scion, which replaced git for its monorepo (Redesigning source control, 2026-10-13, updated 2026-10-15). The numbers that forced it: merges went from about 2,500 a day in May 2026 to more than 30,000 in September; main's history is about 100 GB; CI runs about 25 million checkouts a day, which a naive fetch would turn into 600 PB of traffic.
The design, in brief:
- Clients are always online and fetch on demand. Commits, rebases and merges run on the server, so there is nothing to push.
- The unit is a changeset in a write-ahead log: the files changed against the first parent, as content-addressed pointers into blob storage. Blame, path history and commit-graph skip lists are derived data.
- Refs are discouraged apart from main and release branches, because global state does not scale. Ref moves are a compare-and-swap on one row.
- Three cache tiers (node daemon, regional cache, server on Spanner and cloud storage) answer the same RPCs; each reports above 99% hit rate.
- There is no global merge-queue lock. They test after merge and before deploy, and rely on Claude to fix conflicts quickly.
Reported results: checkouts two orders of magnitude faster, an infrastructure footprint 200 times smaller than the git mirrors it replaced, a 25% CPU win in CI. The post credits Google's Piper and Meta's Mononoke (its Bonsai data model) and says plainly that Scion is not a git replacement for general use; the authors want the ideas folded back into git servers.
GitLab: Next-Gen SCM
GitLab's announcement the same day (Scaling Git for the agentic software factory, 2026-10-13) frames the cost per agent: 5 to 10 GB transferred and 30 seconds of setup for one invocation, however little of the repository it needs. The answer keeps the git protocol and changes the backend: stateless compute over S3-compatible object storage, and agent-facing interfaces that fetch selected files and history without a clone. It is in private beta, with early figures of up to 50 times faster workloads, half the tokens and 1,000 times less network traffic (peak, under specific conditions). It quotes Anthropic's source control team, and there is no GA date.
The early-access page ("next-gen source code management for agent fleets") adds the shape of the offer: agents read files server-side instead of cloning, each agent gets an isolated workspace on its own branch, and the work goes through GitLab's existing merge requests, approvals, CI/CD and audit trail. It names Claude Code, OpenAI Codex and Google Antigravity as agents, covers GitLab.com, Self-Managed and Dedicated, and is a request-access form with no API or protocol details. A branch per agent is the opposite choice from Scion's few refs: GitLab keeps git's model and its review pipeline and makes the server cheaper; Anthropic dropped both.
The version-control landscape
Sources fetched 2026-10-27. "Verified" means the claim is on the fetched page; release versions and dates come from the GitHub releases API.
| system | vendor | agent-relevant mechanism | status | source |
|---|---|---|---|---|
| Scion | Anthropic (internal) | server-side changesets, few refs, tiered caches | internal; not offered | post |
| Next-Gen SCM | GitLab | git protocol over stateless compute and object storage; server-side file reads; a workspace and branch per agent | private beta, early-access form | early access |
| Jujutsu (jj) | open source | lock-free operation log; racing operations are merged; conflicts stored in commits; workspaces | v0.46.0, 2026-10-07; pre-1.0 | concurrency doc |
| P4 (Helix Core) | Perforce | centralized server, atomic changelist submit, shelves, streams; page mentions "humans and agents" | GA; free for 5 users, 20 workspaces | P4 |
| p4mcp-server | Perforce (community) | MCP access to changelists, shelves, streams; read-only by default | community-supported | repo |
| Sapling | Meta | git-compatible client; Mononoke server and EdenFS virtual filesystem | sl client GA; Mononoke and EdenFS not supported outside Meta |
repo |
| GitButler | GitButler | several branches applied at once; but agent setup in 0.23.0 |
GA, 0.23.0, 2026-10-27 | repo |
| Delta (DeltaDB) | Zed Industries | operation-level history with the conversation behind each edit; CRDT worktrees; git interop | beta | intro post |
| Diversion | Diversion | cloud VCS for very large repos; pitches "fleets of thousands of AI agents" | GA (marketing claim only) | site |
| Graphite | Graphite, joining Cursor | stacked PRs, merge queue, AI review | GA; acquisition announced 2025-12-19 | post |
| container-use | Dagger | MCP server: a container and a git branch per agent | experimental; last release v0.4.2 | repo |
| AgentFS | Turso | agent filesystem, key-value store and tool audit in one SQLite file; snapshots | beta, v0.6.4 | repo |
| Dolt | DoltHub | git semantics for a SQL database; cell-level merge; multi-branch transactions | GA, v2.6.1 | blog |
| Neon | Databricks | Postgres branching; snapshots as agent checkpoints; "over 80%" of databases created by agents (May 2025) | GA | blog |
| Lix | Lix | branch, diff, merge and roll back agent edits to files and tables | alpha | site |
| Pijul | Pijul | commutative patches | 1.0.0 beta | site |
| gitoxide | GitoxideLabs | pure-Rust git library (gix); jj and GitButler build on it |
active; crates released 2026-10-24 | repo |
| BitKeeper | BitMover (open source) | nested repositories with atomic changesets across components; checksummed storage | Apache-2.0; low activity (last commit 2026-07) | why |
Three groups fall out of the table:
- Servers rebuilt for agents: Scion, GitLab Next-Gen SCM, and (older, not built for agents but the same shape) Perforce and Mononoke. All of them avoid the full clone and do the expensive work server-side.
- Clients that tolerate concurrency: jj, GitButler, Sapling's client. They change what one machine does with many lines of work, not what the server costs.
- Versioned state beyond code: Dolt, Neon, Delta, AgentFS, Lix. These answer "roll back what the agent did to the data or the session", which git never covered.
gitoxide sits under group 2: the jj and GitButler builds both depend on gix
(their Cargo.toml files, checked 2026-10-27). It is the obvious substrate for
anyone building group-1 ideas into a git-compatible tool. BitKeeper is history
more than market: the system Linux left in 2005, now open source. Its nested
repositories, with one changeset spanning many sub-repositories, are an older
answer to the question Scion answers by never materializing the whole repo.
jj or Perforce for agents
These are different bets. jj keeps git's distributed model and makes the client
safe under concurrency: operations that race are both recorded and merged, and a
conflict becomes part of a commit instead of stopping the command. That suits
agents that branch freely and resolve later. Perforce never had a distributed
model: the server owns history, a changelist is submitted atomically, a shelf is
a server-side experiment with no ref, and files are fetched on demand. That is
much closer to Scion, at the price of always needing the server, and it is the
default where large binaries live (games, hardware). P4V, the desktop client,
adds nothing for agents; what agents would use is the p4 CLI or the
community MCP server.
A scripted load test
To see the ref bottleneck at small scale, eight scripted agents (shell loops,
not models) each made twenty changes against one repository on a laptop, with
git 2.49 and jj 0.26. In git, each agent pushed to a shared main and rebased
and retried when refused. In jj, each agent was a workspace of one repository
and a single lander rebased their work onto main afterwards.
| setup | changes to a shared file | landed / 160 | push retries | lost to conflict or give-up |
|---|---|---|---|---|
| git | 0% | 155 | 411 | 5 |
| git | 25% | 152 | 401 | 8 |
| git | 100% | 34 | 126 | 126 |
With no shared file at all, git needed 411 refused pushes to land 155 changes: the contention is on the ref, before any content overlaps. jj never refused a write and kept conflicts as data, but jj 0.26's working copies went stale under concurrent writers and stacks diverged. The agent loop had to refresh and retry, and the lander's count was not stable enough to quote. One run, one machine, an old jj; the current release (0.46) is the next thing to measure.
Delivery and assurance around the repository
Once a change lands, three markets decide whether it ships: delivery (GitOps and promotion), testing that calls itself autonomous, and assurance (formal methods, property-based testing, fuzzing). Same fetch date and rules as above.
GitOps and promotion
| product | vendor | agent-relevant feature | status | source |
|---|---|---|---|---|
| Argo CD | CNCF | base layer for most of the rest | graduated; v3.5.6, 2026-10-20 | releases |
| Flux | CNCF | MCP server for agents (2025-05; public server 2026-07-13) | graduated; v2.10.0, 2026-10-26 | blog |
| Akuity Platform, Kargo | Akuity | Agentic Control Plane and MCP: agents promote through Kargo with "the same permissions, release checks, and audit trail" as people | control plane early access; Kargo v1.12.5 | post, 2026-09-14 |
| Harness CD | Harness | AI verification with automatic rollback against baseline metrics; a delivery agent that smoke-tests | GA | product |
| Octopus Deploy | Octopus | Argo CD deployments; bought Codefresh 2024-02-27 | GA | post |
| OpenShift GitOps | Red Hat | Argo CD operator; its "Argo CD Agent" is fleet management, not AI | GA | product |
Agents enter delivery through MCP and the RBAC and audit trail that already exist. None of the pages describe agents writing to GitOps repositories; the pitch is promotion.
Testing sold as autonomous
| product | vendor | what "autonomous" means on the page | source |
|---|---|---|---|
| Autonomous Testing | Perforce | natural-language intent; AI sets up environments, picks devices, runs and does root cause, across Perfecto, BlazeMeter and Delphix | page |
| Functional Testing, Professional Performance Engineering | OpenText | the former UFT One and LoadRunner Professional, with "Aviator" AI assistants | Micro Focus brand page |
| mabl | mabl | "the agentic testing harness"; agents create, run and maintain tests; MCP for Claude Code and Cursor | site |
| Applitools | Applitools | visual AI that gives "coding agents the eyes to fix UI issues"; MCP | site |
| Katalon | Katalon | tests generated from Jira or a prompt; MCP to "bring your own coding agent" | site |
| Testsigma | Testsigma | "25+ agents run the loop. A human approves before anything ships" | site |
Micro Focus is not dead so much as absorbed: OpenText bought it in 2023 and its products now sit in OpenText's DevOps and cybersecurity clouds under new names. The brand page does not say the brand is retired. Tricentis would belong here, but its site refused every fetch.
The word "autonomous" always comes with a human approval step or a deterministic oracle, and every newer vendor ships an MCP server. The pitch has moved from replacing testers to checking what coding agents write.
Formal methods, property-based testing and fuzzing as products
| product | vendor | what you buy | status | source |
|---|---|---|---|---|
| Automated Reasoning checks | AWS (Bedrock Guardrails) | a policy document turned into logic; LLM answers checked against it (natural-language policy, not code) | GA in 7 regions | docs |
| Kiro spec correctness | AWS | property-based tests derived from EARS requirements, with shrinking; the agent asks whether to fix code, test or requirement | IDE only | docs |
| Antithesis | Antithesis | deterministic simulation testing; skills, CLIs and APIs for agents in the loop; Bombadil for UIs | GA | site |
| CodeLogician | Imandra | "reasoning as a service" for coding agents; $25 to $799 a month | GA | site |
| Aristotle | Harmonic | properties proved over Verilog and C | sold; GA unclear | site |
| Certora Prover | Certora | smart-contract verification | open source (GPL-3.0) since 2025 | repo |
| HypoFuzz | HypothesisWorks | fuzzing backend and dashboard for Hypothesis tests | commercial; free for non-commercial use | site |
| Mayhem | Mayhem Security (was ForAllSecure) | fuzzing with symbolic execution, API security | GA; renamed 2024-10-01 | site |
| OSS-Fuzz, ClusterFuzzLite | free fuzzing for open source; fuzzing in CI; AI patches in beta | GA | docs | |
| Coverage-guided fuzzing | GitLab | Ultimate-tier fuzzing | deprecated in 18.0, removal planned for 19.0 | docs |
| QuickCheck | QuviQ | commercial QuickCheck, testing as a service | active | site |
Runtime Verification and Galois mostly sell services; the TLA+ Foundation is a non-profit, not a vendor. Formal methods ship as a product in a few places: AWS for policy, Imandra by subscription, Harmonic for hardware and C. The growth is in properties as the oracle for agent-written code (Kiro, Antithesis), while fuzzing as a hosted service is thinning (GitLab deprecating, Google's free tools staying).
What a team without a Scion can take
- Few refs, one writer to main. Let agents push to their own branches or
shelves and have one lander move
main; the load test shows why. - Partial fetch instead of clones for agents: git's partial clone and sparse checkout today, GitLab's agent interfaces when they ship.
- Test after merge and before deploy when the queue is the bottleneck, and
measure how long
mainstays red. - Version the state agents touch outside code (databases, sessions) with a tool built for it rather than git.
- Put agents behind the same promotion gate as people (Kargo, Harness verification) rather than giving them their own path to production.
- Use properties, not examples, as the oracle for agent-written changes, and run the expensive exploration on a schedule rather than on every change.
Sources
All fetched 2026-10-27. Vendor figures are the vendors' own and were not reproduced here.
- Anthropic, Redesigning source control, 2026-10-13.
- GitLab (Bill Staples), Scaling Git for the agentic software factory, 2026-10-13.
- jj, Concurrency; releases.
- Perforce, P4V, free tier, p4mcp-server.
- Meta, Sapling.
- GitoxideLabs, gitoxide.
- BitKeeper, Why BitKeeper; source.
- Zed, Introducing DeltaDB; Graphite, Graphite joins Cursor; Databricks, Neon acquisition release, 2025-05-14.