# बंडल किया गया HTTP डायग्नोस्टिक्स रनटाइम HTTP/1.1, HTTP/2 और HTTP/3 एक ही बंडल curl क्लाइंट का उपयोग करते हैं। macOS arm64 और Linux x64 पर curl 8.22.0, OpenSSL 3.5.9, nghttp2 1.70.0, ngtcp2 1.25.0 और nghttp3 1.18.0 उपयोग होते हैं। Windows x64 पर curl.se का आधिकारिक curl-for-win 8.22.0_3 स्टैटिक बिल्ड, LibreSSL 4.3.3 और वही HTTP लाइब्रेरी उपयोग होती हैं। सिस्टम curl पर लौटने, रनटाइम डाउनलोड या व्यवस्थापक अनुमति की ज़रूरत नहीं है। Windows अपस्ट्रीम की पुनरुत्पादनीय बिल्ड विधि https://github.com/curl/curl-for-win/tree/9d77e31e पर है। पैकेजिंग से पहले `python3 scripts/native/build.py` से बिल्ड करें (Windows: `python scripts/native/build.py`)। macOS/Linux के लिए C/C++ टूल, CMake, Ninja, Perl, make और pkg-config ज़रूरी हैं। सोर्स संस्करण और अपस्ट्रीम SHA-256 के आधार पर `scripts/native/dependencies.lock.json` में तय हैं। स्क्रिप्ट हर डाउनलोड सत्यापित करती है, तृतीय-पक्ष ट्रांसपोर्ट लाइब्रेरी को स्टैटिक रूप से लिंक करती है और HTTP2/HTTP3/SSL सुविधाओं के बिना विफल हो जाती है। केवल ऑपरेटिंग-सिस्टम लाइब्रेरी डायनैमिक रहती हैं। Windows स्थानीय रूप से कंपाइल किए गए Windows ट्रांसपोर्ट स्टैक के बजाय तय आधिकारिक बाइनरी आर्काइव का उपयोग करता है। बंडल CA फ़ाइल का अपना तय हैश है; घटकों के लाइसेंस और अपस्ट्रीम बिल्ड का स्रोत-विवरण रनटाइम के साथ आते हैं। क्लाइंट और ट्रस्ट स्टोर app.asar के बाहर `resources/native-runtime/-/` में इंस्टॉल होते हैं। हर डायग्नोस्टिक उपयोग से पहले घटकों के हैश, आर्किटेक्चर और एक्ज़िक्यूटेबल की क्षमताएँ सत्यापित करता है। कॉन्फ़िगरेशन फ़ाइलें, प्रॉक्सी, TLS ट्रस्ट से जुड़े एनवायरनमेंट ओवरराइड और लाइब्रेरी इंजेक्शन वेरिएबल बाहर रखे जाते हैं। curl एक पूर्ण पथ, बंद शेल, सत्यापित CA ट्रस्ट और स्पष्ट रूप से तय IP फ़ैमिली के साथ चलता है, बिना कुकी और बिना स्वचालित रीडायरेक्ट के, तथा सीमित आउटपुट और समय के साथ। रीडायरेक्ट को ऐप्लिकेशन सत्यापित करता है और फिर से रिज़ॉल्व करता है। 443 के अलावा अन्य पोर्ट पर HTTPS समर्थित है। HTTP/3 `--http3-only` का उपयोग करता है और उसकी पुष्टि केवल तब होती है जब ऐसा ट्रांसफ़र पूरा हो जो HTTP संस्करण 3 और सफल प्रमाणपत्र सत्यापन की रिपोर्ट करे। 404 जैसी HTTP त्रुटि प्रतिक्रियाएँ भी प्रोटोकॉल की पुष्टि कर सकती हैं। Alt-Svc एक घोषणा है, प्रमाण नहीं। QUIC टाइमआउट, प्रमाणपत्र विफलता, DNS विफलता, कनेक्शन अस्वीकृति, असंगत प्रोटोकॉल और घटक विफलता अलग-अलग रहते हैं। UDP टाइमआउट से सर्वर का समर्थन अपुष्ट रहता है। QUIC हैंडशेक का समय TCP समय के रूप में रिपोर्ट नहीं किया जाता। हर माप एक अलग प्रोसेस/कनेक्शन शुरू करता है। warm विकल्प बंडल क्लाइंट के लिए कनेक्शन के पुनः उपयोग का दावा नहीं करता। इससे प्रोटोकॉल तुलनाएँ सुसंगत रहती हैं। रिपोर्ट में रनटाइम संस्करण, क्षमताएँ, TLS सत्यापन और QUIC समय शामिल होते हैं, जबकि इतिहास/एक्सपोर्ट बॉडी, URL क्वेरी और प्रमाणीकरण हेडर हटा देते हैं। ट्रांसपोर्ट स्टैक या CA ट्रस्ट स्टोर अपडेट करते समय इन तय मानों को अपडेट करें और हर समर्थित प्लेटफ़ॉर्म के लिए फिर से बिल्ड करें। प्रकाशित आर्टिफ़ैक्ट और सोर्स स्नैपशॉट अपरिवर्तनीय हैं।