docs(05): 落「恢复锚点」(当前状态 / 已完成模块清单 / 待办 / 家务)—— 便于上下文压缩后接续
This commit is contained in:
1 parent
647cf47cf2
commit
92ee7fedbd
1 file changed
+48
@@ -676,3 +676,51 @@ PDF · 563 B · 24 字 · 已读入
|
||||
### 验收用的会话(**都留着,未清理**)
|
||||
|
||||
`E2E-DOC`(纯附件回合没助手消息的现场)、`E2E-PDF`(带 PDF 附件、回合正常)、`E2E-RETRY`(含一条**被编辑过**的消息 `W15-retry-2-EDITED`)。主人说清再清。
|
||||
|
||||
## ★ 当前状态与待办(恢复锚点 · 2026-10-04 深夜)
|
||||
|
||||
> **压缩/换会话后先读这一节**,它是对「此刻到底在哪」的一句话答案;细节在上面各批次里。
|
||||
|
||||
### 状态
|
||||
|
||||
- **`android` = `origin/android` = `647cf47`,工作区干净**,**831 测试 / 0 失败 / 0 错误**。
|
||||
- 可安装包:`app/build/outputs/apk/debug/app-debug.apk`。
|
||||
- 那轮「装机验收」的**四项全部有设备证据**(含 ① 的更正:本来就是好的,是我测量假象):见上一节「装机验收轮」。
|
||||
|
||||
### 本轮(W8→W22)已落地并推送的模块(一行一个)
|
||||
|
||||
| # | 内容 | 提交 |
|
||||
|---|---|---|
|
||||
| W8 | 设置页「版本」行 → **关于页** | `3ed2377`→`f24877d` |
|
||||
| W10 | **可观测性三帧**(metrics/trace/log)→ 概览实时刷新 + 最近日志 | `b5e6f78`→`93941cd` |
|
||||
| W9 | **文档附件全链路**(选文件 / 待发芯片 / 上传 / `chat.documents` / 气泡芯片 / 分享文件走文档) | `30180ab`→`ab76798` |
|
||||
| — | 契约 v0.59 已发布 → 更正旧注释;`devdocs/` **入库** | `2973391` `2369dd2` |
|
||||
| W13 | **队列满处置那条气泡**(`pending_full` / 定向 `chat_busy` 的 `clientMsgId`) | `3b4a790`→`9854cc4` |
|
||||
| W14 | **图片全屏查看** + 打开/保存 | `557ef3f`→`f109846` |
|
||||
| W15 | **重试复用幂等键**(按内容指纹) | `af11a94`→`8b90703` |
|
||||
| W16 | **会话内搜索**(顶栏入口 / 面板 / 点结果定位) | `23b46f9`→`46ac15a` |
|
||||
| W17 | 重试记忆改**多槽** | `d3fc0c8`→`440e441` |
|
||||
| W19 | **单条消息编辑与删除** | `3518917`→`ea16f48` |
|
||||
| W18 | **跟上 v0.61 的 `.pdf`**(App 内预览对非文本拒收,不再出乱码) | `48e4188`→`1f9d1dd` |
|
||||
| W21 | 重试记忆加 **10 分钟时间上界** | `8938fff`→`df63783` |
|
||||
|
||||
(W20/W22 是**修「非 bug」的空转**,零改动,见上一节的教训。)
|
||||
|
||||
### 待办(按优先级)
|
||||
|
||||
1. **`after` 正向增量**(`GET /sessions/{id}/messages?after=`;与 `q` 互斥)—— 本轮唯一还没动的原计划项。
|
||||
2. **W19 留下的两处**:① 编辑框里显示的是**原始 `content`(含 `<p>`/`<action>` 标记)**(剥标记再回写会静默丢掉旁白与动作)—— 要不要给「只显示纯文本」的编辑口径,**待主人拍板**;② **删除后抽屉里的「最后消息预览」不刷新**(本端只改了消息列表,没触发 `GET /sessions`)。
|
||||
3. **遗留 ①:连接所有权** —— 每个会话一个 `ChatScreen` 的 VM 各建一条 `ChatSocket`,而 VM 活在 Activity 级 `ViewModelStore` 里 ⇒ 访问过的每个会话都**永久留一条连接**(含各自的 `OkHttpClient` 与连接池),**删会话也不回收**。自然解法:**共享一条 socket + 按会话路由**。
|
||||
4. **`ChatSocket.sendInterrupt` 零调用方**(「切会话时打断」这个出口从未接线,是死 API)。
|
||||
5. `observability_audit` 帧(**后端未做**,审计仍是 REST);`POST /admin/users` 仍是 `501` ⇒ 铸不出 `viewer` 账号,viewer 降级只能单测背书。
|
||||
6. 子会话流程(主人已确认搁置)。
|
||||
|
||||
### 家务(等主人一句话)
|
||||
|
||||
- **三条验收会话留着没动**:`E2E-DOC` / `E2E-PDF` / `E2E-RETRY`(后者含一条被编辑过的消息)。要清就说。
|
||||
- **15+ 个 worktree**(W4–W22)都合并推送过、目录里是各自构建产物。要清的话**用 Git Bash 的 `rm -rf`**(Windows 直接用 git 自带的删会撞 `MAX_PATH`)。
|
||||
|
||||
### 与本轮配套的两条新纪律(已进上面的教训段,这里再点一次)
|
||||
|
||||
1. **动代码之前先用像素确认症状**;`uiautomator dump` 只用来取坐标。
|
||||
2. **症状与代码结构矛盾时,先怀疑自己的测量**。
|
||||
Reference in new issue
Block a user