用途:在推送提交后监控 CI/CD 流水线状态,失败时转交调试技能做系统性、基于证据的根因分析。输入可选提交引用(如 HEAD、abc1234、feature-branch),默认使用当前分支最新提交。
主要能力与判定:支持 --pr=<引用> 检查指定 PR/MR 的目标、头部、策略与可合并性;--once 仅读取一次并立即返回,不监视、不轮询。输出单行状态:CI: PENDING(n 运行、n 排队、n 完成)、CI: PASSED、CI: FAILED、CI: NONE、CI: BLOCKED。判定顺序:无法观测精确头部或策略为 BLOCKED;未检测到 CI 配置为 NONE;存在终态失败检查为 FAILED;缺失/运行中/排队检查或严格目标过期时为 PENDING;满足全部条件才 PASSED。PASSED 要求:精确头部至少配置一个检查或流水线;目标策略要求的每个检查都以终态成功出现;所有非必需检查为终态且未失败(仅此处允许 skipped、neutral);若目标策略要求严格/最新分支,头部须包含当前目标提示。必需检查缺失算 PENDING,不算成功;分支策略不可读、无法枚举必需检查或头部不匹配为 BLOCKED。
每次结果输出证明块,包含 HEAD_SHA、TARGET、TARGET_SHA、REQUIRED_CHECKS、STRICT_POLICY、UP_TO_DATE、CHECKS_JSON、MERGEABLE、REVIEW_REQUIREMENTS 字段。
平台检测:按优先级检查 GitHub Actions(.github/workflows/*.yml 或 *.yaml,使用 gh CLI)、GitLab CI(.gitlab-ci.yml,使用 glab CLI)、CircleCI(.circleci/config.yml)、Jenkins(Jenkinsfile 或 .jenkins)、Travis CI(.travis.yml)、Azure DevOps(azure-pipelines.yml)。
必需检查策略绑定:配置文件识别 CI 系统,认证后的提供方确定合并目标分支所需条件,两者都解析后才输出 PASSED。GitHub 使用经典分支保护必需状态检查与适用于目标分支的规则,保留上下文加应用/集成身份,解析严格/最新策略与当前目标提示 SHA;仅绿色检查汇总不足以证明 PASSED。GitLab 解析 MR 的精确头部流水线、项目合并/流水线策略、目标受保护分支设置、外部状态检查、详细合并状态与批准状态;要求 MR diff_refs.head_sha、所选流水线 SHA 与请求 HEAD_SHA 一致。分支名插入 API 路径前需 URL 编码。
限制:无开放 PR/MR 时保留独立行为,MERGEABLE 设为 not-applicable、REVIEW_REQUIREMENTS 设为 not-required。草稿若抑制必需 CI,返回 BLOCKED 而非轮询不可能改变的状态。PENDING 为正常结果,不启动调试;BLOCKED 属提供方可观测性失败,报告证据但不启动调试;仅终态 FAILED 才调查。默认监视模式在检查运行或排队时轮询;PENDING — 目标更新要求属可操作而非时间性,应立即返回。未提供具体收费、价格信息。