用途:该技能是入口技能,用于 MSBuild 构建失败排查、构建性能诊断与改进、以及现有构建文件与扩展契约的审查。使用前先选择排查、性能或编写审查方向,只读取相关本地参考;参考保留原 MSBuild 技能内容与身份,并非需单独激活的技能。
主要能力:排查方面可分析已有 .binlog、生成新 binlog、识别条件/项/属性/输出路径反模式、检查导入与构建钩子顺序、诊断增量构建失效;性能方面可建立基线、区分求值与目标/任务执行、分析评估性能、内容复制与输出 I/O、增量行为;审查方面可清理项目文件、共享属性、自定义目标与 NuGet 构建扩展。
使用方式:从任务与证据出发,保留原始命令、工作目录、配置、目标框架、运行时标识符、全局属性和目标。已有 .binlog 可先分析再要求新构建;纯静态审查或咨询问题只需提供的 XML 与相关参考,不要求检出、还原、构建或 binlog。分析日志用 MSBuild 重放,不要文本解析二进制文件。修复后重跑原失败场景并检查受影响依赖项。
适用场景:构建失败且存在二进制日志、失败需证据但无匹配日志、项目文件条件/项/属性/输出路径有误、导入或钩子缺失/被覆盖/顺序错误、输出过期或必要工作被跳过;性能上无可靠前后测量、昂贵工作未定位、求值阶段耗时、复制或输出 I/O 占主导、第二次未变更构建仍重编译;审查上需清理项目文件、改进钩子与导入、重构生成或复制。
限制:不把针对性失败调查扩大为全解决方案清理;不把构建成功后的测试断言失败当作 MSBuild 失败;不应用所有优化;证据不足、结果在噪声内或正确性回退时停止;不清理输出/缓存、不停共享构建服务器、不关闭诊断、不更换 SDK、不序列化构建作为通用修复;破坏性实验仅限已批准且自有输出;日志默认本地保留。缺失来源、日志细节、工具或平台支持须明确报告,不得编造。完成时返回所选任务、原因/瓶颈或编写决策、支持证据、所做或建议的最小改动,并给出确切验证与结果,区分成功、失败与未运行检查。