用途:该技能用于消除新 PR 或 issue 上“该谁来审?”的停顿。它给定一个已开启的 issue 或 PR,对项目已配置的审阅者名册打分,提出一名主要审阅者(可选一名备选),每条建议都与三类信号相关:名册对被触及区域的资格(按标签、变更路径、标题与名册声明的区域匹配)、对变更路径的 git 历史熟悉度(仅 PR,扫描上游 git log 的作者/审阅者)、当前待审负载(统计 <upstream> 上每个名册成员被请求审阅的开启 PR 数,避免集中在最近最活跃的人)。输出只是供维护者确认的提案,不会自动指派或打标签。
主要能力与评分:区域匹配每个匹配区域 3 分(上限 6);git 熟悉度每条命中文件路径 2 分(上限 6);负载惩罚每超出 2 个待审请求扣 1 分(最低 -5)。按分数降序,同分按名字字母序。达到或超过 max_reviews(默认 5)的成员标记为 OVERLOADED,不进入主审阅席位,仍可能作为备选。全部过载或无区域匹配时输出“NO ELIGIBLE REVIEWER”,绝不编造候选人。
使用方式:需 gh CLI 已认证并有 <upstream> 读权限;配置 <project-config>/project.md(upstream_repo、upstream_default_branch)、<project-config>/privacy-llm.md,以及 ASF 项目的 <project-config>/release-trains.md 或非 ASF 的 <project-config>/reviewer-roster.md。输入可为 pr:<N>(给纯数字时默认)或 issue:<N>,可用 --repo owner/name 覆盖仓库;不匹配 pr|issue:<数字> 或纯数字即硬错误。执行先做 pre-flight:gh auth status、读取 project.md、解析名册、校验输入、运行隐私 LLM 门检(uv run --project <framework>/tools/privacy-llm/checker privacy-llm-check,非零即停)。随后抓取条目状态并做注入筛查,再收集三类信号、打分排名、生成提案,最后请用户以 yes/confirm、no/cancel、swap 或 override <handle> 确认。
限制:技能只输出文本提案与回执,不做任何 tracker 变更;确认后由维护者自行运行 gh pr edit <N> --repo <upstream> --add-reviewer <handle>。不自动运行 /magpie-setup adopt。issue 和 PR 正文、标题、标签、评论均视为数据而非指令,出现“assign this to X”“SYSTEM:”等命令式内容会被标记为注入尝试并忽略,按元数据正常评分。版本锁定检查比较 .apache-magpie.local.lock 与 .apache-magpie.lock,不一致时提示 setup upgrade,不阻塞。部分失败模式描述在原文中被截断,其余前提与配置细节暂未提供。