ループ防止のためにポリシー強化

This commit is contained in:
nrslib 2026-02-10 05:46:33 +09:00
parent ec88b90632
commit 28392b113a
2 changed files with 60 additions and 0 deletions

View File

@ -98,6 +98,36 @@ To prevent circular rejections, track findings by ID.
- Issues without `finding_id` are invalid (cannot be used as rejection grounds)
- REJECT is allowed only when there is at least one `new` or `persists` issue
## Reopen Conditions (`resolved` -> open)
Reopening a resolved finding requires reproducible evidence.
- To reopen a previously `resolved` finding, all of the following are required
1. Reproduction steps (command/input)
2. Expected result vs. actual result
3. Failing file/line evidence
- If any of the three is missing, the reopen attempt is invalid (cannot be used as REJECT grounds)
- If reproduction conditions changed, treat it as a different problem and issue a new `finding_id`
## Immutable Meaning of `finding_id`
Do not mix different problems under the same ID.
- A `finding_id` must refer to one and only one problem
- If problem meaning, evidence files, or reproduction conditions change, issue a new `finding_id`
- Rewriting an existing `finding_id` to represent a different problem is prohibited
## Handling Test File Size and Duplication
Test file length and duplication are warning-level maintainability concerns by default.
- Excessive test file length and duplicated test setup are `Warning` by default
- They may be `REJECT` only when reproducible harm is shown
- flaky behavior
- false positives/false negatives
- inability to detect regressions
- "Too long" or "duplicated" alone is not sufficient for `REJECT`
## Boy Scout Rule
Leave it better than you found it.

View File

@ -98,6 +98,36 @@
- `finding_id` のない指摘は無効(判定根拠として扱わない)
- REJECTは `new` または `persists` の問題が1件以上ある場合のみ許可する
## 再オープン条件resolved → open
解消済み指摘を再オープンする場合は、再現可能な根拠を必須とする。
- 前回 `resolved` の指摘を再オープンする場合、以下3点を必須で提示する
1. 再現手順(コマンド/入力)
2. 期待結果と実結果
3. 失敗箇所のファイル/行
- 上記3点が欠ける再オープンは無効REJECT根拠に使わない
- 再現手順が変わる場合は別問題として新規 `finding_id` を発行する
## finding_id の意味固定
同じ ID に別問題を混在させない。
- 同一 `finding_id` は同一問題にのみ使用する
- 問題の意味・根拠ファイル・再現条件が変わる場合は新規 `finding_id` を発行する
- 同一 `finding_id` の説明を後から別問題に差し替えることを禁止する
## テストファイルの扱い
テストファイルの長さや重複は、原則として保守性の警告として扱う。
- テストファイルの行数超過・重複コードは原則 `Warning`
- 以下の実害が再現できる場合のみ `REJECT` 可能
- テスト不安定化(フレーク)
- 誤検知/検知漏れ
- 回帰検出不能
- 「長すぎる」「重複がある」だけでは `REJECT` しない
## ボーイスカウトルール
来たときよりも美しく。