## 1. 数据模型与数据库迁移

- [x] 1.1 在 analysis_models.py 中扩展 TradeRecord 模型，新增 reflection_status 字段
- [x] 1.2 创建 TradePair 模型（交易配对表）
- [x] 1.3 创建 TradeReflection 模型（交易反思表）
- [x] 1.4 创建 DailyReflection 模型（当日反思表）
- [x] 1.5 创建 TradeTag 模型（标签定义表）
- [x] 1.6 创建 TradeRecordTag 模型（交易-标签关联表）
- [x] 1.7 创建 TradeExperience 模型（经验教训表）
- [x] 1.8 运行数据库迁移，验证所有表结构正确创建

## 2. 交易配对引擎

- [x] 2.1 实现自动配对逻辑（按品种+方向+时间段，FIFO 规则）
- [x] 2.2 实现连续开仓合并为一个头寸的逻辑
- [x] 2.3 实现手动创建配对 API（POST /trade-pairs）
- [x] 2.4 实现修改配对 API（PUT /trade-pairs/{id}）
- [x] 2.5 实现删除配对 API（DELETE /trade-pairs/{id}）
- [x] 2.6 实现配对盈亏计算逻辑
- [x] 2.7 编写配对逻辑单元测试（FIFO、跨日、多次开仓场景）

## 3. 反思 API

- [x] 3.1 实现创建反思 API（POST /reflections）
- [x] 3.2 实现更新反思 API（PUT /reflections/{id}）
- [x] 3.3 实现查询反思 API（GET /reflections?trade_id=）
- [x] 3.4 实现创建当日反思 API（POST /daily-reflections）
- [x] 3.5 实现更新当日反思 API（PUT /daily-reflections/{id}）
- [x] 3.6 实现查询当日反思 API（GET /daily-reflections/{date}）
- [x] 3.7 实现按天获取交易+配对+反思状态 API（GET /daily-trades/{date}）

## 4. 标签系统 API

- [x] 4.1 实现获取所有标签 API（GET /tags），含预设标签初始化
- [x] 4.2 实现创建自定义标签 API（POST /tags），含去重逻辑
- [x] 4.3 实现交易打标签 API（POST /records/{id}/tags）
- [x] 4.4 实现移除标签 API（DELETE /records/{id}/tags/{tag_id}）
- [x] 4.5 编写标签去重和关联单元测试

## 5. AI 重新分析

- [x] 5.1 扩展 ai_analysis.py，新增反思增强分析提示词构建函数
- [x] 5.2 实现 AI 重新分析 API（POST /reanalyze）
- [x] 5.3 实现多版本 AI 分析结果存储逻辑
- [x] 5.4 实现经验提炼建议解析和保存
- [x] 5.5 编写 AI 提示词构建单元测试

## 6. 经验库 API

- [x] 6.1 实现获取经验列表 API（GET /experiences），支持标签/类型/关键词筛选和分页
- [x] 6.2 实现创建经验 API（POST /experiences）
- [x] 6.3 实现更新经验 API（PUT /experiences/{id}）
- [x] 6.4 实现删除经验 API（DELETE /experiences/{id}）
- [x] 6.5 实现按标签统计经验数量 API

## 7. 前端 - 按天交易视图

- [x] 7.1 创建日期选择器组件，支持前后切换日期
- [x] 7.2 实现按天获取交易+配对数据的前端调用
- [x] 7.3 实现交易配对卡片展示（开仓→平仓箭头样式）
- [x] 7.4 实现未配对交易单独展示
- [x] 7.5 实现手动配对交互（选择开仓+平仓→确认配对）
- [x] 7.6 实现当天统计卡片（总盈亏、交易笔数、胜率等）

## 8. 前端 - 反思编辑面板

- [x] 8.1 创建反思编辑 Modal 组件
- [x] 8.2 实现模板字段表单（入场理由、时机评价、仓位管理、出场理由、纪律评分）
- [x] 8.3 实现自由反思多行文本框
- [x] 8.4 实现反思保存 API 调用
- [x] 8.5 实现「保存并 AI 分析」按钮
- [x] 8.6 实现反思状态指示器（未反思/待分析/已完成）

## 9. 前端 - 标签系统

- [x] 9.1 创建标签选择组件（预设标签按分类展示）
- [x] 9.2 实现自定义标签输入框
- [x] 9.3 实现交易打标签交互
- [x] 9.4 实现已选标签展示和移除

## 10. 前端 - AI 分析结果展示

- [x] 10.1 创建 AI 分析结果展示面板
- [x] 10.2 实现多版本分析结果切换
- [x] 10.3 实现经验提炼建议展示和编辑
- [x] 10.4 实现经验保存交互

## 11. 前端 - 当日反思

- [x] 11.1 创建当日反思编辑区域
- [x] 11.2 实现多维度表单（情绪状态、市场判断、纪律评分、总体评分、总结、改进方向）
- [x] 11.3 实现当日反思保存和展示

## 12. 前端 - 经验库页面

- [x] 12.1 创建经验库独立页面/Tab
- [x] 12.2 实现经验列表视图（卡片样式）
- [x] 12.3 实现搜索框和筛选栏（标签筛选、类型筛选）
- [x] 12.4 实现分页加载
- [x] 12.5 实现经验详情弹窗（含来源交易链接）
- [x] 12.6 实现时间线视图切换
- [x] 12.7 实现分类视图切换（按标签分组）

## 13. Demo 交互确认

- [x] 13.1 创建 Demo 页面（使用静态模拟数据）
- [x] 13.2 实现按天查看交易 + 配对展示 Demo
- [x] 13.3 实现编辑反思 + 打标签 Demo
- [x] 13.4 实现触发 AI 重新分析 Demo（模拟响应）
- [x] 13.5 实现经验提炼和保存 Demo
- [x] 13.6 实现经验库浏览和筛选 Demo
- [x] 13.7 用户确认 Demo 交互流程

## 14. 集成测试与边界测试

- [x] 14.1 编写反思→AI 分析→经验保存完整流程集成测试
- [x] 14.2 编写跨日配对边界测试（周末/节假日）
- [x] 14.3 编写空反思 AI 分析测试
- [x] 14.4 编写经验库分页/搜索/筛选测试
- [x] 14.5 运行所有测试并修复失败项
