Anthropic Research→ оригинал

Anthropic за пять месяцев ушла с git на Scion: 30 000 мерджей в день

Anthropic рассказала, как заменила git собственной системой контроля версий Scion. В мае 2026 компания мерджила около 2 500 изменений в день, к сентябрю их стало больше 30 000. Монорепозиторий переехал за пять месяцев, а Claude помогал писать саму систему. Инфраструктура Scion в 200 раз меньше прежней по CPU и памяти, чекауты в CI и исследовательских задачах ускорились примерно в 100 раз, а CI сэкономил 25% процессорной мощности. • Git рассчитан на офлайн-клиентов, а почти все клиенты Anthropic — агенты, которые всегда онлайн. • Коммиты, ребейзы и мерджи выполняются на сервере. • Рабочая копия необязательна: большинство запросов закрывает API.

AI-обработка оригинала Anthropic Research; редакция Hamidun News
Anthropic за пять месяцев ушла с git на Scion: 30 000 мерджей в день
Источник: Anthropic Research. Коллаж: Hamidun News.
◐ Слушать статью

В мае 2026 года Anthropic сливала в монорепозиторий около 2 500 изменений кода в день. К сентябрю цифра выросла до 30 000+. Писать код больше не проблема: Claude итерирует исследовательские циклы, оптимизирует сложные программы и поднимает сервисы с нуля. Узкое место переместилось в инфраструктуру, рассчитанную на людей: контроль версий, сборки и CI. Чтобы его расшить, компания за пять месяцев полностью перевела монорепозиторий с git на собственную систему Scion. Параллельно она сделала инструмент код-ревью Antique, поиск по коду и систему IAM для source control.

Где git перестал вмещаться

Git децентрализован: каждый клон — полноценный репозиторий, который умеет считать диффы, читать историю и работать без сети. Для большинства проектов это правильный дизайн. У Anthropic он начал мешать. История одной только ветки main занимает почти 100 ГБ, сжатая рабочая копия — больше 25 ГБ. Для CI выполняется порядка 25 млн чекаутов в день, и это без учёта среды разработчиков, песочниц агентов и исследовательских задач. При наивной загрузке получилось бы свыше 600 ПБ git-трафика ежедневно.

В ход шли shallow clone, sparse checkout, promisor remotes, внутренние зеркала и снапшоты в blob-хранилище. На пике работали несколько сотен git-зеркал. Они выигрывали время, но с ростом merge rate их становилось сложнее держать. Снапшоты отставали от вершины main, а diff и blame на частичных клонах требовали всё больше ухода. Вывод команды: git использовался как централизованная система с одной авторитетной копией, а клиентами были агенты и джобы, которые онлайн по определению. Свойства, ценные для офлайн-работы, тормозили масштабирование.

Как устроен Scion

Единицей работы в Scion служит changeset, запись в write-ahead log. Вместо указателя на дерево он хранит список изменённых относительно первого родителя файлов и адресуемые по содержимому ссылки на сжатые данные в blob-хранилище. Changeset создаётся на сервере и сразу доступен везде. Пакфайлов, блокировок и межсерверной координации нет. Ref, если нужен, двигается как compare-and-swap по одной строке в Spanner, отдельно от создания changeset.

На вопросы вроде «кто последним менял строку» отвечают производные данные: структуры для blame, истории путей и skip-листы графа коммитов. Каждый тип определяется рекурсивно через значения для родителей. Его можно считать сразу или лениво, а внутреннее устройство можно менять, не трогая клиента.

Клиент scn не сообщает серверу, что у него уже есть. Он идёт от корневого дерева, запрашивает недостающие деревья, затем блобы. Каждый запрос относится к неизменяемому объекту, поэтому его обслужит любой кэш. Узел общается с локальным scion-daemon, тот берёт данные у региональных scion-cache, а те при промахе обращаются к авторитетным scion-server. Строгое разделение уровней изолирует отказы: сбой регионального кэша не должен положить центр. Sparse и виртуализированные чекауты поддерживаются без специальной логики, клиент просто не просит лишних деревьев.

Что компания называет итогами:

  • рост с 2 500 до 30 000+ мерджей в день (май — сентябрь 2026);
  • миграция монорепозитория с git за пять месяцев;
  • инфраструктура Scion в 200 раз меньше git-зеркал по CPU и памяти;
  • чекауты в CI и исследовательских задачах быстрее на два порядка: секунды вместо минут;
  • cache hit rate на каждом уровне выше 99%;
  • прирост 25% процессорной мощности только в CI.

Что из этого взять себе

Принципы Anthropic опираются на Google Piper и Meta Sapling: клиенты всегда онлайн, сервер делает тяжёлую работу, коммиты дешёвые и без блокировок, рабочая копия по желанию. Все запросы клиента доступны и как API, поэтому CI-задачам часто вообще не нужен локальный репозиторий. На этом держатся внутренние пайплайны автоматического bisect и revert, которые при больших объёмах иначе были бы непрактичны.

Сама Anthropic оговаривается, что её нагрузка необычна и многим такие проблемы в ближайшее время не грозят. Но если команда уже гоняет десятки агентов, стоит считать, сколько чекаутов в сутки она делает, во что обходятся зеркала и как далеко снапшоты уходят от вершины main. Начать можно с вынесения метаданных вроде diff, merge base и blame в сервис, как это сделали в Scion на раннем этапе миграции.

Anthropic также отмечает, что Claude Mythos Preview и Claude Tag, появившиеся внутри компании в те же месяцы, усилили потребность в Scion и ускорили его разработку.

ЖХ
Hamidun News
AI‑новости без шума. Ежедневный редакторский отбор из 50+ источников. Продукт Жемала Хамидуна, Head of AI в Alpina Digital.
✦ Автономные AI-агенты

Делегируйте ресёрч, код и рутину автономному AI-агенту

Интеллектуальная агентная среда NomadNet Agent (agent.nomadnet.ai) выполняет многошаговые задачи: глубокий веб-ресёрч, анализ данных, написание кода и автоматизацию браузера.

Запустить NomadNet Agent →Платформа NomadNet AI
Что вы думаете?
Загружаем комментарии…