Skip to content

docs(review-single-pr): require Starry app QEMU validation - #1079

Merged
ZR233 merged 1 commit into
devfrom
docs/review-single-pr-starry-qemu-validation
Jun 2, 2026
Merged

docs(review-single-pr): require Starry app QEMU validation#1079
ZR233 merged 1 commit into
devfrom
docs/review-single-pr-starry-qemu-validation

Conversation

@ZR233

@ZR233 ZR233 commented Jun 2, 2026

Copy link
Copy Markdown
Member

问题

在审查新增 Starry app / QEMU 测试的 PR 时,仅检查 TOML、--list 发现测试用例,或引用旧 head 的运行结果,无法证明当前 PR head 中 app 能按说明实际跑通。多架构 qemu-*.toml 也可能出现只有部分架构失败、但审查流程没有及时阻塞的问题。

同时,审查这类 PR 时需要明确检查是否通过移除 normal 用例、缩窄架构、放宽 success_regex / fail_regex、把失败改成跳过等方式削弱现有 CI 覆盖。

修改

  • review-single-pr 技能中补充 Starry app / QEMU 用例的实际运行要求:新增或修改 app 导向的 QEMU case 时,需要运行 PR 声明的 app 命令或精确的 cargo xtask starry test qemu ... -c <case> 路径。
  • 对多架构新增用例,要求至少覆盖最可能失败或当前 CI 已失败的架构,并在报告中记录命令、架构、guest 内失败标记以及是否和远端 CI 一致。
  • 明确禁止把 --list、TOML 检查、脚本阅读或旧 head 结果当作 app 可运行的证明。
  • 补充 CI / normal-regression 覆盖弱化的阻塞规则,包括移除用例、缩窄架构、放宽正则、转换为 skip / timeout、修改 workflow path filter 或转移到 manual-only。
  • 记录当 GitHub 日志不可下载时的替代判定方式:使用 gh pr checksgh run view --json headSha,jobs 确认当前 head、失败 job 和失败 step。

方案逻辑

这些规则来自一次 Starry app QEMU 测试审查中的实际经验:测试能被发现并不代表 app 能在 guest 中完成流程;CI 日志不可用时,也仍然可以通过 checks 和 run job metadata 判断失败是否发生在当前 head、是否命中新加入的架构。将这些要求沉淀进技能,可以让后续单 PR 审查更稳定地阻塞不可复现的 app 支持和 CI 覆盖弱化。

验证

  • git diff --check -- .claude/skills/review-single-pr/SKILL.md
  • git diff --cached --check

本次只修改审查技能文档,不涉及 Rust crate 逻辑,因此未运行 cargo fmtcargo xtask clippy

@ZR233
ZR233 marked this pull request as ready for review June 2, 2026 01:59
@ZR233
ZR233 merged commit e5c6c57 into dev Jun 2, 2026
@ZR233
ZR233 deleted the docs/review-single-pr-starry-qemu-validation branch June 2, 2026 01:59

@mai-team-app mai-team-app Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

审查结论:APPROVE

变更概述

本 PR 向 review-single-pr 技能文档新增 12 行规则,涵盖三个主题:

  1. Starry app/QEMU 实际运行要求(Review Focus + Validation 小节):要求新增或修改 app 导向的 QEMU case 时,必须在当前 PR head 上实际运行 cargo xtask starry test qemu ... -c <case> 或文档声明的 app 命令,禁止仅依赖 --list、TOML 解析或旧 head 结果作为通过证据。
  2. CI/回归覆盖弱化阻塞(Review Focus + Blocking Findings 小节):明确把移除 normal 用例、缩窄架构、放宽 success/fail regex、将失败转为 skip/timeout、修改 workflow path filter 或转移到 manual-only 等行为列为阻塞条件。
  3. GitHub 日志不可用时的替代判定(Validation 小节):当日志下载失败或为空时,应通过 gh pr checksgh run view --json headSha,jobs 确认当前 head 和失败 job。

实现逻辑

所有新增内容均插入在现有文档的逻辑位置(Review Focus 的 app-support 段落之后、Blocking Findings 列表中),与已有规则风格一致、不重叠。每条新增规则都来自实际审查经验,填补了现有技能文档中「发现 ≠ 可运行」和「CI 覆盖弱化未被阻塞」两个关键空白。

验证

  • git diff --check 通过,无空白/格式问题。
  • 仅修改 .md 技能文档,不涉及 Rust 代码,PR body 声明的验证方式(git diff --checkgit diff --cached --check)合理且已本地复现通过。
  • cargo fmt / cargo clippy / 测试运行需求。

CI 状态

PR 已合并(2026-06-02T01:59:38Z),CI 检查在合并前通过。当前无失败检查。

重复/重叠分析

  • 检查了 origin/dev.claude/skills/review-single-pr/SKILL.md 的历史提交:最近一次修改是 #858(conflict handling workflow),与本 PR 不重叠。
  • 检查了 open PR 列表:#1078(feat(axbuild): support Starry QEMU apps)是受本规则影响的 app PR,属于互补关系(#1078 添加 app 功能,#1079 添加审查该功能的规则),非重复或冲突。#1076(self-compile)与本 PR 无关。
  • 无其他文档 PR 修改同一文件。

未解决的审查会话

无先前审查评论或未解决会话。

总结

PR 内容准确、结构清晰、填补了实际审查流程中的关键空白,无阻塞问题。已合并的变更值得保留。

Powered by mimo-v2.5-pro

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant