<What this skill does>
日本語の概要は準備中です。原文の説明を表示しています。
差分が「その差分自身を審査するレビュー基準・品質ゲート」を弱めていないかを diff-time で検出する。
Check 1 レビュールールの削除・弱体化(.river/rules.md / .river/rules.d/*)、Check 2 実行時コンフィグの閾値・ゲート緩和(.river-review.{json,yaml,yml} の review.severity 引き下げ / exclude 拡大 / memory.suppressionEnabled 無効化 / selection.skills.exclude 追加)、Check 3 suppression entry の新規追加、Check 4 lint・静的解析設定からのルール削除や無効化、Check 5 branch protection・required check の緩和、の 5 Check を対象とし、これらが機能変更と同一 PR に混在し、かつ意図の宣言が無い場合に指摘する。
report-only。
workflow の permissions / action pin は gha-workflow-security、既存 suppression entry の使い分けは suppression-feedback、設定ファイルの一般的妥当性は config-json、.only / .skip / @ts-ignore / @ts-nocheck は heuristic-review.mjs の決定論検出器、リファクタと機能追加の混在は behavior-structure-separation へ委譲する
インストールする前に、エージェントに与えられる指示の中身を確認できます。
inspired by https://zenn.dev/nnku/articles/f6c7a62b78a47e
上記はレビュー基準の出所を固定する設計の紹介であり、本文の転載や著者による endorsement を含まない(nominative fair use)。
取り込むのは 「差分が自分のレビュー基準を弱めている」ことをレビュー観点として指摘する という一点に限る。記事が提示する仕組み(二層 Definition・blob SHA 記録・fallback 規則)は移植しない。それらは config schema と run record の変更を伴う別スライスであり、docs/adr/005-review-learning-loop-incremental-extension.md の「外部記事の自動化度をそのまま持ち込まない」前例に従って設計から分離する。
命名は skills/README.md Naming Q0–Q5 に従う。Q0 で「概念の再実装」に分類されるためリネームが既定となり、Q1 では原語 Review Definition が本リポジトリの既存語彙(.river/rules.md / rules / policy)と衝突する。Q2 で役割が変わる(記事は基準解決アルゴリズムの設計、本 skill はレビュー観点)ため、Q2 でリネーム確定とし、既存の *-integrity 命名ファミリ(fix-scope-integrity / plangate-plan-integrity)に揃えた review-criteria-integrity を付与した。原語は tags の review-definition に残す。
Primary pattern: Reviewer Secondary patterns: Inversion Why: 基準の弱体化はパターンとして拾えるが、「弱体化かどうか」と「正当な緩和か」の判定は意味的であり、比較基準(弱体化前の基準・宣言された意図)が discover できない差分では実行を止めるゲートが必要である。
レビュー基準・品質ゲートは被レビューエージェントの書込権限内にあり、PR 内で .river/rules.md を弱めた変更は、その PR 自身のレビュー基準に即時反映される(pages/explanation/security-model.md §「レビュー基準の出所」)。この信頼境界を diff-time の観点として可視化する。
次の 5 Check のいずれかに該当する変更が、機能変更と同一 PR に混在し、かつ意図の宣言が無い場合に指摘する。
.river/rules.md / .river/rules.d/* の基準の削除・条件の弱体化。.river-review.{json,yaml,yml} の review.severity 引き下げ(strict → normal / relaxed)、exclude.files の拡大、exclude.prLabelsToIgnore の追加、memory.suppressionEnabled: false、selection.skills.exclude への追加、selection.packs からの削除。river suppression add 相当の登録差分)。off 化や削除、tsconfig の strict 系フラグの無効化、textlint / markdownlint のルール削除)。strict の無効化、必須レビュー人数の引き下げ)。report-only(ADR-005)。finding / question のみを出力し、自動修正・自動マージはしない。
permissions 拡大、third-party action の未ピン留め、pull_request_target と untrusted checkout の組み合わせは gha-workflow-security が担う。本 skill が workflow ファイルを見るのは required check の定義や品質ゲート job の削除という文脈のみで、権限・pin・トリガーには触れない。accepted_risk / false_positive / wont_fix のどれを選ぶか、HIGH_SEVERITY guard の扱い)は suppression-feedback が担う。本 skill は entry が新規追加された事実と機能変更との混在のみを見る。config-json が担う。本 skill は 基準を弱める方向の差分のみを見る。.only / .skip / xit / xdescribe / @ts-ignore / @ts-nocheck は src/lib/heuristic-review.mjs の決定論検出器が既に検出する。本 skill はこれらを重複指摘しない(.claude/rules/review-core.md §「カスタム静的解析の False-positive 責務分界(#1070)」)。review-automation-boundary が担う。本 skill は基準の変更差分のみを見る。fix-scope-integrity が担う。本 skill は混在の対象が「レビュー基準・品質ゲート」である場合に限定する。behavior-structure-separation が担う。本 skill が扱う混在は**「レビュー基準・品質ゲートを弱める変更」と機能変更の組み合わせ**に限る。したがって、リファクタと機能追加が混ざっているだけで基準・ゲートに触れていないケースは本 skill の対象外であり、指摘しない。このスキルは以下の条件がすべて満たされない限り NO_REVIEW を返す。
diff が含まれている。.river/rules.md / .river/rules.d/* / .river-review.{json,yaml,yml} / suppression store / lint・型チェック設定 / branch protection・required check 定義)のいずれかに触れている。- 行)から読み取れる、または参照設定から特定できる。特定できない場合は finding を出さず question に留める。dist/**・*.map・lockfile・自動生成 manifest)は Gate 判定からもレビュー対象からも除外する。ゲート不成立時の出力: NO_REVIEW: review-criteria-integrity — レビュー基準・品質ゲートに触れる差分が無い、または弱体化の判定基準が discover できない
正当な基準変更を FP にしないため、次を厳守する。
src/** 等の挙動を変える差分)が同一 PR に無く、基準の見直しそのものが PR の目的である場合は指摘しない。本 skill が問題視するのは混在である。review.severity の引き上げ、required check の追加、lint ルールの追加は弱体化ではない。rules.d/ への分割、required check 名の変更に伴う登録差し替えなど、基準の総量が減っていない変更は弱体化ではない。差分の削除側だけを見て判断しない。.only / .skip / @ts-ignore / @ts-nocheck・workflow の permissions / action pin・suppression entry の種別選択は、それぞれ決定論検出器・gha-workflow-security・suppression-feedback の責務であり、本 skill からは指摘しない。memory.suppressionEnabled: false・required check の削除・skill の一括除外)が機能変更と混在し、その PR 自身の審査を素通りさせるものは blocker。exclude 拡大が機能変更と混在し、merge 前に分離または宣言すべきものは warning。off 化など)、merge 後の follow-up で足りるものは nit。info 相当)。file:line は差分内にアンカーする。差分外の推測に基づく指摘は question として返す。- 行・変更前の設定値)と、混在を確認した機能変更側の file:line を併記し、再現可能にする。.claude/rules/review-core.md)。すべて日本語。標準の finding フォーマットに従い、各指摘に check(1〜5)と resolution を含める。
(review-criteria-integrity):1: [要約] 最も影響の大きい弱体化は〈1文〉
<file>:<line>: [Review criteria weakening] <タイトル>
check: 1 | 2 | 3 | 4 | 5
変更前の基準: <削除・変更された基準の変更前の値>(アンカー: `<file>:<line>`)
弱体化内容: <どの方向にどれだけ弱まったか>
混在する機能変更: <同一 PR の機能変更側 file:line>
Severity: blocker | warning | nit(較正基準に従う)
resolution: <解消手順>(別 PR へ分離 / 緩和理由と再強化条件を明記 / suppression entry として記録 のいずれか)
.river/rules.md:12: [Review criteria weakening] レビュー基準の削除が機能変更と同一 PR に混在している
check: 1
変更前の基準: 「外部入力を扱う関数には入力検証を必須とする」(アンカー: .river/rules.md:12 の削除行)
弱体化内容: 入力検証を必須とする基準が削除され、同 PR で追加された外部入力の受け口が本基準の審査対象から外れる
混在する機能変更: src/api/webhook.mjs:31(新規の外部入力ハンドラを追加)
Severity: blocker
resolution: 基準の削除を別 PR へ分離するか、削除理由と代替の担保(既存の検証層など)を PR 本文に明記する
レビュー基準を勝手に緩めています
(Check の特定なし、変更前の値のアンカーなし、混在の確認なし、resolution なし、意図の断定と攻撃的な口調)
file:line で確認され、正当化(宣言・移設・強化方向・上流由来)の可能性が棄却され、resolution が示されている。基準変更のみの PR や強化方向の変更では指摘しない。.only / @ts-ignore・workflow permissions・suppression entry の種別選択)を重複指摘している、意図を断定している、resolution が無い。skills/downstream/gha-workflow-security/SKILL.md — workflow の権限・供給網(委譲先)skills/midstream/suppression-feedback/SKILL.md — suppression entry の使い分け(委譲先)skills/midstream/config-json/SKILL.md — 設定ファイルの一般的妥当性(委譲先)skills/midstream/fix-scope-integrity/SKILL.md — 指摘対応ループのスコープ逸脱(隣接)skills/midstream/behavior-structure-separation/SKILL.md — 振る舞い変更と構造変更の混在(委譲先)pages/explanation/security-model.md §「レビュー基準の出所」 — rules の信頼境界(SSoT・#1669 スライス1)src/lib/heuristic-review.mjs — .only / .skip / @ts-ignore / @ts-nocheck の決定論検出器(重複指摘しない境界)src/lib/rules.mjs — .river/rules.md と .river/rules.d/* の読み込み実装pages/reference/config-schema.md — .river-review.json の項目とデフォルト.claude/rules/review-core.md §「カスタム静的解析の False-positive 責務分界(#1070)」 — 意味的判断と静的解析の分界docs/review/output-format.md — 重要度ラベルと出力形式(SSoT)まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
<What this skill does>
日本語の概要は準備中です。原文の説明を表示しています。
画像・ボタン・フォーム要素に適切なアクセシブルネームがあるか確認する。
Ensure ADRs capture context, decision, alternatives, tradeoffs, and follow-ups in a way that prevents future drift.
日本語の概要は準備中です。原文の説明を表示しています。
敵対的分析手法を統合したレビューの entry skill。認知バイアス対策の3手法 (Pre-mortem / War Game / Logic Torturing)と、宣言・主張と実態の乖離を突く claim-vs-actual 検出3パターン(Self-Contradiction / Refactor-Claim Audit / Cross-File Leakage)へルーティングし、通常のレビューでは見えない設計の盲点・ 防御の穴・論理の弱点・宣言と実装のズレを可視化する。
Review changes to the Agent Skills import/export bridge for path safety, round-trip fidelity, and validation correctness.
日本語の概要は準備中です。原文の説明を表示しています。
Checks whether AI-assisted work defines review criteria, accessible context, explicit review loop, human judgment boundary, and feedback capture before delegating to an agent.
日本語の概要は準備中です。原文の説明を表示しています。