用途:当 GitHub PR 上的 azure-pipelines 检查(或仓库对应的 AzDO 检查)转为失败时,该技能读取 AzDO 构建已产出的 binlog 来分析失败原因,而不是在本地重新跑构建,从而让分析成本低到可以为每个失败 PR 启用。
主要能力:按七步流程执行——触发校验、从 AzDO 下载 binlog 产物、用 binlog MCP 服务器(Microsoft.AITools.BinlogMcp)导出构建概览/错误/警告等 JSON,必要时下钻到根因诊断、属性取值追踪、结构化搜索、任务详情等;再按常见 .NET/MSBuild 失败模式将错误归入根因聚类,在 PR 上发布一条带标记的摘要评论,并可选地附加最多 10 条内联建议。
使用方式:需要环境变量 AZDO_ORG、AZDO_PROJECT、AZDO_BUILD_ID、PR_NUMBER、PR_HEAD_SHA、GITHUB_WORKSPACE;依赖 curl、jq、unzip、gh CLI 及 binlog MCP 服务器。公开项目可匿名读取,内部项目需联邦身份或 azureauth ado token。下载产物时优先匹配 PostBuildLogs_* 或 Logs_Build_* 命名的产物,取最新修改的 *.binlog。
适用场景:Azure Pipelines 发布 binlog 产物、希望得到按根因聚类的结构化 PR 评论而非原始日志链接的场景。
限制:仅限 AzDO 检查且有 binlog 产物的情况;纯 GitHub Actions 仓库、不发布 binlog 的流水线不适用;跨构建的流水线健康分析或非构建环节(测试、Helix)失败需用其他技能。技能仅允许评论,禁止 approve 或 request changes(审批与拦截为人工操作)。若概览返回 SUCCEEDED 但检查为失败,说明失败在 MSBuild 之后,不应编造根因;401/403 表示项目不可匿名读取;疑似 flake 应建议重跑而非改代码;不得在无正当理由时建议禁用分析器。