向AI报告好bug与向人类报告好bug相同:给它足够的context来在脑海中重现问题,并消除噪音。AI只能对你粘贴的内容进行推理——模糊的描述会产生模糊的猜测。
向AI报告好bug与向人类报告好bug相同:给它足够的context来在脑海中重现问题,并消除噪音。AI只能对你粘贴的内容进行推理——模糊的描述会产生模糊的猜测。
无关的文件、整个config、secrets/API密钥,以及带有偏见的"我认为可能是X"的理论。给出事实,而不是推测。
❌ WEAK: "My login is broken, it throws an error. Why?"
→ no error text, no code, no repro → the AI can only guess
✅ STRONG:
Error (verbatim):
TypeError: Cannot read properties of undefined (reading 'id')
at getUser (auth.js:42)
Code (auth.js:40-43):
function getUser(token) {
const session = sessions.find(s => s.token === token); // returns undefined if not found
return session.user.id; // line 42: crashes when session is undefined
}
Expected: return null for an unknown token.
Actual: throws TypeError above.
Repro: call getUser('expired-token').
Env: Node 20, no framework.
使用强版本,AI可以直接指向缺失的undefined检查并提出一个guard,因为它需要的每个事实都在页面上。
AI助手无法访问你的运行系统 — 它仅从你提供的内容进行推理。弱报告迫使它同时猜测error、code和environment,而错误的猜测浪费了一个来回。强报告(确切的trace + 相关代码 + 预期/实际 + 复现 + 版本)将诊断转变为一个聚焦的任务,通常在第一次尝试时就能得到正确的修复。学习编写紧凑的bug报告也使你成为更好的debugger,因为它强制你在提问前隔离事实。