अच्छी बग रिपोर्ट कैसे लिखें (AI या developer के लिए)
अच्छी बग रिपोर्ट वह है जिससे कोई दूसरा — एक developer या एक AI — वही समस्या देख सके जो आपने देखी, और उन्हें आपसे कुछ पूछना न पड़े। उसे एक विशिष्ट शीर्षक चाहिए, समस्या दोबारा पैदा करने के सटीक steps, आपने क्या अपेक्षा की थी, क्या असल में हुआ, error message शब्दशः कॉपी किया हुआ, और यह कि कहां हुआ: कौन सा पेज, browser, device और user। एक रिपोर्ट में एक बग, और अगर मदद करे तो screenshot।
ज़्यादातर बग समझने में ठीक करने से ज़्यादा समय लेते हैं। एक साफ़ रिपोर्ट समझने वाला हिस्सा हटा देती है। AI tools के साथ यह और भी ज़रूरी है: AI आपसे यह follow-up नहीं पूछ सकता कि “checkout अजीब है” से आपका मतलब क्या था, इसलिए वह अंदाज़ा लगाता है — और गलत अंदाज़ा किसी और चीज़ को तोड़ सकता है।
टेम्पलेट
इसे कॉपी करें और भरें:
शीर्षक: [क्या गलत है, कहां] — जैसे "Booking form 6 बजे के बाद का समय रिजेक्ट करता है"
दोहराने के चरण:
1. ...
2. ...
3. ...
अपेक्षित: [क्या होना चाहिए था]
असली: [इसके बजाय क्या हुआ]
Error message: [शब्दशः text, अगर कोई हो]
कहां: [पेज/URL, browser, device, किस user से लॉग इन था]
कितनी बार: [हर बार / कभी-कभी / एक बार]
Screenshot या recording: [संलग्न]
बाकी गाइड हर हिस्से को समझाता है।
चरण 1: पहले इसे दोबारा पैदा करें
लिखने से पहले बग को दोबारा होने की कोशिश करें। आप जानेंगे कि कौन से steps मायने रखते हैं, और क्या यह हर बार होता है।
- एक साफ़ स्थिति से शुरू करें: refresh करें, या log out करके फिर log in करें।
- हर click और जो कुछ आपने type किया, नोट करें।
- वह सबसे छोटा रास्ता खोजें जो बग को चालू करता है।
- दूसरे browser या account से आज़माएं। अगर यह सिर्फ़ एक user के साथ होता है, तो यह बड़ा सुराग है।
इस पर और जानने के लिए, देखें AI से बनी ऐप को कैसे debug करें।
चरण 2: विशिष्ट शीर्षक लिखें
शीर्षक में बताएं कि क्या गलत है और कहां, ताकि सूची में देखने वाले को पता चले कि यह कौन सा बग है।
| कमज़ोर | मज़बूत |
|---|---|
| Checkout टूटा है | कार्ट में discount code होने पर Checkout बटन कुछ नहीं करता |
| Mobile समस्या | 400px से कम चौड़े फ़ोन पर pricing cards स्क्रीन से बाहर निकलते हैं |
| Save पर error | नाम में emoji वाली profile सेव करने पर “500 Internal Server Error” दिखता है |
चरण 3: सटीक steps लिखें
उन्हें क्रम से लिखें। शाब्दिक रहें: कौन सा पेज, कौन सा बटन, आपने क्या type किया।
- Customer के रूप में log in करें (test account: customer@example.com)।
- कार्ट में “Starter kit” जोड़ें।
- Discount code
WELCOME10डालें और Apply पर click करें। - Checkout पर click करें।
“कोड के साथ checkout करने की कोशिश करें” उन विवरणों को छोड़ देता है जो अक्सर मायने रखते हैं: कौन सा user, कौन सा उत्पाद, कौन सा code, और क्या code पहले लागू हुआ।
चरण 4: अपेक्षित बनाम असली
यह रिपोर्ट का मूल है। दोनों लिखें, क्योंकि फ़र्क ही बग है।
- अपेक्षित: Checkout पेज खुलता है और कुल राशि में 10% छूट दिखती है।
- असली: बटन एक सेकंड के लिए spinner दिखाता है, फिर कुछ नहीं होता। बिना discount code के checkout काम करता है।
“अपेक्षित” के बिना पढ़ने वाले को पता नहीं चल सकता कि व्यवहार गलत है। “असली” के बिना उन्हें यह पता नहीं चलता कि क्या देखना है।
चरण 5: error शब्दशः कॉपी करें
Error messages कारण तक पहुंचने का सबसे तेज़ रास्ता हैं। उन्हें text के रूप में, शब्दशः कॉपी करें — paraphrase न करें।
उन्हें कहां मिलेंगे:
- Screen पर: ऐप जो भी message दिखाती है।
- Browser console: developer tools खोलें (F12, या right-click → Inspect) और Console tab में लाल lines देखें।
- Network tab: developer tools में असफल request खोजें और उसका URL और status code नोट करें (जैसे
POST /api/checkout → 500)। - Server logs, अगर आपकी पहुंच है।
TypeError: Cannot read properties of undefined (reading 'percent') at checkout.ts:48 जैसी एक पंक्ति अक्सर सीधे समस्या की ओर इशारा करती है।
चरण 6: संदर्भ जोड़ें
- कहां: पेज URL, environment (preview, staging या live)।
- कौन: कौन सा user या भूमिका — admin, सदस्य, logged out।
- Device और browser: “iPhone पर Safari” बनाम “Windows पर Chrome” मायने रख सकता है।
- डेटा: रिकॉर्ड के बारे में कुछ भी असामान्य — बहुत लंबा text, विशेष अक्षर, बड़ी संख्या में आइटम।
- कब शुरू हुआ: “कल के discount codes में बदलाव के बाद” सोने जैसा है।
- कितनी बार: हर बार, या दस में से एक बार।
चरण 7: दिखाएं
समस्या पर घेरा लगा screenshot, या एक छोटी screen recording, अस्पष्टता हटा देता है — खासकर layout के बगों में। अगर आपका AI tool images स्वीकार करता है, तो एक संलग्न करें। कुछ भी निजी हटा दें, जिसमें keys और दूसरे लोगों का डेटा शामिल है।
AI builder के लिए बग रिपोर्ट लिखना
वही संरचना एक prompt के रूप में भी काम करती है। दो जोड़ें तो मदद मिलती है:
- बताएं कि क्या नहीं बदलना चाहिए, ताकि fix से कोई नई समस्या न आए।
- Fix की जांच करने को कहें, सिर्फ़ लिखने को नहीं।
Customer के रूप में लॉग इन, कार्ट में “Starter kit” और
WELCOME10code लागू होने पर Checkout पर click करने से कुछ नहीं होता। अपेक्षित: 10% छूट के साथ Checkout पेज खुले। असली: थोड़ी देर का spinner, फिर कुछ नहीं। Network tab दिखाता है किPOST /api/checkoutने 500 लौटाया। बिना code के checkout काम करता है। कारण खोजो और fix करो, बिना उन orders के लिए कीमत गणना बदले जिनमें कोई code नहीं है। फिर percentage code, fixed-amount code और बिना code के checkout की जांच करो।
अगर आप कारण के बारे में पक्के नहीं हैं, तो पहले निदान मांगें:
अभी code मत बदलो। इस रिपोर्ट के आधार पर, संभावित कारण क्या हैं, और हर एक की पुष्टि कैसे होगी?
आम गलतियाँ
- “यह टूटा है।” कोई steps नहीं, कोई अपेक्षित नतीजा नहीं, कार्रवाई करने लायक कुछ नहीं।
- एक रिपोर्ट में कई बग। कुछ ठीक होते हैं, कुछ खो जाते हैं।
- Paraphrase किए गए errors। “कोई undefined चीज़” उपयोगी हिस्से को छिपा देती है।
- User या भूमिका छोड़ना। कई बग सिर्फ़ admins पर, या सिर्फ़ नए users पर होते हैं।
- सिर्फ़ वह fix बताना जो आप चाहते हैं (“एक null check जोड़ो”), समस्या की जगह।
- Screenshots या logs में secrets साझा करना।
चेकलिस्ट
- मैंने बग दोबारा पैदा किया और सबसे छोटे steps खोजे।
- शीर्षक बताता है कि क्या गलत है और कहां।
- Steps क्रम से और शाब्दिक हैं।
- अपेक्षित और असली, दोनों लिखे हैं।
- Error messages शब्दशः कॉपी किए गए हैं, असफल request और status code के साथ।
- पेज, environment, user, device और browser शामिल हैं।
- लिखा है कि यह कितनी बार होता है और कब शुरू हुआ।
- Screenshot या recording संलग्न है, निजी डेटा हटाकर।
- एक रिपोर्ट में एक बग।
Mythex के agent को बग रिपोर्ट करना
Mythex प्रोजेक्ट में, रिपोर्ट ही prompt है। कुछ सुविधाएं मदद करती हैं:
- Screenshot संलग्न करें preview या error स्क्रीन का — हर संदेश में 5 फ़ाइलों तक।
/fixagent को बग ठीक करने पर केंद्रित करता है; Plan mode उसे संपादन से पहले जांच करने देता है।/testagent से preview में ही flows दोबारा चलवाता है और उसने जो देखा उसकी रिपोर्ट मांगता है।- Revert to this point उस fix को उलटता है जिसने चीज़ें और बिगाड़ दीं।
Docs का prompts से debugging पेज वही steps / अपेक्षित / असली संरचना इस्तेमाल करता है। उसके आसपास के fix-और-जांच चक्र के लिए, देखें AI से बनी ऐप को बार-बार कैसे सुधारें।
सवाल
बग रिपोर्ट में क्या होना चाहिए?
एक विशिष्ट शीर्षक, समस्या दोबारा पैदा करने के सटीक steps, आपने क्या अपेक्षा की थी, क्या असल में हुआ, error message शब्दशः, कहां हुआ (पेज, browser, device, user), और अगर मदद करे तो screenshot या recording।
AI app builder के लिए बग रिपोर्ट कैसे लिखूं?
वही संरचना इस्तेमाल करें जो developer के लिए है: steps, अपेक्षित, असली नतीजा और सटीक error। यह भी लिखें कि क्या नहीं बदलना चाहिए, और उसे fix करने के बाद उसकी जांच करने को कहें। “यह टूटा है” जैसे धुंधले prompts अंदाज़ों की ओर ले जाते हैं।
अगर मैं बग दोबारा नहीं पैदा कर सकूं तो क्या करूं?
फिर भी रिपोर्ट करें, पर यह साफ़ लिखें। आप क्या कर रहे थे, कब हुआ, user account, और जो error दिखा वह लिखें। लिखें कि यह कितनी बार होता है, जैसे दस में से एक बार, क्योंकि कभी-कभी होने वाले बग समय या डेटा की समस्या की ओर इशारा करते हैं।
क्या मैं एक रिपोर्ट में कई बग डाल सकता हूँ?
नहीं। हर रिपोर्ट में एक बग, ताकि हर एक को अलग से ठीक, जांचा और बंद किया जा सके। अगर आपको लगता है कि दो समस्याएं आपस में जुड़ी हैं, तो हर रिपोर्ट में यह लिखें।