| name | error-handler-hunt |
| description | サイレント失敗を検出し、堅牢なエラーハンドリングを確保する。PRレビューでのエラーハンドリング検査時に使用。 |
Error Handler Hunt スキル
目的
サイレント失敗を検出し、堅牢なエラーハンドリングを確保する。
コア原則(譲歩不可)
- 沈黙する失敗は受け入れられない
- ユーザーは実行可能なフィードバックに値する
- フォールバックは明示的で正当化される必要がある
- キャッチブロックは特定的でなければならない
- Mock/Fake実装は本番コードに属さない
検査対象パターン
以下のコードパターンを重点的に検査:
- try-catch ブロック
- エラーコールバック・イベントハンドラー(
.catch(), onError)
- 条件分岐によるエラー処理(
if (error), if (!result))
- フォールバックロジック(デフォルト値、代替処理)
- オプショナルチェーン・Null合体(
?., ??)
禁止パターン(必ず報告)
- 空の catch:
catch (e) {}
- console.log のみ:
catch (e) { console.log(e); }
- エラー握りつぶし:
catch (e) { return null; }
重大度レベル
| レベル | 説明 | 例 |
|---|
| CRITICAL | サイレント失敗、ブロード catch | 空のcatchブロック、catch(e) {} |
| HIGH | 不十分なエラーメッセージ | console.log("error") のみ |
| MEDIUM | コンテキスト不足 | エラーの原因が不明確 |
出力形式
結果は以下のMarkdown形式で出力してください。
# Error Handler Hunt Results
## CRITICAL Issues
- [ファイル名:行番号] 問題の説明
- コード: 問題のあるコード
- 問題: 何が問題か
- リスク: ユーザーへの影響
- 修正提案: 推奨される修正
## HIGH Issues
- [ファイル名:行番号] 問題の説明
- コード: ...
- 問題: ...
- 修正提案: ...
## Summary
- CRITICAL: X
- HIGH: X
- MEDIUM: X
注意事項
- 本番コードのエラーハンドリングのみを対象
- テストコードのモック/スタブは対象外
- フォールバックには正当な理由が必要