# v1.16 実装引継ぎ事項
## 概要
タスク実装チェックリスト機能の追加。LLM が「10個中3個しか実装しない」問題を解決する。
## 完了済み
- [x] v1.16 計画案作成 ([v1.16_ja.md](v1.16_ja.md))
- [x] 詳細な実装チェックリスト作成(49項目)
- [x] everything-claude-code から有用なプロンプトを取り込み済み:
- `garbage_detection.md` - Unreachable code, Unused imports, Risk Level 追加
- `quality_review.md` - セキュリティ/コード品質の詳細化、優先度分類追加
- `task_planning.md` - 依存関係、リスク表記追加
## 実装対象ファイル
| ファイル | 主な変更 |
|----------|---------|
| `templates/code-intel/phase_contract.yml` | READY_PLAN/IMPL の payload と instruction 更新、エラーメッセージ8個追加 |
| `tools/session.py` | ChecklistItem データクラス追加、Task に checklist フィールド追加 |
| `code_intel_server.py` | validate_evidence_*, validate_task_completion 関数追加 |
| `templates/code-intel/task_planning.md` | Checklist Requirements セクション追加 |
## キーポイント
### 1. タスク構造
```python
# READY_PLAN 時
{
"id": "task_1",
"description": "認証機能を実装",
"status": "pending",
"checklist": [
{"item": "auth.py に login() を追加", "status": "pending"},
{"item": "auth.py に logout() を追加", "status": "pending"}
]
}
# READY_IMPL 完了時
complete_task(task_id="task_1", data={
"summary": "完了",
"checklist": [
{"item": "auth.py に login() を追加", "status": "done", "evidence": "auth.py:42-58"},
{"item": "auth.py に logout() を追加", "status": "skipped", "reason": "既存のlogout_allを再利用"}
]
})
```
### 2. evidence フォーマット(厳密)
```
有効: auth.py:42, src/auth.py:42-58
無効: auth.py の 42行目, auth.py:42〜58
正規表現: r'^[\w./\-]+\.\w+:\d+(-\d+)?$'
```
### 3. 検証ロジック
1. 全項目が報告されているか
2. pending のまま報告していないか
3. done の場合:
- evidence 必須
- evidence フォーマット検証
- ファイル存在チェック
- 行番号範囲チェック
- 空実装検出(pass/TODO/NotImplementedError)
4. skipped の場合:
- reason 必須(10文字以上)
### 4. エラーメッセージ
`_get_message()` で phase_contract.yml から取得。kwargs でプレースホルダー置換:
```python
msg = _get_message("failures", "READY", "checklist_evidence_format_invalid", evidence=item["evidence"])
```
## 実装順序(推奨)
1. **session.py** - ChecklistItem, Task 更新(データモデル)
2. **phase_contract.yml** - エラーメッセージ追加
3. **code_intel_server.py** - 検証関数とハンドラ更新
4. **task_planning.md** - プロンプト更新
5. **テスト** - 13項目
6. **コピー** - .code-intel/, sample/.code-intel/
7. **ドキュメント** - README, DESIGN
## 参照ファイル
- 計画書: [docs/updates/v1.16_ja.md](v1.16_ja.md)
- 現在の phase_contract: [.code-intel/phase_contract.yml](../../.code-intel/phase_contract.yml)
- 現在の session.py: [tools/session.py](../../tools/session.py)
- 現在の server: [code_intel_server.py](../../code_intel_server.py)
## 注意事項
- evidence 検証でファイルを読む際は相対パスを適切に解決すること
- エラーメッセージには必ず修正方法を含める
- テストでは実際にファイルを作成して evidence 検証をテストする