Datadog, Codex का उपयोग करके सिस्टम के लेवल पर कोड रिव्यू करता है
Codex की मदद से, Datadog हर कोड को पूरे सिस्टम के कॉन्टेक्स्ट के मुताबिक रिव्यू करता है, ताकि इंसिडेंट को रोका जा सके और कस्टमर का भरोसा बरकरार रहे.
Datadog(एक नई विंडो में खुलेगा) दुनिया में सबसे ज्यादा इस्तेमाल किए जाने वाले ऑब्ज़र्वेबिलिटी प्लेटफ़ॉर्म में से एक को चलाता है, जिससे कंपनियों को जटिल डिस्ट्रिब्यूटेड सिस्टम की निगरानी करने, उनसे जुड़ी समस्या हल करने और सुरक्षा करने में मदद मिलती है। जब कुछ गड़बड़ होती है, तो ग्राहक तेज़ी से समस्याएँ सामने लाने के लिए Datadog पर निर्भर करते हैं, जिसका मतलब है कि कोड के प्रोडक्शन में पहुँचने से बहुत पहले ही विश्वसनीयता को सिस्टम में शामिल किया जाना चाहिए।
इस वजह से, Datadog की इंजीनियरिंग टीमों के लिए, कोड का रिव्यू एक बेहद अहम पल बन जाता है. बात सिर्फ़ गलतियाँ पकड़ने की नहीं है, बल्कि यह समझना ज़रूरी है कि एक सिस्टम में किए गए बदलावों से उससे जुड़े अन्य सिस्टम पर कैसे असर पड़ता है. यह एक ऐसा क्षेत्र है, जहाँ पारंपरिक स्टेटिक एनालिसिस और नियमों पर आधारित टूल अक्सर काफ़ी साबित नहीं होते.
इस चुनौती का सामना करने के लिए, Datadog की AI Development Experience (AI DevX) टीम ने OpenAI के कोडिंग एजेंट Codex का सहारा लिया. यह कोड के रिव्यू में सिस्टम के लेवल की रीज़निंग लाता है और उन जोखिमों के बारे में बताता है जिन्हें इंसान बड़े पैमाने पर आसानी से नहीं देख सकते.
Datadog की AI DevX टीम का नेतृत्व करने वाले Brad Carter कहते हैं, "इससे सच में समय बचता है जो ज़रूरी है." "लेकिन हमारे पैमाने पर इंसिडेंट को रोकना कहीं ज़्यादा प्रभावशाली है."
Datadog में कोड का कारगर रिव्यू पहले सीनियर इंजीनियरों पर निर्भर करता था. ये लोग कोडबेस, उसकी हिस्ट्री और आर्किटेक्चर में किए गए समझौतों को इतनी अच्छी तरह समझते हैं कि वे सिस्टम से जुड़े जोखिम को पहचान सकते हैं.
लेकिन इस तरह के गहरे कॉन्टेक्स्ट को बड़े पैमाने पर लागू करना मुश्किल है और कोड का रिव्यू करने वाले शुरुआती AI टूल इस समस्या को हल नहीं कर सके. कई टूल एडवांस्ड लिंटर्स की तरह काम करते थे, सतही स्तर पर गलतियों को फ़्लैग करते थे और व्यापक सिस्टम की बारीकियों को नज़रअंदाज़ कर देते थे. Datadog के इंजीनियरों को अक्सर सुझाव बहुत सतही या बहुत नॉइस से भरे लगते थे और वे उन्हें अनदेखा कर देते थे.
Datadog ने OpenAI के कोडिंग एजेंट Codex को आज़माना शुरू किया. इसके लिए, उन्होंने इसे लाइव डेवलपमेंट वर्कफ़्लो में इंटीग्रेट किया. कंपनी की सबसे बड़ी और सबसे ज़्यादा इस्तेमाल की जाने वाली रिपॉज़िटरी में से एक में, हर पुल रिक्वेस्ट को Codex ऑटोमेटिक तरीके से रिव्यू करता था. इंजीनियरों ने Codex के कमेंट्स पर थम्स अप या थम्स डाउन करके प्रतिक्रिया दी और सभी टीमों को अनौपचारिक फ़ीडबैक शेयर किया. कई लोगों ने गौर किया कि Codex का फ़ीडबैक पढ़ने लायक था, जबकि पिछले टूल्स नॉइस से भरे या सतही सुझाव देते थे.
यह जांचने के लिए कि AI असिस्टेड रिव्यू, स्टाइल से जुड़ी गलतियाँ निकालने के अलावा और भी कुछ कर सकता है या नहीं, Datadog ने एक incident replay harness बनाया.
काल्पनिक स्थितियों का इस्तेमाल करने के बजाय, टीम ने पिछले इंसिडेंट का इस्तेमाल किया. उन्होंने उन पुल रिक्वेस्ट को फिर से बनाया जिनकी वजह से इंसिडेंट हुए थे, हर एक पर Codex को ऐसे चलाया जैसे वह ओरिजिनल रिव्यू का हिस्सा हो, फिर उन इंसिडेंट से निपटने वाले इंजीनियरों से पूछा कि क्या Codex से मिले फ़ीडबैक से कोई फ़र्क पड़ता.
परिणाम: Codex ने दस से ज़्यादा ऐसे मामले ढूँढे, यानी Datadog ने जितने इंसिडेंट्स की जांच की थी उनमें से लगभग 22% इंसिडेंट, जहाँ इंजीनियरों ने पुष्टि की कि Codex के दिए हुए फ़ीडबैक से फ़र्क पड़ सकता था और जितने भी अन्य टूल्स का मूल्यांकन किया गया था, उनमें से किसी भी टूल से उतना फ़र्क नहीं पड़ता.
चूँकि ये पुल रिक्वेस्ट पहले ही कोड के रिव्यू में पास हो चुकी थीं, इसलिए रीप्ले टेस्ट से पता चला कि Codex ने ऐसे जोखिम उजागर किए जिन्हें रिव्यूअर उस समय नहीं देख पाए थे. इस तरह, इसने इंसानी फ़ैसले को पलटने के बजाय उसे बेहतर बनाया.
Datadog के विश्लेषण से पता चला कि Codex ने लगातार ऐसी गलतियों को फ़्लैग किया था जो सिर्फ़ तत्काल डिफ़ से पता नहीं चलती हैं और जिन्हें निश्चित नियमों के ज़रिए नहीं पकड़ा जा सकता.
इंजीनियरों ने कहा कि Codex के कमेंट सिर्फ़ "बॉट नॉइस" नहीं थे:
- Codex ने उन मॉड्यूल के साथ हुए इंटरैक्शन्स के बारे में बताया जिन्हें बदला नहीं गया था
- इसने क्रॉस‑सर्विस कपलिंग के क्षेत्रों में टेस्ट कवरेज की पहचान की, जो पहले गायब था
- इसने API कॉन्ट्रैक्ट में हुए उन बदलावों को हाइलाइट किया जिनसे डाउनस्ट्रीम जोखिम था
"मेरी राय में, मैंने जितने भी इंजीनियरों के साथ काम किया है, उनमें से Codex का कमेंट सबसे होशियार इंजीनियर जैसा है जिसके पास बग ढूँढने के लिए समय ही समय है. यह उन संबंधों को देख लेता है जिन्हें मेरा दिमाग एक साथ नहीं समझ पाता."
रिव्यू फ़ीडबैक की मदद से कोड को असल में ज़्यादा भरोसेमंद बनाने की क्षमता की वजह से ही Datadog के मूल्यांकन में Codex सबसे अलग नज़र आया. स्टैटिक एनालिसिस टूल्स के उलट, Codex पुल रिक्वेस्ट के इरादे की तुलना कोड में उन बदलावों से करता है जो सबमिट किए गए हैं, पूरे कोडबेस और डिपेंडेंसीज़ पर रीज़निंग करता है और व्यवहार को वैलिडेट करने के लिए कोड और टेस्ट एक्सीक्यूट करता है.
“यह पहला था जो असल में प्रोग्राम के व्यापक कॉन्टेक्स्ट में अंतर पर ध्यान देता था," Carter कहते हैं. "वह नया और आँखें खोलने वाला अनुभव था.”
कई इंजीनियरों के लिए, उस बदलाव ने AI रिव्यू के साथ एंगेज करने के उनके तरीके को पूरी तरह से बदल दिया. "मैंने Codex के कमेंट्स को कोड के रिव्यू के असल फ़ीडबैक की तरह मानना शुरू कर दिया," Datadog के सीनियर सॉफ़्वेटयर इंजीनियर Ted Wexler कहते हैं. "कोई ऐसी चीज़ नहीं जिसे मैं सरसरी तौर पर देखूँ या नज़रअंदाज़ कर दूँ, बल्कि ऐसी चीज़ जो ध्यान देने लायक है."
मूल्यांकन के बाद, Datadog ने अपनी सभी इंजीनियरिंग टीम में Codex को ज़्यादा व्यापक रूप से लागू किया. आज 1,000 से ज़्यादा इंजीनियर इसका नियमित रूप से इस्तेमाल करते हैं.
फ़ीडबैक ज़्यादातर टूल में मौजूद औपचारिक मेट्रिक्स के बजाय स्वाभाविक रूप से मिलता है. इंजीनियर Slack पर उपयोगी इनसाइट्स, रचनात्मक कमेंट्स और उन पलों के बारे में पोस्ट करते हैं जब Codex ने उन्हें किसी समस्या के बारे में अलग तरह से सोचने में मदद की.
हालाँकि इससे बहुत समय भी बचता था, मगर टीमों ने लगातार इस बात की ओर इशारा किया कि काम करने के तरीके में कहीं ज़्यादा सार्थक बदलाव आया है.
"Codex ने इस बारे में मेरी सोच बदल दी है कि कोड का रिव्यू कैसा होना चाहिए. इसका मकसद हमारे सबसे अच्छे ह्यूमन रिव्यूअर्स की नकल बनाना नहीं है. इसका मकसद उन गंभीर खामियों और एज केस का पता लगाना है, जिन्हें इंसानों के लिए देख पाना मुश्किल होता है जब वे एक-एक बदलाव का अलग से रिव्यू करते हैं."
Datadog के लिए व्यापक प्रभाव यह था कि कोड के रिव्यू को परिभाषित करने के तरीके में बदलाव आया. गलतियाँ पकड़ने या साइकिल टाइम को ऑप्टिमाइज़ करने के लिए रिव्यू को एक चेकपॉइंट के रूप में मानने के बजाय, टीम अब Codex को विश्वसनीयता के एक मुख्य सिस्टम के रूप में देखती है जो एक पार्टनर की तरह काम करता है:
- एक अकेला रिव्यूअर एक कॉन्टेक्स्ट में जो जोखिम पहचान सकता है, उससे परे के जोखिम को उजागर करना
- अलग-अलग मॉड्यूल और सर्विस के बीच के इंटरैक्शन को हाइलाइट करना
- बड़े पैमाने पर शिपिंग करने में आत्मविश्वास बढ़ाना
- ह्यूमन रिव्यूअर्स को आर्किटेक्चर और डिज़ाइन पर फ़ोकस करने की सुविधा देना
यह बदलाव इस बात के अनुरूप है कि Datadog के लीडर, इंजीनियरिंग से जुड़ी प्राथमिकताएँ कैसे तय करते हैं जहाँ विश्वसनीयता और भरोसा, अगर रफ़्तार से ज़्यादा नहीं तो, रफ़्तार जितने ज़रूरी तो हैं ही.
"हम वह प्लेटफ़ॉर्म हैं जिस पर कंपनियाँ तब भरोसा करती हैं जब बाकी सब कुछ नाकाम हो रहा होता है," Carter कहते हैं. "इंसिडेंट को रोकने से हमारे कस्टमर्स का हम पर भरोसा मज़बूत होता है."


