4.6 KiB
4.6 KiB
切片 09:我的复盘、自选、笔记、交易日志、提醒与复盘助手
基线:
b3df070(切片 08) 回档标签:xiaobai-preservation-slice-09-20260731结论:源码、API、数据库、账户隔离、真实页面及全量回归通过;最终视觉仍等待全站人工验收
1. 原实现归位
本切片只机械移动原版复盘、提醒和复盘助手实现,没有从next/取用代码,也没有修改自选、笔记、交易日志、提醒、会员灰化、LLM 上下文或流式协议。
| 原位置 | 新的唯一实现位置 | 兼容方式 |
|---|---|---|
assistant_agent.py |
app/backend/features/review/agent.py |
根级模块指向同一模块对象 |
DashboardService提醒方法 |
app/backend/features/alerts/facade.py |
AlertServiceMixin |
DashboardService复盘方法 |
app/backend/features/review/service.py |
ReviewServiceMixin |
ReviewDatabase提醒方法 |
app/backend/features/alerts/repository.py |
AlertRepositoryMixin |
ReviewDatabase复盘方法 |
app/backend/features/review/repository.py |
ReviewRepositoryMixin |
| 五个 POST/流式入口 | app/backend/features/alerts/http.py、review/http.py |
HTTP Mixin |
原版已经存在的AlertService、TradeJournalService、Repository Port 与 SQLite Adapter 继续保留为唯一底层实现。本切片没有制造第二套提醒或交易日志服务。
2. 源码等价与必要适配
assistant_agent.py与正式 Agent 文件 SHA-256 一致,根级兼容模块与正式 Agent 是同一模块对象。- 5 个提醒编排方法、8 个复盘编排方法、6 个提醒 Repository 方法和 13 个复盘 Repository 方法均与原版无位置信息 AST 一致。
- 五个 HTTP 方法只把全局
SERVICE改为 Mixin 的self.application_service;状态码、字段、异常和流式事件写法不变。 backend.features.alerts和backend.features.review仅对旧底层服务采用延迟导出,避免database -> feature package -> sqlite adapter -> database初始化循环;外部from ... import AlertService/TradeJournalService接口不变。- 公共
RequestHandler._write_stream_event继续保留,因为问师和复盘助手共同使用,且现有测试直接覆盖;统一传输层留到切片 10。
3. API 与数据库差分
- 原版
8790和迁移版8791使用正式数据库的两个临时副本,未写正式数据库。 - 固定日期下自选、全部复盘笔记、交易日志、提醒中心及复盘助手历史共 5 个鉴权接口,状态码与业务 JSON 完全一致。
- 两版均为 62 个 schema 对象;
watchlist、review_notes、trade_entries、alerts、assistant_messages、users、system_settings和llm_usage逐行一致。 - 真实浏览器在迁移版临时副本中新增一条交易记录,弹窗正确关闭并显示短提示“交易记录已保存”;没有写正式数据库。
- 未调用真实
/api/assistant/chat,避免外部模型波动和 LLM 用量写入;Agent、流式累积与权限路径由源码等价和单元测试覆盖。
4. 真实浏览器检查
- 1920×1080 检查我的复盘完整布局,自选 6 只、交易日志、每日复盘三个独立输入框和最近复盘均可访问,无横向溢出。
- 添加自选与交易日志弹窗居中可用;交易日志保存后没有出现超长空弹窗。
- 提醒中心正常展示筛选、新建提醒和提醒记录。
- 管理员会员账号显示完整可用的复盘助手;临时普通账号显示相同界面、顶部“复盘助手仅对会员开放”,下方快捷问题、输入框和发送按钮均灰化禁用。
- 临时普通账号自选和交易日志均为空,证明用户私有数据没有串到管理员账号。
- 夜间模式背景为
rgb(18, 20, 22),1920×1080 页面无横向溢出,控制台无错误。 - 截图
review-workspace-night-1920x1080.pngSHA-256:bc803305a391930a0aafd68062bab6de86eca14612799eebfda220cf2ad0798e。
5. 自动验证与保留边界
| 验证 | 结果 |
|---|---|
原版python -m unittest discover -s tests -q |
231 项通过 |
迁移版python -m unittest discover -s tests -q |
287 项通过 |
python -m unittest tests.test_preservation_slice_review_alerts -q |
7 项通过 |
npx.cmd playwright test --reporter=dot |
45 项通过(2.2 分钟) |
git diff --check |
通过 |
- 前端 DOM、页面 JS、CSS 与移动端行为未改动,统一归位延至切片 10。
demo_data.py、static/heaven-loading.js、五个疑似无引用前端函数和wencai_saved_queries继续保留到切片 11 试删。- 没有修改
next/、正式数据库、Docker/NAS 或8765服务。