用途:为 posit-dev/positron 仓库创建或更新结构规范的 PR 正文,并动态获取最新 e2e 测试标签用于验证步骤。
适用时机:新建 PR 需要规范正文时;按正确格式更新已有 PR 正文时;需要当前 e2e 测试标签列表时;希望在开 PR 前做测试覆盖率检查(PETE)时。
前置条件:已安装并认证 GitHub CLI(gh);在 Positron 仓库中工作;可访问仓库的 test-tags.ts 文件。
主要流程:先收集上下文(issue 编号、PR 类型、变更摘要、是否需要截图、相关 PR),若有 issue 编号则用 gh issue view 获取详情;随后动态从 test/e2e/infra/test-runner/test-tags.ts 抓取测试标签,包括功能、平台、性能与特殊标签;再运行本地 PETE 预览评估测试覆盖,若判定为 Insufficient 会提示补充具体内容而非用通用验证步骤掩盖;最后按 PR 类型套用模板生成正文。
输出方式:复制到剪贴板(仅 Mac,使用 pbcopy)、用 gh pr edit 更新已有 PR、保存到文件或仅展示。辅助脚本 fetch-test-tags.sh 支持 markdown(默认)、json、list 三种输出格式,无需 TypeScript 编译即可解析并自动分类标签。
正文模板包含开头行(如 Fixes #issue)、摘要、发行说明(新功能/缺陷修复)、验证步骤。注意事项:CI 的 scripts/pr-tags-parse.sh 会用原始 grep 在整个正文中匹配 @:标签,反引号也无法阻止触发,因此字面 @:tag 只能出现在验证步骤中且仅限确实要运行的标签,其余位置用不带 @: 前缀的名称表述;PETE 仅为本地预览,正式结论需在 PR 上评论 /pete(或 /recheck-tests、/rePETE、/re-pete)由 CI 给出。具体价格、平台支持范围等资料暂未提供。