اسکیون Anthropic به ۳۰ هزار ادغام کد در روز رسید؛ داستان بازطراحی کنترل نسخه برای عصر هوش مصنوعی

tech-insider.org

انتشار در منبع: انتشار در سایت ما:

مقاله اصلی · English

اسکیون Anthropic به ۳۰ هزار ادغام کد در روز رسید [۲۰۲۶]

Anthropic یکی از بنیادی‌ترین بخش‌های زیرساخت مهندسی نرم‌افزار، یعنی کنترل نسخه، را به‌صورت کامل بازطراحی کرده است. بر اساس مطلب مهندسی این شرکت که نخستین‌بار توسط The Register در ۱۳ اکتبر ۲۰۲۶ گزارش شد، Anthropic مخزن یکپارچه داخلی خود را از Git به یک سیستم کنترل نسخه جدید و اختصاصی با نام Scion منتقل کرده است. این شرکت می‌گوید دلیل این تغییر مشکلی بود که بسیاری از تیم‌های مهندسی آرزوی داشتن آن را دارند: حجم بیش از حد کد که با سرعتی بالاتر از توان Git تولید و ادغام می‌شد.

ابعاد این مشکل چشمگیر است. Anthropic اعلام کرده که در ماه مه ۲۰۲۶ به‌طور میانگین حدود ۲۵۰۰ تغییر کد در روز ادغام می‌کرد، اما این رقم تا سپتامبر ۲۰۲۶ از ۳۰ هزار ادغام روزانه عبور کرد؛ یعنی افزایشی بیش از ۱۰ برابر در تنها چهار ماه. به گفته شرکت، این رشد عمدتاً به دلیل عامل‌های کدنویسی مجهز به Claude بود که تغییرات را با سرعت ماشینی تولید و ارسال می‌کردند و در نتیجه Git در مقیاس مخزن یکپارچه Anthropic به محدودیت‌های عملی خود رسید. جزئیات این پروژه در وبلاگ مهندسی Anthropic نیز منتشر شده است: anthropic.com/engineering.

Anthropic چه چیزی ساخته است: Scion، Antique و زیرساخت پیرامونی

Scion نام سیستم کنترل نسخه داخلی Anthropic است و محور اصلی این پروژه به شمار می‌رود. این شرکت به جای اصلاح Git برای تحمل حجم بالاتر ادغام‌ها، تصمیم گرفت آن را به‌طور کامل در مخزن یکپارچه داخلی خود کنار بگذارد. Anthropic می‌گوید ساخت Scion را در ژانویه ۲۰۲۶ آغاز کرد و طی پنج ماه مهاجرت کامل از Git را به پایان رساند؛ زمانی کوتاه برای جایگزین کردن سیستمی که هر مهندس شرکت هر روز با آن کار می‌کند.

Scion به‌تنهایی ساخته نشد. Anthropic همچنین رابط بازبینی کدی به نام Antique، یک سیستم جست‌وجوی اختصاصی کد و یک لایه مدیریت هویت و دسترسی (IAM) برای کنترل نسخه ایجاد کرد. این چهار بخش در کنار هم جایگزینی برای مجموعه ابزارهایی هستند که بسیاری از سازمان‌های مهندسی با ترکیبی از Git، GitHub و ابزارهای شخص ثالث بازبینی و جست‌وجوی کد استفاده می‌کنند. تصمیم Anthropic برای ساخت همه این ابزارها در داخل شرکت، به جای خرید یا تطبیق ابزارهای موجود، نشان می‌دهد این شرکت اکنون خط تولید نرم‌افزار خود را با توجه به سهم فزاینده کدهای تولیدشده توسط ماشین‌ها طراحی می‌کند.

ایده فنی اصلی Scion مفهوم «مجموعه تغییرات» (changeset) است که در این سیستم مانند commit در Git، واحد اصلی کار محسوب می‌شود. تیم مهندسی Anthropic توضیح می‌دهد که changeset یک ورودی در یک گزارش ثبت پیش‌نوشت (write-ahead log) است و برای ذخیره بیشتر اطلاعاتی طراحی شده که مهندسان از یک commit سنتی Git انتظار دارند. این شرکت همچنین یک لایه API روی Scion ساخته است که امکان پرس‌وجوی مستقیم درباره کنترل نسخه را فراهم می‌کند؛ بنابراین برخی کارهای خودکار، از جمله عامل‌های هوش مصنوعی، می‌توانند بدون دریافت نسخه محلی از کد، با تاریخچه و وضعیت مخزن تعامل داشته باشند.

چرا Git زیر فشار تولید کد در مقیاس Claude شکست خورد

Git در سال ۲۰۰۵ توسط لینوس توروالدز برای مدیریت هسته لینوکس طراحی شد؛ پروژه‌ای که هزاران مشارکت‌کننده انسانی با سرعت انسانی روی آن کار می‌کردند. اما دو دهه بعد، سازمان مهندسی داخلی Anthropic با نوع متفاوتی از مشارکت‌کننده روبه‌رو است: عامل‌های کدنویسی خودکار و نیمه‌خودکار مبتنی بر مدل‌های Claude که تغییرات را به‌صورت پیوسته ارسال می‌کنند، نه در دوره‌های کاری انسانی با اوج و کاهش مشخص.

افزایش ۱۰ برابری حجم ادغام‌های روزانه در کمتر از نیم سال، نوع فشاری نیست که مدل توزیع‌شده اشیای Git، با تکیه بر نسخه‌های کامل تاریخچه و حل تعارض شاخه‌ها، برای تحمل آن در یک مخزن واحد طراحی شده باشد. از نگاه Anthropic، کنترل نسخه به بزرگ‌ترین گلوگاه توسعه تبدیل شده بود؛ موضوعی که برای شرکتی که مزیت تجاری خود را بر شتاب‌دهی توسعه نرم‌افزار با عامل‌های هوش مصنوعی بنا کرده، اهمیت ویژه‌ای دارد. اگر ابزارهای زیربنایی نتوانند با سرعت تولید کد هماهنگ شوند، گلوگاه فقط از «آیا هوش مصنوعی می‌تواند کد بنویسد؟» به «آیا زیرساخت می‌تواند کدی را که هوش مصنوعی می‌نویسد جذب کند؟» منتقل می‌شود.

این مسئله تنها به Anthropic محدود نیست. هر سازمانی که ابزارهای کدنویسی هوش مصنوعی مانند Claude Code، Codex یا GitHub Copilot را در مقیاس بزرگ استفاده کند، به شکلی مشابه با این چالش روبه‌رو خواهد شد، حتی اگر حجم ادغام‌هایش بسیار کمتر باشد. با افزایش سهم تغییرات تولیدشده توسط هوش مصنوعی، سیستم‌های کنترل نسخه‌ای که برای همکاری با سرعت انسانی ساخته شده‌اند، تحت آزمایش‌هایی قرار می‌گیرند که طراحان اولیه آنها هرگز پیش‌بینی نمی‌کردند.

ابعاد مشکل: حجم ادغام‌های Anthropic در اعداد

ارقام اعلام‌شده توسط Anthropic نشان‌دهنده تغییر بزرگی در مقیاس توسعه این شرکت است. تیم مهندسی Anthropic اعلام کرده است: «در ماه مه ۲۰۲۶، Anthropic به‌طور میانگین حدود ۲۵۰۰ تغییر کد در روز ادغام می‌کرد؛ تا سپتامبر، این رقم به بیش از ۳۰ هزار مورد در روز رسید.» این آمار همچنین توسط TokenPost گزارش شده است.

شاخصمه ۲۰۲۶سپتامبر ۲۰۲۶تغییر
میانگین ادغام روزانه کدحدود ۲۵۰۰بیش از ۳۰ هزارافزایش ۱۲ برابری
سیستم اصلی کنترل نسخهGitScion (مهاجرت کامل)جایگزینی کامل
ابزار بازبینی کدابزارهای مبتنی بر GitAntiqueابزار داخلی جدید
مدت مهاجرتنامشخص۵ ماه (آغاز ژانویه ۲۰۲۶)انتقال کامل مخزن یکپارچه
زیرساخت پشتیبانابزارهای استاندارد GitScion + Antique + جست‌وجوی کد + IAM۴ سیستم داخلی جدید

آنچه این جهش را قابل توجه‌تر می‌کند، سرعت وقوع آن است. بسیاری از سازمان‌های بزرگ مهندسی، مهاجرت سیستم کنترل نسخه را پروژه‌ای چندساله می‌دانند که معمولاً نیازمند اجرای موازی سیستم قدیمی و جدید در دوره‌های طولانی است. مهاجرت پنج‌ماهه Anthropic، شامل طراحی، ساخت و انتقال کامل مخزنی که از یک شرکت با درآمد سالانه میلیارد دلاری پشتیبانی می‌کند، نشان‌دهنده فوریت ناشی از افزایش حجم ادغام‌ها و اولویت بالای حل این مشکل پیش از بحرانی شدن آن است.

طراحی Scion: مجموعه تغییرات، گزارش ثبت پیش‌نوشت و دسترسی مبتنی بر API

انتخاب معماری مبتنی بر changeset در Scion، که به‌صورت ورودی در یک write-ahead log پیاده‌سازی شده، تفاوت مهمی با گراف اشیای آدرس‌دهی‌شده Git دارد. Git تاریخچه را از طریق گراف جهت‌دار بدون دوری از commitها دنبال می‌کند که هر کدام به والد خود اشاره دارند و شاخه‌ها نیز اشاره‌گرهایی متحرک در این گراف هستند. در مقابل، گزارش ثبت پیش‌نوشت یک رکورد ترتیبی و فقط‌افزایشی از عملیات است که بیشتر در پایگاه‌های داده دیده می‌شود تا کنترل نسخه.

این انتخاب نشان می‌دهد Anthropic احتمالاً اولویت را به نوشتن‌های منظم، قابل پیش‌بینی و پرتعداد داده است، نه مدل انعطاف‌پذیر شاخه‌بندی که Git را برای همکاری انسانی توزیع‌شده محبوب کرده است.

Anthropic درباره changeset توضیحی مستقیم ارائه کرده است: «در Scion، واحد کار یک changeset است؛ ورودی‌ای در یک گزارش ثبت پیش‌نوشت.» این شرکت می‌گوید changeset بیشتر اطلاعات مورد انتظار از یک commit در Git را ذخیره می‌کند؛ بنابراین انتقال مفهومی برای مهندسانی که از Git به Scion مهاجرت می‌کنند، نسبتاً ساده‌تر است، حتی اگر زیرساخت داخلی متفاوت باشد.

طراحی API-محور احتمالاً بخش مهم‌تری برای کاربرد عامل‌های هوش مصنوعی است. Scion با ارائه پرس‌وجوهای کنترل نسخه از طریق API، به کارهای خودکار از جمله عامل‌های مبتنی بر Claude اجازه می‌دهد وضعیت، تاریخچه و فراداده مخزن را بدون نیاز به دریافت نسخه محلی بررسی کنند. برای سیستمی که روزانه بیش از ۳۰ هزار ادغام انجام می‌دهد، حذف دریافت‌های غیرضروری نسخه محلی برای کارهای خودکارِ خواندنی می‌تواند باعث صرفه‌جویی قابل توجهی در منابع پردازشی و کاهش مشکلات ناشی از عملیات پرتکرار Git روی یک مخزن بزرگ شود.

ابزاری محدود و اختصاصی، نه قاتل Git

Anthropic تأکید کرده است که Scion جایگزین عمومی Git نیست. این شرکت به‌صراحت گفته است: «Scion به هیچ وجه جایگزین مناسبی برای git برای استفاده عمومی نیست.» همچنین تأیید کرده که این سیستم متن‌باز نخواهد شد. Scion یک ابزار داخلی و اختصاصی است که برای حل یک مشکل مشخص در یک سازمان مشخص ساخته شده، نه محصولی برای اکوسیستم گسترده توسعه‌دهندگان.

این توضیح با برخی واکنش‌های اغراق‌آمیز آنلاین که Scion را رقیب مستقیم سلطه جهانی Git معرفی کرده‌اند، تفاوت دارد. Git همچنان رایگان، متن‌باز و در تقریباً همه جریان‌های توسعه نرم‌افزار جهان حضور دارد. Scion تنها برای مخزن یکپارچه Anthropic و الگوی کاری مبتنی بر عامل‌های هوش مصنوعی این شرکت طراحی شده است.

تصمیم Anthropic برای متن‌باز نکردن Scion نیز قابل توجه است. این شرکت در موارد دیگری هم ابزارهای داخلی خود را محدود نگه داشته است. گزارش‌هایی مانند مطلب Ground News به اقدام Anthropic برای درخواست حذف DMCA علیه توسعه‌دهنده‌ای که Claude Code را مهندسی معکوس کرده بود اشاره کرده‌اند. نگه داشتن Scion در داخل شرکت با رویکرد کلی Anthropic برای محافظت از زیرساخت‌های مهندسی داخلی هماهنگ است.

تأثیر صنعتی: نشانه‌ای از توسعه نرم‌افزار در عصر هوش مصنوعی

مهاجرت به Scion یک نمونه واقعی از تغییراتی است که عامل‌های کدنویسی هوش مصنوعی در مهندسی نرم‌افزار ایجاد می‌کنند. افزایش ۱۲ برابری حجم ادغام‌ها در چهار ماه نشان می‌دهد این عامل‌ها می‌توانند سرعت تولید تغییرات کد را به‌طور چشمگیری افزایش دهند. اینکه این افزایش الزاماً به تولید نرم‌افزار بیشتر، قابل اعتمادتر یا فقط حجم بیشتری از کد برای بررسی و نگهداری منجر می‌شود، پرسشی است که افشای Anthropic به‌طور مستقیم پاسخ نمی‌دهد.

برای شرکت‌های دیگر، نکته اصلی خود Scion نیست، بلکه پیامی است که پشت آن قرار دارد: وقتی عامل‌های کدنویسی هوش مصنوعی در مقیاس بزرگ به کار گرفته شوند، محدودیت سرعت توسعه نرم‌افزار ممکن است از «سرعت نوشتن کد توسط هوش مصنوعی» به «توانایی زیرساخت‌های اطراف مانند کنترل نسخه، بازبینی کد، مدیریت هویت و جست‌وجو برای جذب این کد» منتقل شود.

این موضوع همچنین پرسشی رقابتی برای شرکت‌هایی ایجاد می‌کند که ابزارهای کدنویسی هوش مصنوعی را به مشتریان خارجی ارائه می‌کنند. اگر Anthropic برای مدیریت حجم ادغام‌های عامل‌های خود مجبور به بازسازی کامل زیرساخت داخلی شده است، مشتریانی که عامل‌های مشابه را روی مخازن خود اجرا می‌کنند نیز ممکن است در آینده با محدودیت‌های مشابهی در جریان‌های کاری مبتنی بر Git روبه‌رو شوند.

پرسش‌های متداول

Scion چیست؟
Scion سیستم کنترل نسخه داخلی Anthropic است که برای جایگزینی Git در مخزن یکپارچه این شرکت ساخته شده است. این سیستم از changeset به‌عنوان واحد اصلی کار استفاده می‌کند و داده‌های کنترل نسخه را از طریق API در اختیار کارهای خودکار قرار می‌دهد.

چرا Anthropic Git را با Scion جایگزین کرد؟
Anthropic می‌گوید تعداد ادغام‌های روزانه کد از حدود ۲۵۰۰ مورد در مه ۲۰۲۶ به بیش از ۳۰ هزار مورد در سپتامبر رسید و این رشد عمدتاً ناشی از عامل‌های کدنویسی مبتنی بر Claude بود.

مهاجرت از Git به Scion چقدر طول کشید؟
Anthropic ساخت Scion را در ژانویه ۲۰۲۶ آغاز کرد و مهاجرت کامل مخزن یکپارچه خود را طی پنج ماه به پایان رساند.

آیا Scion منتشر یا متن‌باز خواهد شد؟
خیر. Anthropic گفته است Scion یک سیستم اختصاصی داخلی است و برای استفاده عمومی طراحی نشده است.

آیا این به معنای کنار رفتن Git در صنعت است؟
خیر. Anthropic تأکید کرده است که Scion جایگزین عمومی Git نیست و این تغییر فقط برای نیازهای داخلی این شرکت انجام شده است.