---
generated_at: 2026-02-17 10:30:00
metrics:
  claims_total: 45
  claims_with_evidence: 45
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：brave.csv

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：45 / 45、根拠なし：0
- 優先レビュー（高）
  1. **なし**：全てのテストケースにソースコード上の根拠あり

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `script/brave/brave.lua` - メインモジュール（pub_braveクラス定義）
- E-02: `script/brave/brave.lua:17-34` - register関数の実装
- E-03: `script/brave/brave.lua:37-39` - on関数の実装
- E-04: `script/brave/brave.lua:42-51` - push関数の実装
- E-05: `script/brave/brave.lua:54-82` - start関数の実装
- E-06: `script/brave/log.lua` - ログモジュール
- E-07: `script/brave/log.lua:13-31` - pushLog関数の実装
- E-08: `script/brave/log.lua:35-37` - info関数の実装
- E-09: `script/brave/log.lua:39-41` - debug関数の実装
- E-10: `script/brave/log.lua:43-45` - trace関数の実装
- E-11: `script/brave/log.lua:47-49` - warn関数の実装
- E-12: `script/brave/log.lua:51-53` - error関数の実装
- E-13: `script/brave/work.lua:3-14` - loadProtoByStdioイベントハンドラ
- E-14: `script/brave/work.lua:16-71` - loadProtoBySocketイベントハンドラ
- E-15: `script/brave/work.lua:73-79` - timerイベントハンドラ
- E-16: `script/brave/work.lua:81-84` - loadFileイベントハンドラ
- E-17: `script/brave/work.lua:86-97` - removeCachesイベントハンドラ
- E-18: `script/brave/work.lua:112-125` - compileイベントハンドラ
- E-19: `script/brave/init.lua` - モジュールエントリーポイント

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | register関数が有効なチャンネル名でワーカー登録が成功すること | E-02 | ○ |
| C-02 | register関数でキュー内のメッセージがフラッシュされること | E-02 | ○ |
| C-03 | register関数で存在しないタスクチャンネル名でassertエラーになること | E-02 | ○ |
| C-04 | register関数で存在しないリプライチャンネル名でassertエラーになること | E-02 | ○ |
| C-05 | on関数で能力（コールバック）が正しく登録されること | E-03 | ○ |
| C-06 | on関数で同じ名前で上書き登録できること | E-03 | ○ |
| C-07 | push関数で登録済みの場合にresPadにメッセージがpushされること | E-04 | ○ |
| C-08 | push関数で未登録の場合にキューにメッセージが追加されること | E-04 | ○ |
| C-09 | push関数でparamsがnilの場合でも正常に動作すること | E-04 | ○ |
| C-10 | start関数でepollイベントループが開始されること | E-05 | ○ |
| C-11 | start関数で登録済み能力が正しく実行されること | E-05 | ○ |
| C-12 | start関数で未登録の能力名でエラーログが出力されること | E-05 | ○ |
| C-13 | start関数で能力実行中に例外が発生した場合エラーログが出力されること | E-05 | ○ |
| C-14 | start関数でメモリ使用量がpushされること | E-05 | ○ |
| C-15 | info関数でinfoレベルのログがpushされること | E-08 | ○ |
| C-16 | debug関数でdebugレベルのログがpushされること | E-09 | ○ |
| C-17 | trace関数でtraceレベルのログがpushされること | E-10 | ○ |
| C-18 | warn関数でwarnレベルのログがpushされること | E-11 | ○ |
| C-19 | error関数でerrorレベルのログにスタックトレースが含まれること | E-07, E-12 | ○ |
| C-20 | pushLog関数で複数引数がタブ区切りで連結されること | E-07 | ○ |
| C-21 | pushLog関数で非文字列引数がtostring変換されること | E-07 | ○ |
| C-22 | pushLog関数でソースファイルと行番号が含まれること | E-07 | ○ |
| C-23 | pushLog関数でclockがmonotonicタイムスタンプで設定されること | E-07 | ○ |
| C-24 | pushLog関数で引数が0個の場合でも正常に動作すること | E-07 | ○ |
| C-25 | loadProtoByStdioでJSON-RPCプロトコルが正しくデコードされること | E-13 | ○ |
| C-26 | loadProtoByStdioでデコードエラー時にprotoerrorがpushされること | E-13 | ○ |
| C-27 | loadProtoBySocketでソケット経由でJSON-RPCが正しくデコードされること | E-14 | ○ |
| C-28 | loadProtoBySocketでTCP接続失敗時にassertエラーになること | E-14 | ○ |
| C-29 | loadProtoBySocketでUnix接続失敗時にassertエラーになること | E-14 | ○ |
| C-30 | loadProtoBySocketでバッファが正しく管理されること | E-14 | ○ |
| C-31 | loadProtoBySocketでlsclientエラー時にlog.errorが呼ばれること | E-14 | ○ |
| C-32 | loadProtoBySocketでlsmasterエラー時にlog.errorが呼ばれること | E-14 | ○ |
| C-33 | timerで指定時間ごとにwakeupがpushされること | E-15 | ○ |
| C-34 | timerでtime=0の場合でも動作すること | E-15 | ○ |
| C-35 | loadFileでファイルが正しく読み込まれること | E-16 | ○ |
| C-36 | loadFileで存在しないファイルでエラーが返されること | E-16 | ○ |
| C-37 | removeCachesでロックファイルが作成可能なディレクトリが削除されること | E-17 | ○ |
| C-38 | removeCachesでロックファイルが作成できないディレクトリはスキップされること | E-17 | ○ |
| C-39 | removeCachesで空のディレクトリパスでも動作すること | E-17 | ○ |
| C-40 | compileでLuaコードが正しくコンパイルされること | E-18 | ○ |
| C-41 | compileで構文エラーのあるコードでerrが返されること | E-18 | ○ |
| C-42 | compileでoptionsが正しくparserに渡されること | E-18 | ○ |
| C-43 | compileでコンパイル時間がログ出力されること | E-18 | ○ |
| C-44 | compileで空文字列のコードでも動作すること | E-18 | ○ |
| C-45 | init.luaでbraveモジュールが正しくエクスポートされること | E-19 | ○ |

## 4) 不足情報（Unknown / Missing）
- なし
  - 全てのテストケースはソースコードの実装に基づいて生成されており、根拠が明確に存在する

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 全テストケースにソースコード上の根拠あり
- 注意点:
  - braveモジュールはワーカースレッドとして動作するため、実際のテスト実行時にはスレッド間通信のモック化が必要
  - epollやチャンネル通信などOS依存の機能があるため、プラットフォーム固有のテスト環境が必要な場合がある

## 6) レビュアーチェックリスト（最小）
- [ ] テストケースがbraveモジュールの全ての公開関数をカバーしているか確認
- [ ] 異常系テストケースが適切なエラーハンドリングを検証しているか確認
- [ ] 境界値テストが適切に設計されているか確認
- [ ] イベントハンドラ（work.lua）の全ハンドラがテスト対象になっているか確認
- [ ] ログモジュール（log.lua）の全ログレベルがテスト対象になっているか確認
- [ ] スレッド間通信（channel）のモック方針を検討
- [ ] 外部依存（bee.channel, bee.epoll, bee.time）のモック方針を検討
