Перейти к содержанию
Claude News

Оформление

Оформление

Anthropic

Anthropic за пять месяцев съехала с git на свою Scion

5 мин чтения

Если бы Anthropic выкачивала свой монорепозиторий через git в лоб, один только CI тянул бы больше 600 петабайт трафика в день. Как рассказывает инженерный блог Anthropic, компания вместо этого за пять месяцев написала собственную систему контроля версий Scion и полностью перевела на неё монорепозиторий.

Коротко

  • Число изменений, которые ежедневно вливают в монорепозиторий Anthropic, выросло примерно с 2 500 в мае 2026 года до более чем 30 000 в сентябре, и упираться стали в инструменты для людей.
  • Scion устроен асимметрично: сервер считает историю, blame, слияния и сами коммиты, а клиент держит ограниченный кэш и скачивает только те деревья и файлы, которые ему действительно нужны.
  • Anthropic сама пишет, что Scion не годится как универсальная замена git и его трудно отдать другим, а большинству компаний такие нагрузки в ближайшее время не грозят.

Если вы не следили: в Anthropic говорят, что код перестал быть узким местом, потому что Claude сам гоняет исследовательские циклы, оптимизирует сложные программы и пишет сервисы с нуля. Тормозить начала инфраструктура, рассчитанная на людей: контроль версий, сборки и CI. По оценке компании, спрос на слияние кода практически бесконечен, и каждое снятое ограничение сразу увеличивает объём кода.

При 25 миллионах чекаутов в день не спасли даже сотни зеркал git

История одной только главной ветки весит почти 100 ГБ, сжатая рабочая копия занимает больше 25 ГБ. Чекаутов для CI в день порядка 25 миллионов, и в эту цифру не входят среды разработчиков, песочницы агентов и исследовательские задачи.

Anthropic перепробовала всё, что git предлагает для работы с частью репозитория: shallow clones, sparse checkouts, promisor remotes. Сверху легли стандартные обходные пути, внутренние зеркала и снимки репозитория (seeds) в blob-хранилище. На пике зеркал было несколько сотен. С ростом числа слияний seeds всё сильнее отставали от вершины main, а diff и blame на частичных клонах удавалось поддерживать всё труднее.

Потом в компании заметили простую вещь. Git децентрализован: каждый клон хранит полную историю и умеет работать офлайн. Anthropic же, как и большинство компаний, пользовалась им централизованно, с одной главной копией, при том что почти все клиенты были агентами и задачами, которые по определению всегда в сети.

Scion исходит из того, что клиент всегда в сети

Отсюда вопрос, с которого начался Scion: каким был бы контроль версий, спроектированный с первого дня под агентов онлайн? Отвечая на него, Anthropic опиралась на опыт других гигантских монорепозиториев, прежде всего Piper у Google и Sapling у Meta.

Сервер в Scion отвечает на вопросы об истории и blame, сам создаёт коммиты, делает слияния и rebase. Клиент держит ограниченный локальный кэш объектов, раскладывает файлы рабочей копии и следит за изменениями на диске. Пушить нечего, а стоимость коммита должна расти с размером изменения, а не репозитория.

Все запросы клиента открыты и через API, поэтому многим задачам CI локальная копия не нужна: diff между коммитом и его merge base можно спросить у сервера. По словам Anthropic, автоматические конвейеры bisect и откатов без такого дешёвого доступа на их масштабе были бы непрактичны. Packfiles, сжатых пакетов объектов git, в Scion нет, а значит, нет и обслуживания репозитория.

Ветки и теги Scion не поощряет, кроме main и релизных веток: общее состояние, о котором должны договориться все серверы, в Anthropic считают будущей проблемой масштабирования.

Единица работы в Scion называется changeset

Changeset устроен как запись в журнале упреждающей записи (write-ahead log). Коммит git хранит указатель на дерево, а changeset хранит список файлов, изменившихся относительно первого родителя, и адресуемые по содержимому ссылки на сжатые файлы в blob-хранилище. Блокировок и координации между серверами нет, а сдвиг ref сводится к compare-and-swap в одной строке Spanner.

Сам changeset не знает, кто последним правил строку. Для таких вопросов Scion строит производные данные: структуры для blame, истории путей и skip lists по графу коммитов. Каждый тип считается рекурсивно из значений у родителей, его можно вычислять сразу или отложить, а клиент внутренностей не видит.

Скачивание тоже перевёрнуто. Клиент scn не сообщает серверу, что у него уже есть: он начинает с корневого дерева и рекурсивно запрашивает недостающие деревья, затем файлы. Как с книгами по инвентарному номеру: экземпляр под номером никогда не меняется, поэтому выдать его может любой филиал, а не только центральный склад.

На каждом узле объекты для всех задач хранит демон scion-daemon. По данным AI時短ラボ, он обращается к региональным scion-cache, те при промахе идут в scion-server, который читает Spanner и облачное хранилище, а доля попаданий в кэш выше 99% на каждом уровне.

Результаты Anthropic описывает собственными цифрами

За те же пять месяцев, кроме Scion, Anthropic сделала площадку для ревью кода Antique, поиск по коду, развитую систему прав доступа к репозиторию и новые способы вливать большие объёмы проверенного кода.

По данным AI時短ラボ, инфраструктура Scion примерно в 200 раз скромнее зеркал git по процессору и памяти, чекауты для CI и исследовательских задач ускорились на два порядка, с минут до секунд, а в одной только CI освободилось 25% процессорных мощностей.

Там же говорится, что Scion, Antique и около полудюжины связанных систем построила команда из семи человек. Первый конвейер переноса из git в Scion был почти целиком написан руками, а ранний снапшот Claude Mythos Preview переписал его: памяти в 20 раз меньше, скорость в 4 раза выше, неявные инварианты сохранены.

Все цифры эффекта приводит сама Anthropic, методика измерений не раскрыта, независимой проверки у них нет. Компания предупреждает, что Scion не годится как универсальная замена git, а комментаторы напоминают о цене ухода из экосистемы git и о постоянной поддержке своей системы. На наш взгляд, самое переносимое здесь протокол: запрос неизменяемых объектов по адресу кэширует любой слой, и для этого не обязательно писать собственный Scion.

Куда дальше растут 30 000 слияний

Anthropic не ждёт, что рост скоро замедлится, и в списке узких мест рядом с контролем версий остаются сборки и CI. Планов открыть Scion наружу и сроков следующих шагов в посте нет. Компания полагает, что у других пользователей ИИ-инструментов для кода те же точки давления появятся довольно скоро, хотя в ближайшее время большинству они не грозят. Так что git на ноутбуке пока можно не удалять.

Anthropic

Claude Fable 5.5 нашёлся в конфиге LiteLLM для Azure

Кто-то из BerriAI добавил в LiteLLM строку azure_ai/claude-fable-5-5, взяв данные из каталога моделей Azure: окно в 1 000 000 токенов и цены за токен. Мышление в этой записи помечено как всегда включённое. Модель с вечно включённым мышлением вы бы гоняли на всём или только на сложных задачах?

Пока никто не написал. Будьте первым.

Присоединяйтесь к разговору

Войдите, чтобы оставить комментарий. Он появится после модерации.