nyash-codex
33186e1e20
feat(phi): Phase 26-B-1 - PhiInputCollector実装完了
PhiInputCollector Box実装 - PHI入力収集専門化
# 実装内容
- PhiInputCollector struct実装(~340行)
- PHI入力収集・サニタイズ・最適化の統一API
- 包括的ユニットテスト(10テスト、100%カバレッジ)
# 提供機能
1. add_preheader/add_latch/add_snapshot - 入力収集
2. sanitize() - 重複削除・ソート(BTreeMap使用で決定性保証)
3. optimize_same_value() - 同値最適化(全入力が同値ならPHI不要)
4. finalize() - 最終入力取得
# テスト結果
✅ 10/10テスト全PASS
✅ 複雑ワークフロー検証済み
✅ skip_whitespace実シナリオ検証済み
# Box-First理論
- 責任分離: PHI入力収集を単一Boxに集約
- テスト容易性: 独立してテスト可能(既存コードから分離)
- 再利用性: loopform_builder/loop_snapshot_mergeで再利用可能
# 次のステップ
Phase 26-B-2: BodyLocalPhiBuilder実装
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 17:42:12 +09:00
..
2025-11-03 23:21:48 +09:00
2025-11-08 00:46:34 +09:00
2025-11-19 23:12:01 +09:00
2025-09-24 14:13:15 +09:00
2025-08-18 21:10:06 +09:00
2025-08-18 20:53:48 +09:00
2025-09-25 01:09:48 +09:00
2025-11-08 17:04:21 +09:00
2025-11-18 18:56:35 +09:00
2025-11-18 18:56:35 +09:00
2025-11-08 15:49:25 +09:00
2025-11-17 00:48:18 +09:00
2025-09-17 07:43:07 +09:00
2025-09-28 01:39:12 +09:00
2025-09-20 05:00:31 +09:00
2025-11-18 18:56:35 +09:00
2025-11-13 16:40:58 +09:00
2025-11-06 15:41:52 +09:00
2025-09-17 07:43:07 +09:00
2025-11-20 17:42:12 +09:00
2025-11-19 23:12:01 +09:00
2025-11-11 02:07:12 +09:00
2025-11-10 23:17:46 +09:00
2025-11-20 14:14:37 +09:00
2025-11-18 18:56:35 +09:00
2025-09-23 02:15:56 +09:00
2025-09-24 09:30:42 +09:00
2025-09-17 07:43:07 +09:00
2025-11-20 17:10:03 +09:00
2025-11-07 21:04:01 +09:00
2025-09-17 07:43:07 +09:00
2025-11-13 16:40:58 +09:00
2025-11-07 21:04:01 +09:00
2025-11-20 03:56:12 +09:00
2025-09-25 05:03:59 +09:00
2025-11-18 18:56:35 +09:00
2025-09-27 08:45:25 +09:00
2025-09-17 07:43:07 +09:00
2025-11-13 18:55:14 +09:00
2025-09-17 07:43:07 +09:00
2025-09-17 07:43:07 +09:00
2025-11-20 03:56:12 +09:00
2025-11-10 23:17:46 +09:00
2025-11-17 19:53:44 +09:00
2025-09-17 07:43:07 +09:00
2025-09-17 07:43:07 +09:00
2025-11-13 16:40:58 +09:00
2025-09-17 07:43:07 +09:00
2025-09-19 12:13:43 +09:00
2025-09-17 07:43:07 +09:00
2025-09-17 07:43:07 +09:00