---
generated_at: 2026-02-22 10:30:00
metrics:
  claims_total: 223
  claims_with_evidence: 218
  claims_without_evidence: 5
confidence_derived: 0.98
---

# 根拠レポート：src-core 単体テストケース一覧

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.98**
  - 根拠あり：218 / 223、根拠なし：5
- 優先レビュー（高）
  1. **C-121/C-122 uv_default_loop**：uv_loop_init の内部動作はプラットフォーム依存であり、テスト環境による差異の確認が必要
  2. **C-129 uv_loop_configure**：uv__loop_configure のオプション詳細はプラットフォーム固有コードに依存
  3. **C-143/C-144 uv_library_shutdown**：uv__process_title_cleanup, uv__signal_cleanup 等の内部関数の副作用確認が必要
  4. **C-052 uv_ip6_addr ゾーンインデックスバッファ境界**：39文字超のアドレス部分の挙動はaddress_part配列サイズ(40)に基づく推定
  5. **C-145~C-151 メトリクス関連**：uv__loop_internal_fields_t の内部構造に基づくため、実行時の動作確認が必要

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。

- E-01: `src/uv-common.c` - 共通コア実装（メモリ管理、エラー処理、ソケット操作、ループ管理、メトリクス）
- E-02: `src/uv-common.h` - 共通ヘッダ（マクロ定義、フラグ定義、内部構造体、ユーティリティ関数宣言）
- E-03: `src/uv-data-getter-setters.c` - ハンドル/リクエスト/ループのgetter/setter関数
- E-04: `src/version.c` - バージョン情報関数
- E-05: `src/heap-inl.h` - 二分最小ヒープ実装（heap_init, heap_min, heap_insert, heap_remove, heap_dequeue）
- E-06: `src/queue.h` - 循環リストキュー実装（uv__queue_init, uv__queue_empty, uv__queue_insert_head/tail, uv__queue_remove, uv__queue_move, uv__queue_add, uv__queue_split）

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-001 | uv__malloc: 正のサイズでメモリ確保 | E-01 (L75-78) | ○ |
| C-002 | uv__malloc: size=0でNULL返却 | E-01 (L76-78) | ○ |
| C-003 | uv__malloc: size=1で正常確保 | E-01 (L75-78) | ○ |
| C-004 | uv__free: メモリ解放とerrno保持 | E-01 (L81-90) | ○ |
| C-005 | uv__free: NULLポインタの安全性 | E-01 (L81-90) | ○ |
| C-006 | uv__free: errno保存復元 | E-01 (L87-89) | ○ |
| C-007 | uv__calloc: ゼロ初期化メモリ確保 | E-01 (L92-94) | ○ |
| C-008 | uv__calloc: count=0の挙動 | E-01 (L92-94) | ○ |
| C-009 | uv__realloc: メモリ拡張 | E-01 (L96-101) | ○ |
| C-010 | uv__realloc: size=0でfree | E-01 (L97-100) | ○ |
| C-011 | uv__realloc: NULL ptrでmallocと同等 | E-01 (L96-101) | ○ |
| C-012 | uv__reallocf: realloc成功 | E-01 (L103-112) | ○ |
| C-013 | uv__reallocf: realloc失敗時の元ポインタ解放 | E-01 (L107-109) | ○ |
| C-014 | uv__reallocf: size=0でNULL返却 | E-01 (L103-112) | ○ |
| C-015 | uv__strdup: 文字列複製 | E-01 (L55-61) | ○ |
| C-016 | uv__strdup: 空文字列複製 | E-01 (L55-61) | ○ |
| C-017 | uv__strdup: malloc失敗時NULL返却 | E-01 (L58-59) | ○ |
| C-018 | uv__strndup: 部分文字列複製 | E-01 (L63-73) | ○ |
| C-019 | uv__strndup: nが文字列長より大きい場合 | E-01 (L66-67) | ○ |
| C-020 | uv__strndup: n=0で空文字列 | E-01 (L63-73) | ○ |
| C-021 | uv__strndup: malloc失敗時NULL返却 | E-01 (L69-70) | ○ |
| C-022 | uv_replace_allocator: 正常設定 | E-01 (L114-129) | ○ |
| C-023 | uv_replace_allocator: malloc_func=NULLでEINVAL | E-01 (L118-121) | ○ |
| C-024 | uv_replace_allocator: realloc_func=NULLでEINVAL | E-01 (L118-121) | ○ |
| C-025 | uv_replace_allocator: calloc_func=NULLでEINVAL | E-01 (L119-121) | ○ |
| C-026 | uv_replace_allocator: free_func=NULLでEINVAL | E-01 (L119-121) | ○ |
| C-027 | uv_replace_allocator: 設定後のカスタム関数使用 | E-01 (L123-127, L75-78) | ○ |
| C-028 | uv_handle_size: 有効タイプで正しいサイズ | E-01 (L166-172) | ○ |
| C-029 | uv_handle_size: 無効タイプで-1 | E-01 (L169-171) | ○ |
| C-030 | uv_req_size: 有効タイプで正しいサイズ | E-01 (L174-180) | ○ |
| C-031 | uv_req_size: 無効タイプで-1 | E-01 (L177-179) | ○ |
| C-032 | uv_loop_size: sizeof(uv_loop_t) | E-01 (L185-187) | ○ |
| C-033 | uv_buf_init: バッファ初期化 | E-01 (L190-195) | ○ |
| C-034 | uv_buf_init: len=0 | E-01 (L190-195) | ○ |
| C-035 | uv_buf_init: base=NULL | E-01 (L190-195) | ○ |
| C-036 | uv_err_name: 既知エラーコード | E-01 (L222-228) | ○ |
| C-037 | uv_err_name: 未知エラーコード | E-01 (L226, L198-206) | ○ |
| C-038 | uv_err_name_r: 既知エラーコード | E-01 (L211-217) | ○ |
| C-039 | uv_err_name_r: 未知エラーコード | E-01 (L214) | ○ |
| C-040 | uv_err_name_r: バッファサイズ不足 | E-01 (L211-217) | ○ |
| C-041 | uv_strerror: 既知エラーコード | E-01 (L245-251) | ○ |
| C-042 | uv_strerror: 未知エラーコード | E-01 (L249, L198-206) | ○ |
| C-043 | uv_strerror_r: 既知エラーコード | E-01 (L234-241) | ○ |
| C-044 | uv_strerror_r: バッファサイズ不足 | E-01 (L234-241) | ○ |
| C-045 | uv_ip4_addr: 有効IPv4アドレス変換 | E-01 (L254-262) | ○ |
| C-046 | uv_ip4_addr: 不正IPv4アドレス | E-01 (L261) | ○ |
| C-047 | uv_ip4_addr: ポート0 | E-01 (L257) | ○ |
| C-048 | uv_ip4_addr: ポート65535 | E-01 (L257) | ○ |
| C-049 | uv_ip6_addr: 有効IPv6アドレス変換 | E-01 (L265-297) | ○ |
| C-050 | uv_ip6_addr: ゾーンインデックス付きIPv6 | E-01 (L277-294) | ○ |
| C-051 | uv_ip6_addr: 不正IPv6アドレス | E-01 (L296) | ○ |
| C-052 | uv_ip6_addr: ゾーンインデックスバッファ境界 | E-01 (L280-281) | △ |
| C-053 | uv_ip4_name: IPv4文字列変換 | E-01 (L300-302) | ○ |
| C-054 | uv_ip6_name: IPv6文字列変換 | E-01 (L305-307) | ○ |
| C-055 | uv_ip_name: AF_INET変換 | E-01 (L312-314) | ○ |
| C-056 | uv_ip_name: AF_INET6変換 | E-01 (L315-317) | ○ |
| C-057 | uv_ip_name: 未対応ファミリ | E-01 (L318-319) | ○ |
| C-058 | uv_tcp_bind: AF_INETバインド | E-01 (L324-342) | ○ |
| C-059 | uv_tcp_bind: AF_INET6バインド | E-01 (L324-342) | ○ |
| C-060 | uv_tcp_bind: タイプチェック | E-01 (L329-330) | ○ |
| C-061 | uv_tcp_bind: クローズ中チェック | E-01 (L331-333) | ○ |
| C-062 | uv_tcp_bind: 未対応ファミリ | E-01 (L338-339) | ○ |
| C-063 | uv_udp_init_ex: AF_UNSPEC初期化 | E-01 (L345-367) | ○ |
| C-064 | uv_udp_init_ex: RECVMMSG フラグ | E-01 (L363-364) | ○ |
| C-065 | uv_udp_init_ex: 不正ドメイン | E-01 (L352-353) | ○ |
| C-066 | uv_udp_init_ex: 不正extraフラグ | E-01 (L357-358) | ○ |
| C-067 | uv_udp_init: ラッパー | E-01 (L370-372) | ○ |
| C-068 | uv_udp_bind: IPv4バインド | E-01 (L375-391) | ○ |
| C-069 | uv_udp_bind: タイプチェック | E-01 (L380-381) | ○ |
| C-070 | uv_udp_bind: 未対応ファミリ | E-01 (L387-388) | ○ |
| C-071 | uv_tcp_connect: AF_INET接続 | E-01 (L394-411) | ○ |
| C-072 | uv_tcp_connect: タイプチェック | E-01 (L400-401) | ○ |
| C-073 | uv_tcp_connect: 未対応ファミリ | E-01 (L407-408) | ○ |
| C-074 | uv_udp_connect: AF_INET接続 | E-01 (L414-438) | ○ |
| C-075 | uv_udp_connect: addr=NULLで切断 | E-01 (L421-425) | ○ |
| C-076 | uv_udp_connect: タイプチェック | E-01 (L417-418) | ○ |
| C-077 | uv_udp_connect: 未接続で切断試行 | E-01 (L422-423) | ○ |
| C-078 | uv_udp_connect: 二重接続防止 | E-01 (L435-436) | ○ |
| C-079 | uv__udp_is_connected: 接続済み判定 | E-01 (L442-453) | ○ |
| C-080 | uv__udp_is_connected: 未接続判定 | E-01 (L442-453) | ○ |
| C-081 | uv__udp_is_connected: タイプチェック | E-01 (L445-446) | ○ |
| C-082 | uv__udp_check_before_send: 正常チェック | E-01 (L456-484) | ○ |
| C-083 | uv__udp_check_before_send: 接続済みaddr=NULL | E-01 (L465-466, L479-481) | ○ |
| C-084 | uv__udp_check_before_send: タイプチェック | E-01 (L459-460) | ○ |
| C-085 | uv__udp_check_before_send: 接続済みaddr非NULL | E-01 (L462-463) | ○ |
| C-086 | uv__udp_check_before_send: 未接続addr=NULL | E-01 (L465-466) | ○ |
| C-087 | uv_udp_try_send2: count=0でEINVAL | E-01 (L523-524) | ○ |
| C-088 | uv_udp_try_send2: flags!=0でEINVAL | E-01 (L526-527) | ○ |
| C-089 | uv_udp_try_send2: キュー非空でEAGAIN | E-01 (L529-530) | ○ |
| C-090 | uv_udp_recv_start: 正常開始 | E-01 (L536-543) | ○ |
| C-091 | uv_udp_recv_start: タイプチェック | E-01 (L539) | ○ |
| C-092 | uv_udp_recv_start: alloc_cb=NULL | E-01 (L539) | ○ |
| C-093 | uv_udp_recv_start: recv_cb=NULL | E-01 (L539) | ○ |
| C-094 | uv_udp_recv_stop: 正常停止 | E-01 (L546-551) | ○ |
| C-095 | uv_udp_recv_stop: タイプチェック | E-01 (L547-548) | ○ |
| C-096 | uv_walk: 全ハンドル走査 | E-01 (L554-570) | ○ |
| C-097 | uv_walk: INTERNALスキップ | E-01 (L567) | ○ |
| C-098 | uv_walk: 空ループ | E-01 (L560) | ○ |
| C-099 | uv_ref: REFフラグ設定 | E-01 (L623-625), E-02 (L304-311) | ○ |
| C-100 | uv_unref: REFフラグ解除 | E-01 (L628-630), E-02 (L313-320) | ○ |
| C-101 | uv_has_ref: REFあり判定 | E-01 (L633-635), E-02 (L322-323) | ○ |
| C-102 | uv_has_ref: REFなし判定 | E-01 (L633-635), E-02 (L322-323) | ○ |
| C-103 | uv_stop: stop_flag設定 | E-01 (L638-640) | ○ |
| C-104 | uv_now: 現在時刻取得 | E-01 (L643-645) | ○ |
| C-105 | uv__count_bufs: 合計サイズ計算 | E-01 (L649-658) | ○ |
| C-106 | uv__count_bufs: nbufs=0で0 | E-01 (L649-658) | ○ |
| C-107 | uv__count_bufs: nbufs=1 | E-01 (L649-658) | ○ |
| C-108 | uv_fs_event_getpath: パス取得 | E-01 (L668-690) | ○ |
| C-109 | uv_fs_event_getpath: buffer=NULL | E-01 (L671) | ○ |
| C-110 | uv_fs_event_getpath: size=NULL | E-01 (L671) | ○ |
| C-111 | uv_fs_event_getpath: *size=0 | E-01 (L671) | ○ |
| C-112 | uv_fs_event_getpath: 非アクティブ | E-01 (L674-677) | ○ |
| C-113 | uv_fs_event_getpath: バッファ不足 | E-01 (L680-683) | ○ |
| C-114 | uv_fs_scandir_next: 次エントリ取得 | E-01 (L738-773) | ○ |
| C-115 | uv_fs_scandir_next: result<0 | E-01 (L744-745) | ○ |
| C-116 | uv_fs_scandir_next: ptr=NULL | E-01 (L748-749) | ○ |
| C-117 | uv_fs_scandir_next: 末尾到達 | E-01 (L761-765) | ○ |
| C-118 | uv__fs_get_dirent_type: ディレクトリ | E-01 (L775-809) | ○ |
| C-119 | uv__fs_get_dirent_type: ファイル | E-01 (L775-809) | ○ |
| C-120 | uv__fs_get_dirent_type: 不明タイプ | E-01 (L800-802) | ○ |
| C-121 | uv_default_loop: 初回取得 | E-01 (L850-859) | ○ |
| C-122 | uv_default_loop: シングルトン | E-01 (L851-852) | ○ |
| C-123 | uv_loop_new: ループ作成 | E-01 (L862-875) | ○ |
| C-124 | uv_loop_new: malloc失敗 | E-01 (L866-867) | ○ |
| C-125 | uv_loop_close: 正常終了 | E-01 (L878-905) | ○ |
| C-126 | uv_loop_close: アクティブリクエストでEBUSY | E-01 (L885-886) | ○ |
| C-127 | uv_loop_close: ハンドル残存でEBUSY | E-01 (L888-891) | ○ |
| C-128 | uv_loop_close: デフォルトループリセット | E-01 (L901-902) | ○ |
| C-129 | uv_loop_configure: ループ設定 | E-01 (L833-843) | △ |
| C-130 | uv_read_start: 読み取り開始 | E-01 (L922-938) | ○ |
| C-131 | uv_read_start: stream=NULL | E-01 (L925) | ○ |
| C-132 | uv_read_start: alloc_cb=NULL | E-01 (L925) | ○ |
| C-133 | uv_read_start: read_cb=NULL | E-01 (L925) | ○ |
| C-134 | uv_read_start: CLOSING | E-01 (L928-929) | ○ |
| C-135 | uv_read_start: READING | E-01 (L931-932) | ○ |
| C-136 | uv_read_start: READABLE未設定 | E-01 (L934-935) | ○ |
| C-137 | uv_os_free_passwd: フィールド解放 | E-01 (L132-147) | ○ |
| C-138 | uv_os_free_passwd: pwd=NULL | E-01 (L133-134) | ○ |
| C-139 | uv_os_free_group: フィールド解放 | E-01 (L150-161) | ○ |
| C-140 | uv_os_free_group: grp=NULL | E-01 (L151-152) | ○ |
| C-141 | uv_os_free_environ: 配列解放 | E-01 (L941-949) | ○ |
| C-142 | uv_os_free_environ: count=0 | E-01 (L941-949) | ○ |
| C-143 | uv_library_shutdown: 初回クリーンアップ | E-01 (L974-988) | △ |
| C-144 | uv_library_shutdown: 冪等性 | E-01 (L977-978) | ○ |
| C-145 | uv__metrics_update_idle_time: 正常更新 | E-01 (L991-1015) | ○ |
| C-146 | uv__metrics_update_idle_time: フラグ未設定 | E-01 (L996-997) | ○ |
| C-147 | uv__metrics_update_idle_time: entry_time=0 | E-01 (L1005-1006) | ○ |
| C-148 | uv__metrics_set_provider_entry_time: エントリ時刻設定 | E-01 (L1018-1030) | ○ |
| C-149 | uv_metrics_info: メトリクスコピー | E-01 (L1033-1039) | ○ |
| C-150 | uv_metrics_idle_time: アイドル時間取得 | E-01 (L1042-1056) | ○ |
| C-151 | uv_metrics_idle_time: アクティブ中加算 | E-01 (L1053-1054) | ○ |
| C-152 | uv_print_all_handles: 全ハンドル出力 | E-01 (L613-615) | ○ |
| C-153 | uv_print_active_handles: アクティブのみ出力 | E-01 (L618-620) | ○ |
| C-154 | uv_free_cpu_info: CPU情報解放 | E-01 (L952-964) | ○ |
| C-155 | uv_free_interface_addresses: アドレス解放 | E-01 (L1060-1063) | ○ |
| C-156 | uv_handle_type_name: UV_TCPで"tcp" | E-03 (L24-34) | ○ |
| C-157 | uv_handle_type_name: UV_FILEで"file" | E-03 (L29) | ○ |
| C-158 | uv_handle_type_name: UNKNOWN_HANDLEでNULL | E-03 (L31) | ○ |
| C-159 | uv_handle_type_name: TYPE_MAXでNULL | E-03 (L30) | ○ |
| C-160 | uv_handle_get_type: タイプ返却 | E-03 (L36-38) | ○ |
| C-161 | uv_handle_get_data: データ返却 | E-03 (L40-42) | ○ |
| C-162 | uv_handle_get_loop: ループ返却 | E-03 (L44-46) | ○ |
| C-163 | uv_handle_set_data: データ設定 | E-03 (L48-50) | ○ |
| C-164 | uv_handle_set_data: NULL設定 | E-03 (L48-50) | ○ |
| C-165 | uv_req_type_name: UV_CONNECTで"connect" | E-03 (L52-63) | ○ |
| C-166 | uv_req_type_name: UNKNOWN_REQでNULL | E-03 (L58) | ○ |
| C-167 | uv_req_get_type: タイプ返却 | E-03 (L65-67) | ○ |
| C-168 | uv_req_get_data: データ返却 | E-03 (L69-71) | ○ |
| C-169 | uv_req_set_data: データ設定 | E-03 (L73-75) | ○ |
| C-170 | uv_stream_get_write_queue_size: サイズ返却 | E-03 (L77-79) | ○ |
| C-171 | uv_udp_get_send_queue_size: サイズ返却 | E-03 (L81-83) | ○ |
| C-172 | uv_udp_get_send_queue_count: カウント返却 | E-03 (L85-87) | ○ |
| C-173 | uv_process_get_pid: PID返却 | E-03 (L89-91) | ○ |
| C-174 | uv_fs_get_type: FSタイプ返却 | E-03 (L93-95) | ○ |
| C-175 | uv_fs_get_result: 結果返却 | E-03 (L97-99) | ○ |
| C-176 | uv_fs_get_ptr: ポインタ返却 | E-03 (L101-103) | ○ |
| C-177 | uv_fs_get_path: パス返却 | E-03 (L105-107) | ○ |
| C-178 | uv_fs_get_statbuf: statバッファ返却 | E-03 (L109-111) | ○ |
| C-179 | uv_loop_get_data: ループデータ返却 | E-03 (L113-115) | ○ |
| C-180 | uv_loop_set_data: ループデータ設定 | E-03 (L117-119) | ○ |
| C-181 | uv_version: UV_VERSION_HEX返却 | E-04 (L38-40) | ○ |
| C-182 | uv_version_string: バージョン文字列返却 | E-04 (L43-45) | ○ |
| C-183 | heap_init: ヒープ初期化 | E-05 (L62-65) | ○ |
| C-184 | heap_min: 最小要素取得 | E-05 (L67-69) | ○ |
| C-185 | heap_min: 空ヒープでNULL | E-05 (L62-65, L67-69) | ○ |
| C-186 | heap_insert: 空ヒープへの挿入 | E-05 (L106-148) | ○ |
| C-187 | heap_insert: min-heap性質維持 | E-05 (L146-147) | ○ |
| C-188 | heap_insert: 昇順挿入 | E-05 (L106-148) | ○ |
| C-189 | heap_insert: 単一要素 | E-05 (L106-148) | ○ |
| C-190 | heap_remove: 中間要素削除 | E-05 (L150-237) | ○ |
| C-191 | heap_remove: root削除 | E-05 (L150-237) | ○ |
| C-192 | heap_remove: 最後の要素削除 | E-05 (L187-193) | ○ |
| C-193 | heap_remove: 空ヒープ削除 | E-05 (L160-161) | ○ |
| C-194 | heap_dequeue: デキュー | E-05 (L239-241) | ○ |
| C-195 | heap_dequeue: 連続デキュー順序 | E-05 (L239-241) | △ |
| C-196 | uv__queue_init: キュー初期化 | E-06 (L27-30) | ○ |
| C-197 | uv__queue_empty: 空判定(空) | E-06 (L32-34) | ○ |
| C-198 | uv__queue_empty: 空判定(非空) | E-06 (L32-34) | ○ |
| C-199 | uv__queue_head: 先頭取得 | E-06 (L36-38) | ○ |
| C-200 | uv__queue_insert_head: 先頭挿入 | E-06 (L69-75) | ○ |
| C-201 | uv__queue_insert_tail: 末尾挿入 | E-06 (L77-83) | ○ |
| C-202 | uv__queue_insert_head: 複数先頭挿入順序 | E-06 (L69-75) | ○ |
| C-203 | uv__queue_insert_tail: 複数末尾挿入順序 | E-06 (L77-83) | ○ |
| C-204 | uv__queue_remove: 要素削除 | E-06 (L85-88) | ○ |
| C-205 | uv__queue_remove: 先頭要素削除 | E-06 (L85-88) | ○ |
| C-206 | uv__queue_remove: 最後の要素削除 | E-06 (L85-88) | ○ |
| C-207 | uv__queue_move: キュー移動(非空) | E-06 (L62-67) | ○ |
| C-208 | uv__queue_move: キュー移動(空) | E-06 (L63-64) | ○ |
| C-209 | uv__queue_add: キュー結合 | E-06 (L44-49) | ○ |
| C-210 | uv__queue_split: キュー分割 | E-06 (L51-60) | ○ |
| C-211 | uv__queue_next: 次の要素取得 | E-06 (L40-42) | ○ |
| C-212 | uv__isinf: 正の無限大 | E-02 (L456-462) | ○ |
| C-213 | uv__isinf: 負の無限大 | E-02 (L456-462) | ○ |
| C-214 | uv__isinf: 有限値 | E-02 (L456-462) | ○ |
| C-215 | uv__isinf: NaN | E-02 (L456-462) | ○ |
| C-216 | uv__isinf: ゼロ | E-02 (L456-462) | ○ |
| C-217 | uv__isnan: NaN検出 | E-02 (L465-471) | ○ |
| C-218 | uv__isnan: 有限値 | E-02 (L465-471) | ○ |
| C-219 | uv__isnan: 無限大 | E-02 (L465-471) | ○ |
| C-220 | uv__isnan: ゼロ | E-02 (L465-471) | ○ |
| C-221 | uv__is_raw_tty_mode: RAW | E-02 (L143-145) | ○ |
| C-222 | uv__is_raw_tty_mode: RAW_VT | E-02 (L143-145) | ○ |
| C-223 | uv__is_raw_tty_mode: NORMAL | E-02 (L143-145) | ○ |

## 4) 不足情報（Unknown / Missing）
- C-052: `uv_ip6_addr` のゾーンインデックスアドレス部分が39文字を超える場合の正確な挙動は、`address_part` 配列のサイズ(40バイト)から推定しているが、実際のIPv6アドレスでこの境界に達するケースは稀であり、実機テストでの確認が望ましい
  - 候補：IPv6アドレス仕様(RFC 6874) / libuvのテストスイート / 実機テスト
- C-129: `uv_loop_configure` は `uv__loop_configure` に委譲しており、プラットフォーム固有オプション（UV_LOOP_BLOCK_SIGNAL等）の詳細はプラットフォーム別実装に依存
  - 候補：`src/unix/core.c` / `src/win/core.c` / libuv公式ドキュメント
- C-143: `uv_library_shutdown` のクリーンアップ処理の副作用（`uv__process_title_cleanup`, `uv__signal_cleanup`, `uv__threadpool_cleanup`）は各プラットフォーム固有実装に依存
  - 候補：`src/unix/proctitle.c` / `src/unix/signal.c` / `src/threadpool.c`
- C-195: `heap_dequeue` の連続デキュー順序は `heap_insert` と `heap_remove` の正当性に基づく推定であり、大量要素での順序保証はアルゴリズム的に正しいが実テストでの確認が望ましい
  - 候補：ヒープソートアルゴリズムの数学的証明 / libuv既存テスト

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - getter/setter系の単純な関数群（C-156~C-180）はソースコードから直接確認可能
- 0: 低リスク - バージョン情報（C-181, C-182）は定数値の返却のみ
- 0: 低リスク - ヒープ/キューのデータ構造操作（C-183~C-211）はヘッダファイル内に実装が完結
- 1: 中リスク - メモリ管理関数（C-001~C-014）はカスタムアロケータ使用時の動作確認が必要
- 1: 中リスク - ネットワーク関連（C-045~C-095）はプラットフォームAPIへの委譲が含まれる
- 1: 中リスク - メトリクス関連（C-145~C-151）はマルチスレッド環境での動作確認が必要
- 2: 高リスク - `uv_library_shutdown`（C-143~C-144）はプロセスレベルの副作用を伴う

## 6) レビュアーチェックリスト（最小）
- [ ] メモリ管理関数（uv__malloc, uv__free, uv__realloc等）のテストケースがカスタムアロケータ使用シナリオを適切にカバーしているか
- [ ] TCP/UDPバインド・接続のテストケースがAF_INET/AF_INET6の両方を網羅しているか
- [ ] uv_read_startの各フラグチェック条件がソースコードの分岐と一致しているか
- [ ] ヒープ操作のテストケースがmin-heap性質の維持を十分に検証しているか
- [ ] キュー操作のテストケースが循環リストの整合性を検証しているか
- [ ] uv_loop_close/uv_loop_deleteのテストケースがデフォルトループと非デフォルトループの両方をカバーしているか
- [ ] uv_library_shutdownの冪等性テストが適切に設計されているか
- [ ] エラーコード変換関数（uv_err_name, uv_strerror）のテストケースが主要なエラーコードを網羅しているか
