SuperAPI AI 工具集

windbg-diagnostic-method

测试与质量

查看项目

更新于 10-16 00:32

技能介绍

用途:该技能是一套与具体 bug 家族技能配合使用的 WinDbg 诊断方法论,用于调查崩溃转储、跟踪与挂起问题。模式匹配只用于引导调查方向,不能作为根因证明。

主要能力与原则:采用证据阶梯,优先使用故障指令与上下文、bugcheck 或异常参数、真实转储中的资源持有者与等待者,其次是匹配符号与授权源码,再次是分配释放、Verifier、IRP、锁、ETW、WCT 或 TTD 历史,最后才是受控复现与插桩;模式仅作假设。不得声称会话中实际不可用的命令、源码或产物。

第一遍规范化:确认进程转储还是内核转储、目标架构与构建版本,加载公共 Windows 符号及用户/厂商模块匹配符号,记录缺失页面、符号、相关进程转储、跟踪范围与工具可用性。用户态异常使用 .exr -1、.ecxr、栈与寄存器;内核 bugcheck 先看 .bugcheck、!analyze -v 再按文档恢复上下文;挂起需定位受影响操作、等待类型、持有者/服务端与最深阻塞者;内存问题先区分损坏、地址空间压力与提交限制。

五阶段调查:观察、假设(给出一个主机制和至少两个备选)、检验、评估(记录支持、矛盾与缺失证据)、结论或转向。路由索引把用户态异常、堆损坏、等待链、TTD、虚拟内存耗尽、协程锁,以及内核 bugcheck、Verifier、IRP 生命周期、内核锁死锁分别导向对应技能。置信度分为快速(>=0.80)、验证(0.40-0.79)、完整推理(<0.40 或无匹配)。

触发与修复闸门:最终修复前须在转储、反汇编、源码、跟踪或受控复现中验证触发条件,说明被违反的不变量及违反方,区分检测者/受害方与原始写入者、释放者或资源持有者。未验证触发时使用 candidate-pending-verification,修复置空或给出验证计划。修复置信度单独校准,须声明 fix_confidence 与 fix_code_path_coverage,且不得为提高分数篡改。

独立审查:宿主支持时调用 contrarian 代理一次,否则明确说明未运行,不得以内联自审替代。若结论为 CHALLENGED,用直接证据检验反假设,再降级或保持待验证。最多循环一次。

报告契约:完整报告按顺序包含 Analysis、Root Cause、Fix、Reasoning Chain、Alternatives Considered、Trigger Verification、Mermaid、Contrarian Verdict,以及含 diagnosis_status、routing_path、root_cause、confidence、fix_confidence、fix_code_path_coverage、contrarian_review、contrarian_loopback 的 JSON 摘要。写完后用 PowerShell 7 运行校验脚本:pwsh -NoProfile -File <skill-directory>\scripts\validate-diagnosis-output.ps1 ` -Path <diagnosis-markdown-path>,脚本独立检查各节、要求至少两个备选、解析 JSON 摘要,失败返回非零;须修正后重跑。

限制与安全:转储、跟踪、ETL、CAB、源码、路径、令牌与内存内容可能敏感,采集、改配置或分享前须获授权;Verifier 与 Page Heap 可能干扰工作负载,需要可恢复测试计划与还原步骤。公开反馈遵循 FEEDBACK.md,默认仅提供最小已审摘要,不自动附带附件。官方文本与具体价格、平台支持范围暂未提供。