Skip to content

feat(pr-flow): add mob-code-review-only skill (review others' PRs, suggestions only)#171

Merged
howie merged 3 commits into
mainfrom
worktree-mob-code-review-only
Jun 24, 2026
Merged

feat(pr-flow): add mob-code-review-only skill (review others' PRs, suggestions only)#171
howie merged 3 commits into
mainfrom
worktree-mob-code-review-only

Conversation

@howie

@howie howie commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator

What

新增 /mob-code-review-only skill — mob review 別人的 PR、只給建議、不修改 code

複用 /pr-cycle-deep 的多模型 mob review 引擎(reviewer detection + R1 獨立 + R2 交叉 debate + aggregate),只改三件事:

Delta /pr-cycle-deep mob-code-review-only
目標 自己的 PR / 當前 branch 別人的 PRgh pr checkout
findings 處理 fix → commit → re-review 到 LGTM 只當建議交付,禁止 edit/commit/push
生命週期尾段 human → CI → merge → archive 止於 final.md + 貼留言,無 merge/archive

Deliverable 是貼回 PR 的彙整 review 留言(outward-facing,需使用者確認後才貼)。

Why

/pr-cycle-deep 是為「自己的 PR」設計,會動手修改。Review 同事 / 外部貢獻者的 PR 時,需要的是「只給建議、不碰對方 code」的變體。

Design decisions

  1. 引用而非複製引擎/pr-cycle-deep 為 engine owner,新 skill 引用其 R1/R2/aggregate scripts 與 prompts,避免 rule 11 dual-source drift(PR feat(sdd): add qa-test-designer subagent + methodology.md dual-track (Phase B) #112 教訓)。FAQ 已加 engine-missing gate。
  2. single-voice Critical 強制實證 — 在別人 PR 上貼錯誤 Critical 是公開誤指控,故「先 minimal repro 驗證再寫進報告」比 pr-cycle-deep 更嚴格。

Files

  • plugins/pr-flow/skills/mob-code-review-only/SKILL.md(know-type, scope: global)
  • plugins/pr-flow/commands/mob-code-review-only.md(slash command)
  • skills/mob-code-review-only → symlink(make install 全域安裝)
  • skills/README.md + plugins/pr-flow/README.md 索引

Test

  • make ci: 1090 passed, 4 deselected
  • pre-commit all-files: markdownlint / skill scope lint / skill bash lint / mypy / bandit 全通過

howie added 3 commits June 24, 2026 09:25
…ggestions only)

新增 /mob-code-review-only:複用 pr-cycle-deep 的多模型 mob review 引擎
(reviewer detection + R1 獨立 + R2 交叉 debate + aggregate),但鎖定**別人的 PR**,
產出彙整 review 報告並經確認後貼回 PR 作為建議——不修改 code、不 re-review loop、
不 merge / archive。

三個 delta(相對 pr-cycle-deep):
- 目標:gh pr checkout 取得他人 PR(codex/agy 需 working tree 程式碼脈絡)
- findings 一律當作給作者的建議,禁止 edit/commit/push
- 生命週期止於 final.md + 貼留言(無 fix/merge/archive)

設計:pr-cycle-deep 為 engine owner,新 skill 引用而非複製 R1/R2/aggregate
(避免 rule 11 dual-source drift);scope: global 僅 dispatch 外部 pr-review-toolkit
agent(lint 豁免)。

- plugins/pr-flow/skills/mob-code-review-only/SKILL.md(know-type)
- plugins/pr-flow/commands/mob-code-review-only.md(slash command)
- skills/mob-code-review-only symlink(make install 全域安裝)
- skills/README.md + plugins/pr-flow/README.md 索引

make ci: 1090 passed; markdownlint / skill scope+bash lint 全通過。
R1 code review flagged two real inconsistencies between the skill's
"suggestions only" promise and its actual behavior:

- [Important] Step 4 posted the engine's final.md verbatim, whose headers
  say "must fix" / "user requires all NITs cleaned up" — self-directed
  language that is presumptuous on a contributor's PR. Added Step 4a
  header-rewrite transform: derive review-comment.md from final.md with
  author-facing suggestion headers + a "these are suggestions" lead-in,
  and post review-comment.md instead of final.md.
- [NIT] setup-review-dir.sh used bare {{base_branch}}, which fails after
  gh pr checkout when the local base ref is stale/absent (the common case
  for reviewing someone else's PR). Made origin/{{base_branch}} the
  primary form; bare name is now the documented exception.

FAQ rows updated to match (origin/ default; review-comment.md path).
markdownlint + skill bash/scope lint pass.
@howie howie merged commit 1c6f55b into main Jun 24, 2026
2 checks passed
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