اچھی bug report کیسے لکھیں (AI یا developer کے لیے)
اچھی bug report کسی دوسرے شخص — developer یا AI — کو وہی مسئلہ دکھاتی ہے جو آپ نے دیکھا، بغیر آپ سے کوئی سوال پوچھے۔ اسے ایک مخصوص عنوان، مسئلہ دوبارہ پیدا کرنے کے درست مراحل، آپ کیا توقع کر رہے تھے، اصل میں کیا ہوا، کوئی error message لفظ بہ لفظ، اور یہ کہ کہاں ہوا چاہیے: کون سا صفحہ، براؤزر، ڈیوائس اور صارف۔ ایک رپورٹ میں ایک bug، اور اگر مدد کرے تو screenshot۔
زیادہ تر bugs کو سمجھنے میں ٹھیک کرنے سے زیادہ وقت لگتا ہے۔ ایک واضح رپورٹ سمجھنے والا حصہ ہٹا دیتی ہے۔ AI ٹولز کے ساتھ یہ اور بھی اہم ہے: AI آپ سے یہ نہیں پوچھ سکتا کہ “checkout عجیب ہے” سے آپ کا کیا مطلب تھا، اس لیے وہ اندازہ لگاتا ہے — اور غلط اندازہ کسی اور چیز کو بھی توڑ سکتا ہے۔
ٹیمپلیٹ
یہ نقل کریں اور بھریں:
عنوان: [کیا غلط ہے، کہاں] — مثلاً "Booking form rejects times after 6pm"
دوبارہ پیدا کرنے کے مراحل:
1. ...
2. ...
3. ...
متوقع: [کیا ہونا چاہیے]
اصل: [اس کی بجائے کیا ہوا]
Error message: [درست متن، اگر ہو]
کہاں: [صفحہ/URL، براؤزر، ڈیوائس، کس صارف کے طور پر لاگ ان]
کتنی بار: [ہر بار / کبھی کبھی / ایک بار]
Screenshot یا ریکارڈنگ: [منسلک]
باقی گائیڈ ہر حصے کی وضاحت کرتی ہے۔
مرحلہ 1: پہلے دوبارہ پیدا کریں
لکھنے سے پہلے کوشش کریں کہ bug دوبارہ ہو۔ آپ سیکھیں گے کہ کون سے مراحل اہم ہیں، اور کیا یہ ہر بار ہوتا ہے۔
- صاف حالت سے شروع کریں: ریفریش کریں، یا لاگ آؤٹ اور دوبارہ لاگ ان کریں۔
- ہر کلک اور ہر وہ چیز جو آپ نے ٹائپ کی نوٹ کریں۔
- وہ سب سے چھوٹا راستہ ڈھونڈیں جو اسے چلاتا ہے۔
- دوسرا براؤزر یا اکاؤنٹ آزمائیں۔ اگر یہ صرف ایک صارف کے ساتھ ہو تو یہ بڑا اشارہ ہے۔
اس پر مزید کے لیے دیکھیں AI سے بنی ایپ کو کیسے ڈیبگ کریں۔
مرحلہ 2: مخصوص عنوان لکھیں
عنوان بتائے کہ کیا غلط ہے اور کہاں، تاکہ فہرست میں سرسری نظر ڈالنے والا جان لے کہ یہ کون سا bug ہے۔
| کمزور | مضبوط |
|---|---|
| Checkout broken | کارٹ میں ڈسکاؤنٹ کوڈ ہو تو Checkout بٹن کچھ نہیں کرتا |
| Mobile issue | 400px سے چھوٹے فون پر قیمت کے کارڈز سکرین سے باہر نکل جاتے ہیں |
| Error on save | نام میں ایموجی والا پروفائل محفوظ کرنے پر “500 Internal Server Error” آتا ہے |
مرحلہ 3: درست مراحل لکھیں
انہیں نمبر دیں۔ لفظی رہیں: کون سا صفحہ، کون سا بٹن، آپ نے کیا ٹائپ کیا۔
- بطور گاہک لاگ ان کریں (ٹیسٹ اکاؤنٹ: customer@example.com)۔
- “Starter kit” کارٹ میں شامل کریں۔
- ڈسکاؤنٹ کوڈ
WELCOME10درج کریں اور Apply پر کلک کریں۔ - Checkout پر کلک کریں۔
“کوڈ کے ساتھ checkout آزمائیں” ان تفصیلات کو چھوڑ دیتا ہے جو اکثر اہم ہوتی ہیں: کون سا صارف، کون سی پروڈکٹ، کون سا کوڈ، اور کیا وہ پہلے لاگو ہوا۔
مرحلہ 4: متوقع بمقابلہ اصل
یہ رپورٹ کا مرکز ہے۔ دونوں لکھیں، کیونکہ فرق ہی bug ہے۔
- متوقع: Checkout صفحہ کھلے اور کل رقم میں 10% ڈسکاؤنٹ دکھائے۔
- اصل: بٹن ایک سیکنڈ کے لیے سپنر دکھاتا ہے، پھر کچھ نہیں ہوتا۔ ڈسکاؤنٹ کوڈ کے بغیر checkout کام کرتا ہے۔
“متوقع” کے بغیر پڑھنے والے کو شاید معلوم نہ ہو کہ رویہ غلط ہے۔ “اصل” کے بغیر انہیں نہیں پتا کہ کیا تلاش کرنا ہے۔
مرحلہ 5: error messages کو درست نقل کریں
Error messages سب سے تیز راستہ ہیں وجہ تک پہنچنے کا۔ انہیں متن کے طور پر لفظ بہ لفظ نقل کریں — خلاصہ نہ کریں۔
انہیں کہاں ڈھونڈیں:
- اسکرین پر: ایپ جو بھی پیغام دکھائے۔
- براؤزر console: developer tools کھولیں (F12، یا دائیں کلک → Inspect) اور Console ٹیب میں سرخ لائنیں دیکھیں۔
- Network ٹیب: developer tools میں ناکام درخواست ڈھونڈیں اور اس کا URL اور status code نوٹ کریں (مثلاً
POST /api/checkout → 500)۔ - سرور logs، اگر آپ کو رسائی ہو۔
ایک لائن جیسے TypeError: Cannot read properties of undefined (reading 'percent') at checkout.ts:48 اکثر سیدھا مسئلے کی طرف اشارہ کرتی ہے۔
مرحلہ 6: سیاق شامل کریں
- کہاں: صفحے کا URL، ماحول (preview، staging یا لائیو)۔
- کون: کون سا صارف یا کردار — ایڈمن، ممبر، لاگ آؤٹ۔
- ڈیوائس اور براؤزر: “iPhone پر Safari” بمقابلہ “Windows پر Chrome” اہم ہو سکتا ہے۔
- ڈیٹا: ریکارڈ کے بارے میں کوئی غیر معمولی بات — بہت لمبا متن، خاص حروف، بڑی تعداد میں آئٹمز۔
- کب شروع ہوا: “کل ڈسکاؤنٹ کوڈز میں تبدیلی کے بعد” بہت قیمتی ہے۔
- کتنی بار: ہر بار، یا دس میں سے ایک بار۔
مرحلہ 7: دکھائیں
وہ screenshot جس میں مسئلہ گول دائرے میں ہو، یا ایک مختصر اسکرین ریکارڈنگ، ابہام ختم کر دیتی ہے — خاص طور پر layout کے bugs کے لیے۔ اگر آپ کا AI ٹول تصاویر قبول کرتا ہے تو ایک منسلک کریں۔ کوئی نجی چیز کاٹ دیں، بشمول keys اور دوسروں کا ڈیٹا۔
AI بلڈر کے لیے bug رپورٹس لکھنا
وہی ڈھانچہ بطور prompt کام کرتا ہے۔ دو اضافے مدد کرتے ہیں:
- بتائیں کہ کیا نہیں بدلنا چاہیے، تاکہ فکس سے کوئی نیا مسئلہ نہ پیدا ہو۔
- فکس کی تصدیق کرنے کو کہیں، صرف لکھنے کو نہیں۔
بطور گاہک لاگ ان، کارٹ میں “Starter kit” اور لاگو کیا ہوا کوڈ
WELCOME10، پھر Checkout پر کلک کرنے سے کچھ نہیں ہوتا۔ متوقع: Checkout صفحہ کل رقم پر 10% چھوٹ کے ساتھ کھلے۔ اصل: ایک مختصر سپنر، پھر کچھ نہیں۔ Network ٹیب دکھاتا ہے کہPOST /api/checkoutنے 500 واپس کیا۔ بغیر کوڈ کے checkout کام کرتا ہے۔ وجہ تلاش کریں اور بغیر کوڈ کے آرڈرز کے لیے قیمتوں کے حساب کو بدلے بغیر فکس کریں۔ پھر فی صد والے کوڈ، مقدار والے کوڈ اور بغیر کوڈ کے checkout کی جانچ کریں۔
اگر آپ کو وجہ کا یقین نہ ہو تو پہلے تشخیص مانگیں:
ابھی کوڈ نہ بدلیں۔ اس رپورٹ کی بنیاد پر، ممکنہ وجوہات کیا ہیں، اور ہر ایک کی تصدیق کیا کرے گا؟
عام غلطیاں
- “یہ ٹوٹا ہوا ہے۔” کوئی مراحل نہیں، کوئی متوقع نتیجہ نہیں، کچھ بھی قابل عمل نہیں۔
- ایک رپورٹ میں کئی bugs۔ کچھ ٹھیک ہو جاتے ہیں، کچھ گم ہو جاتے ہیں۔
- error کو اپنے الفاظ میں لکھنا۔ “کوئی undefined چیز” مفید حصہ چھپا دیتی ہے۔
- صارف یا کردار کا ذکر نہ کرنا۔ بہت سے bugs صرف ایڈمنز پر، یا صرف نئے صارفین پر ہوتے ہیں۔
- صرف وہ فکس بیان کرنا جو آپ چاہتے ہیں (“null چیک شامل کریں”) بجائے اس مسئلے کے۔
- screenshots یا لاگز میں secrets شیئر کرنا۔
چیک لسٹ
- میں نے bug دوبارہ پیدا کیا اور سب سے چھوٹے مراحل ڈھونڈے۔
- عنوان بتاتا ہے کہ کیا غلط ہے اور کہاں۔
- مراحل نمبر دار اور لفظی ہیں۔
- متوقع اور اصل دونوں لکھے ہیں۔
- error messages لفظ بہ لفظ نقل ہیں، ساتھ میں ناکام درخواست اور status code۔
- صفحہ، ماحول، صارف، ڈیوائس اور براؤزر شامل ہیں۔
- میں نے لکھا کہ یہ کتنی بار ہوتا ہے اور کب شروع ہوا۔
- screenshot یا ریکارڈنگ منسلک ہے، نجی ڈیٹا ہٹا کر۔
- ایک رپورٹ میں ایک bug۔
Mythex کے agent کو bugs کی رپورٹ
Mythex پروجیکٹ میں رپورٹ ہی prompt ہے۔ کچھ سہولیات مدد کرتی ہیں:
- preview یا error اسکرین کا screenshot منسلک کریں — ایک پیغام میں 5 فائلوں تک۔
/fixagent کو bug ٹھیک کرنے پر مرکوز کرتا ہے؛ Plan موڈ اسے تدوین سے پہلے تحقیق کرنے دیتا ہے۔/testagent سے کہتا ہے کہ preview میں خود flows دوبارہ پیدا کرے اور جو دیکھے وہ رپورٹ کرے۔- Revert to this point ایسی فکس واپس کرتا ہے جس نے حالات بدتر کیے۔
docs کے prompts کے ساتھ ڈیبگنگ صفحے میں وہی مراحل، متوقع اور اصل کا ڈھانچہ ہے۔ اس کے گرد فکس اور جانچ کے چکر کے لیے دیکھیں AI سے بنی ایپ کو بار بار بہتر کیسے کریں۔
سوالات
bug report میں کیا شامل ہونا چاہیے؟
ایک مخصوص عنوان، مسئلہ دوبارہ پیدا کرنے کے درست مراحل، آپ کیا توقع کر رہے تھے، اصل میں کیا ہوا، کوئی error message لفظ بہ لفظ، کہاں ہوا (صفحہ، براؤزر، ڈیوائس، صارف)، اور اگر مدد کرے تو screenshot یا ریکارڈنگ۔
AI ایپ بلڈر کے لیے bug report کیسے لکھوں؟
وہی ڈھانچہ استعمال کریں جو developer کے لیے ہوتا ہے: مراحل، متوقع، اصل اور درست error۔ ساتھ میں لکھیں کہ کیا نہیں بدلنا چاہیے، اور اس سے فکس کرنے کے بعد اس کی تصدیق کرنے کو کہیں۔ “یہ ٹوٹا ہوا ہے” جیسے مبہم prompts اندازوں کا باعث بنتے ہیں۔
اگر bug دوبارہ پیدا نہ ہو تو کیا کریں؟
پھر بھی رپورٹ کریں، مگر یہ لکھیں۔ آپ کیا کر رہے تھے، کب ہوا، کون سا صارف اکاؤنٹ، اور کوئی error جو آپ نے دیکھا، سب شامل کریں۔ لکھیں کہ یہ کتنی بار ہوتا ہے، جیسے دس میں سے ایک بار، کیونکہ کبھی کبھار ہونے والے bugs اکثر وقت یا ڈیٹا کے مسئلے کی طرف اشارہ کرتے ہیں۔
کیا ایک رپورٹ میں کئی bugs رکھنے چاہئیں؟
نہیں۔ ایک رپورٹ میں ایک bug، تاکہ ہر ایک الگ سے ٹھیک، جانچا اور بند ہو سکے۔ اگر آپ کو لگتا ہے کہ دو مسئلے آپس میں جڑے ہیں تو ہر رپورٹ میں یہ لکھ دیں۔