آسانا مهاجرت پنجساله رو دو هفتهای تموم کرد
خلاصهٔ کاملتر
OpenAI یه کیساستادی منتشر کرد که میگه آسانا با Codex پنج سال کار مهندسی رو تو دو هفته جمع کرده: هزینهی مدل و زیرساخت حدود ۱۲ هزار دلار، در برابر برآورد قبلی خود شرکت که حدود ۶ میلیون دلار بود. موضوع، مهاجرت از Enzyme به React Testing Library بود؛ بیش از ۴ هزار فایل تست که با حدود ۱.۵ هفته کار مهندسی، پخششده تو دو هفتهی تقویمی، تموم شد.
این مهاجرت ذاتاً ساده نیست، چون دو تا کتابخونه از دو زاویهی کاملاً متفاوت به تست نگاه میکنن. Enzyme روی خود کامپوننت و اینستنسش کار میکنه، ولی React Testing Library روی DOM رندرشده (یعنی همون ساختار HTMLای که به مرورگر میرسه) تست مینویسه. برای همین تستها فقط ترجمه نمیشن، عملاً از نو نوشته میشن و سینتکسشون هیچ شباهتی به هم نداره.
گرگلی اوروش میگه عدد ۶ میلیون دلار و بازهی پنج ساله متورمه. دن اوبیلا، مسئول گروه بهرهوری توسعهدهندهی آسانا، براش روشن کرده که پنج سال زمان تخمینی تمامشدن یه مهاجرت کماولویت بوده، نه پنج سال کار تماموقت یه تیم. مهاجرت از ۲۰۲۴ شروع شده بود و حدود ۲۵ درصد فایلها قبلاً منتقل شده بودن. خود ۶ میلیون هم یه تخمین سرانگشتی بود: زمان دستی هر فایل، ضرب در تعداد فایلهای باقیمونده، ضرب در نرخ ساعتی مهندس.
نمونهی قابل مقایسهش ایربیانبی بود که ۳۵۰۰ فایل تست کامپوننت رو تو شش هفته با LLM مهاجرت داد، درحالیکه تخمین دستیش ۱.۵ سال مهندسی بود. تیمشون با ساختن حلقههای تلاش مجدد، ۷۵ درصد فایلها رو فقط تو چهار ساعت جابهجا کرد و بعد با یه پایپلاین ریفکتور دقیقتر تو چهار روز به ۹۷ درصد رسید؛ ۳ درصد آخر رو مهندسها تو یه هفته تموم کردن. اون موقع، مارس ۲۰۲۵، مدل روز Claude 3.7 Sonnet بود.
به گفتهی نویسنده نکتهی اصلی این نیست که تخمین ۱ میلیون بوده یا ۵ میلیون؛ نکته اینه که این دسته مهاجرتها قبلاً عملاً غیرعملی بودن و حالا شدنیان. اوبر ۶۰۰ هزار تست یونیت روی ۱۵ میلیون خط کد رو تو چهار ماه با دو مهندس از JUnit 4 به JUnit 5 برد، و Bun هم ۵۳۰ هزار خط رو از Zig به Rust تو دو هفته با ۱۶۵ هزار دلار هزینهی API منتقل کرد. نویسنده میگه هزینهی ۱۲ هزار دلاری آسانا هم با مدلهای ارزونتر بازم پایینتر میاد.
مزیت اصلی این سرعت، فقط پول نیست. نویسنده میگه دردسر واقعی مهاجرتهای طولانی اینه که باید کتابخونهی قدیمی رو همزمان با جدید نگه داری، و کوتاه شدن این پنجره بهتنهایی ارزش هزینهی اضافه رو داره. وجه مشترک همهی این پروژهها هم اینه که مهندسها باید براش برنامه بریزن، حلقههای اعتبارسنجی طراحی کنن و تا آخر درگیر بمونن.
نکات کلیدی:
- آسانا مهاجرت Enzyme به React Testing Library رو با حدود ۱۲ هزار دلار هزینهی مدل و زیرساخت و ۱.۵ هفته کار مهندسی تموم کرد
- برآورد قبلی ۶ میلیون دلار بود، ولی یه تخمین سرانگشتی و به گفتهی نویسنده متورم
- پنج سال، زمان تخمینی تمامشدن یه مهاجرت کماولویت بود نه پنج سال کار تماموقت
- مهاجرت از ۲۰۲۴ شروع شده بود و ۲۵ درصد از ۴ هزار فایل قبلاً منتقل شده بود
- ایربیانبی ۳۵۰۰ فایل تست رو تو ۶ هفته با LLM مهاجرت داد؛ تخمین دستی ۱.۵ سال مهندسی بود
- اوبر ۶۰۰ هزار تست و ۱۵ میلیون خط کد رو تو ۴ ماه با ۲ مهندس از JUnit 4 به JUnit 5 برد
- Bun هم ۵۳۰ هزار خط رو از Zig به Rust تو ۲ هفته با ۱۶۵ هزار دلار هزینهی API منتقل کرد




