diff --git a/codex/skills/internal/code-next-developer-review/SKILL.md b/codex/skills/internal/code-next-developer-review/SKILL.md index c78fe3a..7824910 100644 --- a/codex/skills/internal/code-next-developer-review/SKILL.md +++ b/codex/skills/internal/code-next-developer-review/SKILL.md @@ -1,6 +1,6 @@ --- name: code-next-developer-review -description: 実装済みの差分、PR、コミット、指定ファイルを「次に開発する人が困らないか」という観点でレビューするときに使う。変更箇所の見つけやすさ、責務境界、命名、型・契約、テストの読みやすさ、前提知識の残し方、追加ケースの足しやすさ、ローカル検証のしやすさを確認したい場合に使う。欠陥、仕様違反、セキュリティ、データ破壊の検出を主目的にする場合は code-review を優先する。 +description: 実装済みの差分、PR、コミット、指定ファイルを「次に開発する人が困らないか」という観点でレビューするときに使う。実装者の前提や正常系中心の説明を鵜呑みにせず、後続開発で見落とされる失敗条件や迷いやすさについて敵対的検証を行い、変更箇所の見つけやすさ、責務境界、命名、型・契約、テストの読みやすさ、前提知識の残し方、追加ケースの足しやすさ、ローカル検証のしやすさを確認したい場合に使う。欠陥、仕様違反、セキュリティ、データ破壊の検出を主目的にする場合は code-review を優先する。 --- # Code Next Developer Review スキル @@ -23,6 +23,7 @@ description: 実装済みの差分、PR、コミット、指定ファイルを - 「今バグがあるか」より「次に触る人が迷うか」を優先する - 理想論ではなく、次の開発者が実際に詰まる場面を具体化する - 既存コード全体の問題ではなく、今回の変更で増えた迷いやすさを指摘する +- 実装者の説明やテスト結果を鵜呑みにせず、後続開発で前提が崩れる状況を想定して敵対的検証を行う - 欠陥や重大リスクを見つけた場合は、通常の `code-review` 観点として分けて書く ## 進め方 diff --git a/codex/skills/internal/code-next-developer-review/agents/openai.yaml b/codex/skills/internal/code-next-developer-review/agents/openai.yaml index 68c1683..d575774 100644 --- a/codex/skills/internal/code-next-developer-review/agents/openai.yaml +++ b/codex/skills/internal/code-next-developer-review/agents/openai.yaml @@ -1,4 +1,4 @@ interface: display_name: "code-next-developer-review" - short_description: "次に開発する人が困らないかをレビュー" - default_prompt: "Use $code-next-developer-review to review this diff from the perspective of the next developer who must understand and change it." + short_description: "次に開発する人が困らないかを敵対的検証" + default_prompt: "Use $code-next-developer-review to review this diff from the perspective of the next developer who must understand and change it. Do adversarial validation of assumptions that could fail during follow-up development." diff --git a/codex/skills/internal/code-next-developer-review/evals/evals.json b/codex/skills/internal/code-next-developer-review/evals/evals.json index f362b81..6696575 100644 --- a/codex/skills/internal/code-next-developer-review/evals/evals.json +++ b/codex/skills/internal/code-next-developer-review/evals/evals.json @@ -14,6 +14,13 @@ "expected_output": "code-next-developer-review が発火し、欠陥検出ではなく、責務境界、命名、型・契約、テストの読みやすさ、ローカル検証のしやすさを確認すること。", "files": [], "should_fire": true + }, + { + "id": 3, + "prompt": "次に開発する人の立場でレビューして。実装者の前提を鵜呑みにせず、後続開発で詰まる条件を敵対的検証して。", + "expected_output": "code-next-developer-review が発火し、後続開発で前提が崩れる状況について敵対的検証を行い、次の開発者が困る点、足りない手がかり、通常レビューへ回すべき即時リスクを分けて出すこと。", + "files": [], + "should_fire": true } ] } diff --git a/codex/skills/internal/code-quality-review/SKILL.md b/codex/skills/internal/code-quality-review/SKILL.md index 3d0a9a7..f7388d8 100644 --- a/codex/skills/internal/code-quality-review/SKILL.md +++ b/codex/skills/internal/code-quality-review/SKILL.md @@ -1,6 +1,6 @@ --- name: code-quality-review -description: 実装済みの差分、PR、コミット、指定ファイルを code quality report の観点でレビューし、保守性、設計健全性、責務分離、複雑度、テスト容易性、変更容易性、技術的負債を観点別に評価するときに使う。cyclomatic complexity、cognitive complexity、coverage、重複率、関数長、lint/static analysis などの定量シグナルがある場合は補助証拠として必ず取り込む。ユーザーが「quality report」「コード品質」「保守性レビュー」「複雑度」「技術的負債」「設計品質」「品質スコア」「quality gate」などを求めたら必ず使う。仕様違反、セキュリティ、データ破壊など即時欠陥の検出が主目的なら code-review を優先し、次の開発者の迷いやすさが主目的なら code-next-developer-review を優先する。 +description: 実装済みの差分、PR、コミット、指定ファイルを code quality report の観点でレビューし、実装者の前提や正常系中心の説明を鵜呑みにせず、将来の変更・テスト・運用で品質問題が表面化する条件について敵対的検証を行い、保守性、設計健全性、責務分離、複雑度、テスト容易性、変更容易性、技術的負債を観点別に評価するときに使う。cyclomatic complexity、cognitive complexity、coverage、重複率、関数長、lint/static analysis などの定量シグナルがある場合は補助証拠として必ず取り込む。ユーザーが「quality report」「コード品質」「保守性レビュー」「複雑度」「技術的負債」「設計品質」「品質スコア」「quality gate」などを求めたら必ず使う。仕様違反、セキュリティ、データ破壊など即時欠陥の検出が主目的なら code-review を優先し、次の開発者の迷いやすさが主目的なら code-next-developer-review を優先する。 --- # Code Quality Review スキル @@ -9,6 +9,12 @@ description: 実装済みの差分、PR、コミット、指定ファイルを c 通常のレビューが「壊れるか」を優先するのに対し、このレビューは「このコードは継続的に変更、テスト、理解、運用できる品質か」を評価する。 +## 基本姿勢 + +- 品質レビューは、実装者の説明やテスト結果が正しい前提であっても、将来の変更・テスト・運用で品質問題が表面化する条件について敵対的検証を行う +- metric や既存テストを鵜呑みにせず、保守性、変更容易性、テスト容易性、調査しやすさへの実際の影響で判断する +- 人格や意図ではなく、構造、責務、契約、依存、検証可能性、観測可能性を疑う + ## 目的 - コード品質を観点別に可視化する diff --git a/codex/skills/internal/code-quality-review/agents/openai.yaml b/codex/skills/internal/code-quality-review/agents/openai.yaml index a769119..77070b8 100644 --- a/codex/skills/internal/code-quality-review/agents/openai.yaml +++ b/codex/skills/internal/code-quality-review/agents/openai.yaml @@ -1,4 +1,4 @@ interface: display_name: "code-quality-review" - short_description: "定量シグナル込みの code quality report" - default_prompt: "Use $code-quality-review to review this diff as a code quality report, incorporating quantitative signals such as complexity, coverage, duplication, lint/static analysis when available, and focusing on maintainability, design health, testability, and technical debt." + short_description: "品質問題を敵対的検証する code quality report" + default_prompt: "Use $code-quality-review to review this diff as a code quality report, incorporating quantitative signals such as complexity, coverage, duplication, lint/static analysis when available, and doing adversarial validation of conditions where quality issues could surface in future changes, testing, or operations." diff --git a/codex/skills/internal/code-quality-review/evals/evals.json b/codex/skills/internal/code-quality-review/evals/evals.json index dafe4b4..1ebbf0c 100644 --- a/codex/skills/internal/code-quality-review/evals/evals.json +++ b/codex/skills/internal/code-quality-review/evals/evals.json @@ -21,6 +21,13 @@ "expected_output": "merge 前対応、follow-up、対応不要が分かれた Quality Gate と、設計品質・テスト品質・観測可能性・定量シグナルの scorecard が出ること。", "files": [], "should_fire": true + }, + { + "id": 4, + "prompt": "この差分を品質レビューして。metric や正常系テストを鵜呑みにせず、将来の変更や運用で品質問題が出る条件を敵対的検証して。", + "expected_output": "code-quality-review が発火し、将来の変更・テスト・運用で品質問題が表面化する条件について敵対的検証を行い、Quality Signals、Scorecard、Findings、Quality Gate を根拠付きで出すこと。", + "files": [], + "should_fire": true } ] } diff --git a/codex/skills/internal/code-review/SKILL.md b/codex/skills/internal/code-review/SKILL.md index 9e58114..d75684c 100644 --- a/codex/skills/internal/code-review/SKILL.md +++ b/codex/skills/internal/code-review/SKILL.md @@ -1,6 +1,6 @@ --- name: code-review -description: 実装済みの差分、PR、コミット、指定ファイルをレビューし、仕様違反、回帰、公開契約破壊、セキュリティ、データ整合性、並行性、検証不足などのリスクを重要度順に指摘するときに使う。実装方針の相談は code-refactor、コード変更の実装は code-general を優先する。 +description: 実装済みの差分、PR、コミット、指定ファイルをレビューし、実装者の前提や正常系中心の説明を鵜呑みにせず、見落とされた失敗条件を疑う基本姿勢で敵対的検証を行い、仕様違反、回帰、公開契約破壊、セキュリティ、データ整合性、並行性、検証不足などのリスクを重要度順に指摘するときに使う。実装方針の相談は code-refactor、コード変更の実装は code-general を優先する。 --- # Code Review スキル @@ -10,6 +10,12 @@ description: 実装済みの差分、PR、コミット、指定ファイルを これは実装方法のガイドではありません。 「どう直すか」ではなく **「何を疑い、何を優先して指摘するか」** を示します。 +## 基本姿勢 + +- レビューは、実装者の説明やテスト結果が正しい前提であっても、反例や失敗条件が残っている前提で敵対的検証を行う +- 正常系の意図ではなく、実際の diff、公開契約、既存呼び出し元、失敗時の振る舞いを起点に判断する +- 人格や意図ではなく、システムの前提、境界、契約、データ、権限、並行実行を疑う + ## 目的 - 実装された変更が仕様・制約を満たしていることを確認する diff --git a/codex/skills/internal/code-review/evals/evals.json b/codex/skills/internal/code-review/evals/evals.json index 368e7b6..056cf32 100644 --- a/codex/skills/internal/code-review/evals/evals.json +++ b/codex/skills/internal/code-review/evals/evals.json @@ -14,6 +14,13 @@ "expected_output": "実装ではなくレビューとして扱い、セキュリティ、認可、情報漏えい、並行性、冪等性、公開契約破壊を優先して確認すること。", "files": [], "should_fire": true + }, + { + "id": 3, + "prompt": "この PR をレビューして。正常系の説明を鵜呑みにせず、失敗条件や既存クライアント破壊を探して。", + "expected_output": "code-review が発火し、敵対的検証を行う基本姿勢で、diff を起点に入力、順序、権限、時刻、並行実行、外部依存失敗、古いクライアントや既存データの失敗条件を想定して High / Medium / Low の指摘と不足検証を出すこと。", + "files": [], + "should_fire": true } ] } diff --git a/codex/skills/internal/code-review/references/points.md b/codex/skills/internal/code-review/references/points.md index ee77955..0811cb5 100644 --- a/codex/skills/internal/code-review/references/points.md +++ b/codex/skills/internal/code-review/references/points.md @@ -72,4 +72,3 @@ - 命名が意味を正しく伝えているか - コメントが正確で最新か - 例外的な仕様や特別な理由が明示されているか - diff --git a/codex/skills/internal/role-reviewer/SKILL.md b/codex/skills/internal/role-reviewer/SKILL.md index 573f459..8c74dc2 100644 --- a/codex/skills/internal/role-reviewer/SKILL.md +++ b/codex/skills/internal/role-reviewer/SKILL.md @@ -1,6 +1,6 @@ --- name: role-reviewer -description: Reviewer として、実装済みの差分が仕様、スコープ、公開契約、品質要件を満たしているか検証するときに使う。リスク、回帰、境界条件、責務違反、検証不足を根拠付きで言語化し、必要に応じて code-review も併用する。 +description: Reviewer として、実装済みの差分が仕様、スコープ、公開契約、品質要件を満たしているか検証するときに使う。実装者の前提や正常系中心の説明を鵜呑みにせず、見落とされた失敗条件を疑う基本姿勢で敵対的検証を行い、リスク、回帰、境界条件、責務違反、検証不足を根拠付きで言語化し、必要に応じて code-review も併用する。 --- # Reviewer スキル @@ -20,6 +20,8 @@ description: Reviewer として、実装済みの差分が仕様、スコープ - Reviewer の役割は **安心してマージできる状態かを判断すること** - レビューは「正解探し」ではなく **リスク探索** - 書かれていないこと・考慮されていないことに価値がある +- 実装者の説明、テスト結果、命名が示す「期待される使われ方」を鵜呑みにせず、反例や失敗条件が残っている前提で敵対的検証を行う +- 人格や意図ではなく、システムの前提、境界、契約、失敗時の振る舞いを疑う --- diff --git a/codex/skills/internal/role-reviewer/evals/evals.json b/codex/skills/internal/role-reviewer/evals/evals.json index 6fb7092..85e26e5 100644 --- a/codex/skills/internal/role-reviewer/evals/evals.json +++ b/codex/skills/internal/role-reviewer/evals/evals.json @@ -14,6 +14,13 @@ "expected_output": "Reviewer ロールとして扱い、安心してマージできるかのリスク探索を行い、High / Medium / Low の懸念と不足検証を整理すること。", "files": [], "should_fire": true + }, + { + "id": 3, + "prompt": "Reviewer として、実装者の前提や正常系中心の説明に見落としがないか疑ってレビューして。", + "expected_output": "role-reviewer が発火し、実装者の前提を鵜呑みにせず、敵対的検証を行う基本姿勢で、入力、順序、権限、並行実行、外部依存失敗などの失敗条件を想定し、根拠付きでリスクと不足検証を整理すること。", + "files": [], + "should_fire": true } ] } diff --git a/docs/skill-library.md b/docs/skill-library.md index 7ed9872..75ca8df 100644 --- a/docs/skill-library.md +++ b/docs/skill-library.md @@ -43,7 +43,7 @@ skill 間の明示的な併用・優先関係は [docs/skill-dependency-map.md]( | `role-advisor` | 技術判断、設計相談、ベストプラクティスをテックリード視点で助言する。 | 実装を伴わず、アーキテクチャ、DB、DevOps、テスト、保守性を相談するとき。 | | `role-implementer` | Implementer として、計画済みのゴールと完了条件に沿って実装する。 | Planner が整理した仕様に従い、小さく安全な差分を作るとき。 | | `role-planner` | Planner として、ゴール、スコープ、タスク、完了条件、リスクを整理する。 | 実装前に方針を固め、Implementer と Reviewer が迷わない計画を作るとき。 | -| `role-reviewer` | Reviewer として、実装済み差分が仕様と品質要件を満たすか検証する。 | スコープ、公開契約、境界条件、責務違反、検証不足を確認するとき。 | +| `role-reviewer` | Reviewer として、実装済み差分が仕様と品質要件を満たすか検証する。 | 実装者の前提を鵜呑みにせず、敵対的検証を行い、スコープ、公開契約、境界条件、責務違反、検証不足を確認するとき。 | | `role-scouter` | Scouter として、コード、ドキュメント、設定、履歴を調査し判断材料を集める。 | 実装やレビュー判断の前に、不確実性を下げるための根拠収集をするとき。 | #### 出力フォーマット型スキル @@ -62,8 +62,8 @@ skill 間の明示的な併用・優先関係は [docs/skill-dependency-map.md]( | Skill | 概要 | 使う場面 | |---|---|---| | `code-naming` | 関数名、クラス名、型名、変数名などコード要素の命名候補や改善案を出す。 | 責務、抽象度、既存語彙、検索性、ユーザーの命名の好みに沿って名前を比較・改善したいとき。 | -| `code-next-developer-review` | 次に開発する人が困らないかという観点で差分をレビューする。 | 命名、責務境界、型、テストの読みやすさ、前提知識の残し方を確認するとき。 | -| `code-review` | 実装済み差分、PR、コミット、指定ファイルをリスク中心にレビューする。 | 仕様違反、回帰、公開契約破壊、セキュリティ、データ整合性を確認するとき。 | +| `code-next-developer-review` | 次に開発する人が困らないかという観点で差分をレビューする。 | 実装者の前提を鵜呑みにせず、敵対的検証を行い、命名、責務境界、型、テストの読みやすさ、前提知識の残し方を確認するとき。 | +| `code-review` | 実装済み差分、PR、コミット、指定ファイルをリスク中心にレビューする。 | 実装者の前提を鵜呑みにせず、敵対的検証を行い、仕様違反、回帰、公開契約破壊、セキュリティ、データ整合性を確認するとき。 | #### 思想・スタイル型スキル @@ -73,7 +73,7 @@ skill 間の明示的な併用・優先関係は [docs/skill-dependency-map.md]( | Skill | 概要 | 使う場面 | |---|---|---| -| `code-quality-review` | code quality report として、定量シグナル、品質スコア、scorecard、quality gate を整理する。 | complexity、coverage、重複率、lint などを補助証拠にしつつ、merge 前対応と follow-up の判断材料にしたいとき。 | +| `code-quality-review` | code quality report として、定量シグナル、品質スコア、scorecard、quality gate を整理する。 | 実装者の前提を鵜呑みにせず、敵対的検証を行い、complexity、coverage、重複率、lint などを補助証拠にしつつ、merge 前対応と follow-up の判断材料にしたいとき。 | ### C. 制約定義型