Contexte et croissance du monorepo

En mai 2026, Anthropic enregistrait 2 500 fusions de code par jour. En septembre de la même année, ce chiffre a explosé à plus de 30 000 fusions quotidiennes, soit une multiplication par plus de dix. Le dépôt monolithique (monorepo) contenait alors près de 100 Go d’historique sur la branche principale, avec une copie de travail compressée de 25 Go. Le système de CI effectuait environ 25 millions de check‑outs quotidiens, ce qui, si l’on comptait chaque téléchargement de manière naïve, aurait généré plus de 600 Po de trafic Git par jour. Cette charge a rapidement dépassé les capacités des solutions traditionnelles.

Limites de Git à grande échelle

Git repose sur le principe d’un dépôt complet disponible hors ligne. Pour un monorepo de 100 Go, chaque clone nécessite la totalité de l’historique, ce qui rend les opérations de checkout et de diff très coûteuses. Anthropic a d’abord tenté les solutions classiques : clones superficiels, check‑outs parcimonieux, remotes promesse, miroirs internes et « seeds » stockés en blob. Au pic, plusieurs centaines de miroirs Git étaient exploités, mais la gestion de ces copies synchronisées devenait de plus en plus lourde. De plus, les seeds, rafraîchis périodiquement, s’écartaient du tip de la branche principale, compliquant les fonctions dépendantes de l’historique comme le blame ou le diff.

Architecture de Scion

Scion a été conçu en cinq mois et migré entièrement depuis Git. Le modèle repose sur des clients toujours connectés à un serveur central qui détient la source de vérité. Le client ne conserve qu’un cache d’objets limité et délègue les calculs de l’historique, du blame, des merges et des rebases au serveur, éliminant ainsi le besoin de copies locales complètes. Cette asymétrie client‑serveur réduit la bande passante et la charge de stockage sur les agents.

Scion expose toutes les requêtes de contrôle de version via une API, permettant aux pipelines CI, aux agents de recherche et aux outils internes (bisect, revert) d’interroger le dépôt sans télécharger de données. La plateforme est horizontalement scalable : chaque composant (cache, service de métadonnées, stockage d’objets) peut être répliqué indépendamment, et aucun n’héberge une copie intégrale du dépôt. L’absence de « packfiles » élimine les opérations de maintenance lourdes typiques de Git.

Les commits, rebases et merges sont exécutés directement sur le serveur de façon incrementale et lock‑free. Chaque opération crée uniquement les métadonnées nécessaires, évitant les verrous globaux et garantissant une latence compatible avec les dizaines de milliers de changements quotidiens.

Impacts et perspectives

Le passage à Scion a permis à Anthropic de soutenir une cadence de plus de 30 000 fusions par jour sans recourir à des miroirs supplémentaires. Les outils de revue de code (Antique), la recherche de code et le contrôle d’accès granulaire ont été livrés simultanément, montrant la capacité du système à intégrer de nouvelles fonctionnalités sans perturber la charge existante. Bien que la solution soit actuellement adaptée à un environnement où les agents sont constamment en ligne, elle expose un modèle potentiellement réplicable pour d’autres organisations qui intègrent des assistants IA capables de générer du code à grande vitesse. Les limites restent liées à la dépendance à une connectivité permanente ; toute interruption du serveur central pourrait affecter l’ensemble des agents. Cependant, la conception modulaire de Scion facilite la mise en place de redondances et de zones de disponibilité multiples, atténuant ce risque.