---
generated_at: 2026-02-18 10:30:00
metrics:
  claims_total: 15
  claims_with_evidence: 15
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：37-_omz_async_callback

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：15 / 15、根拠なし：0
- 優先レビュー（高）
  - なし（すべての主張に根拠あり）

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

- E-01: `lib/async_prompt.zsh` 110-142行目 - _omz_async_callback関数の定義
- E-02: `lib/async_prompt.zsh` 109行目 - 関数コメント
- E-03: `lib/async_prompt.zsh` 105行目 - zle -Fでのコールバック登録
- E-04: `docs/code-to-docs/機能一覧/機能一覧.csv` 37行目 - 機能定義

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | 非同期処理完了時に出力を受け取る | E-02 (109行目: `# Called when new data is ready to be read from the pipe`) | ○ |
| C-02 | プロンプトを再描画する | E-01 (128-129行目: `zle .reset-prompt`, `zle -R`) | ○ |
| C-03 | emulate -L zshでモード設定 | E-01 (111行目: `emulate -L zsh`) | ○ |
| C-04 | 第1引数がfd | E-01 (113行目: `local fd=$1`) | ○ |
| C-05 | 第2引数がerr | E-01 (114行目: `local err=$2`) | ○ |
| C-06 | エラーが空またはhupの場合に処理 | E-01 (116行目: `[[ -z "$err" || "$err" == "hup" ]]`) | ○ |
| C-07 | FDからハンドラ名を逆引きする | E-01 (118行目: `local handler="${(k)_OMZ_ASYNC_FDS[(r)$fd]}"`) | ○ |
| C-08 | 現在の出力を保存する | E-01 (121行目: `local old_output="${_OMZ_ASYNC_OUTPUT[$handler]}"`) | ○ |
| C-09 | FDから出力を読み取る | E-01 (124行目: `IFS= read -r -u $fd -d '' "_OMZ_ASYNC_OUTPUT[$handler]"`) | ○ |
| C-10 | 出力変更時のみ再描画する | E-01 (127行目: `if [[ "$old_output" != "${_OMZ_ASYNC_OUTPUT[$handler]}" ]]`) | ○ |
| C-11 | FDをクローズする | E-01 (133行目: `exec {fd}<&-`) | ○ |
| C-12 | zle -Fハンドラを削除する | E-01 (137行目: `zle -F "$fd"`) | ○ |
| C-13 | FD変数を-1にリセットする | E-01 (140行目: `_OMZ_ASYNC_FDS[$handler]=-1`) | ○ |
| C-14 | PID変数を-1にリセットする | E-01 (141行目: `_OMZ_ASYNC_PIDS[$handler]=-1`) | ○ |
| C-15 | lib/async_prompt.zshに実装されている | E-01 | ○ |

## 4) 不足情報（Unknown / Missing）
- なし

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - すべての主張がソースコードで直接確認可能

## 6) レビュアーチェックリスト（最小）
- [ ] lib/async_prompt.zsh 110-142行目の実装が設計書と一致することを確認
- [ ] ZSHの連想配列逆引き構文`${(k)array[(r)value]}`の動作を確認
- [ ] zle .reset-promptとzle -Rの動作を確認
