docs: BUG-1043..1046 deployed (f1d16405)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
f1d1640572
commit
fe76d54795
+4
-4
@@ -13962,7 +13962,7 @@
|
||||
|
||||
## BUG-1043 | 直接打开普通咨询会话后,滚动锚的监听从未挂上
|
||||
|
||||
- 状态:investigating(已修复、本地真实浏览器验证通过;等待 Claude 验收与 staging 部署后真机复核)
|
||||
- 状态:resolved(Claude 2026-09-26 独立复验通过;门禁 run 2925、迁移 2926 成功并已部署,`/api/health` `gitCommit` = `f1d16405`;真机清单由产品走)
|
||||
- 首次发现 / 最近更新:2026-09-26 / 2026-09-26
|
||||
- 影响面:`frontend/src/hooks/use-conversation-scroll-anchor.ts` 的挂载逻辑(scroll 监听、ResizeObserver 跟随);首页 `page.tsx` 的加载闸门之后才挂载的 `.conversation`。生时校正面不受影响(组件在揭幕后才挂载,容器从首帧就在)。
|
||||
- 用户现象:刷新页面、经 `?c=` 深链或启动落点直接进入一个已有的普通咨询会话后:没有落到最新一条(停在历史中段);发一个短问题,回答很短也会出现「跳到最新」;上下滚动该按钮不消失;点它之后回答继续变长也不会跟随。
|
||||
@@ -13977,7 +13977,7 @@
|
||||
|
||||
## BUG-1044 | 生时校正长回答钉顶后又被拉到底部
|
||||
|
||||
- 状态:investigating(已修复、本地真实浏览器验证通过;等待 Claude 验收与 staging 部署后真机复核)
|
||||
- 状态:resolved(Claude 2026-09-26 独立复验通过;门禁 run 2925、迁移 2926 成功并已部署,`/api/health` `gitCommit` = `f1d16405`;真机清单由产品走)
|
||||
- 首次发现 / 最近更新:2026-09-26 / 2026-09-26
|
||||
- 影响面:`useConversationScrollAnchor` 的 `holdUnpin` 解除条件;生时校正面(钉顶后静止距底 94px)。普通咨询静止距底约 198px,未触发,但同一逻辑也适用。
|
||||
- 用户现象:生时校正里发一句话,回答超过一屏时,本轮开头先被钉到顶部,回答一到视口就跳到最后一个字(BUG-930 想解决的现象)。
|
||||
@@ -13991,7 +13991,7 @@
|
||||
|
||||
## BUG-1045 | 生时校正打字回答后,同一轮里下一题出现两次(刷新后只剩一遍)
|
||||
|
||||
- 状态:investigating(修复已实现并有实时路径回归测试,本地 `next start` + 无头 Chrome 虚构数据复现并验证;staging 真机未走,未部署,不写 resolved)
|
||||
- 状态:resolved(Claude 2026-09-26 独立复验通过;门禁 run 2925、迁移 2926 成功并已部署,`/api/health` `gitCommit` = `f1d16405`;真机清单由产品走)
|
||||
- 首次发现 / 最近更新:2026-09-26 / 2026-09-26
|
||||
- 影响面:`frontend/src/lib/rectification-snapshot-messages.ts` `mergeTurnQuestions`(`rectification-agentic-chat.tsx` 的 `send` / `submitStructuredChoice` 结算后快照合并);服务端 `answer-choice.ts` `persistApplied` / `persistCollectDenialTurn` 的确定性回复正文(本轮不改)。
|
||||
- 用户现象:产品 09-26 staging 真机:打字回答一道待答选择题后,助手这一轮正文是「已记录,范围没变;…领先,…落后。」+ 下一题题干,下面又是同一句加粗题干和四个选项;刷新后只剩一遍。
|
||||
@@ -14006,7 +14006,7 @@
|
||||
|
||||
## BUG-1046 | 点选一道选择题后,同一道题又完整画了一张(未选中)
|
||||
|
||||
- 状态:investigating(H1 在虚构数据上已复现并修复;staging 真机当时的 POST 状态码未取证,H1/H2 以哪条为准待真机日志;未部署)
|
||||
- 状态:resolved(Claude 2026-09-26 独立复验通过;门禁 run 2925、迁移 2926 成功并已部署,`/api/health` `gitCommit` = `f1d16405`;真机清单由产品走)
|
||||
- 首次发现 / 最近更新:2026-09-26 / 2026-09-26
|
||||
- 影响面:`rectification-agentic-chat.tsx` `submitStructuredChoice` 失败分支、`send` 失败分支、`persisted_question` 兜底块;`rectification-snapshot-messages.ts` `appendUnseenAssistantTurns` / `placePersistedQuestion`。
|
||||
- 用户现象:产品 09-26 staging 真机:第 N 轮点选「B 发生过但程度较弱」(高亮),下面是操作按钮、「目前范围 14:35-15:05,还在核对」,再下面又出现完全相同的题干和四个选项(未选中)。
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
| 任务书 | 进度 | 主题 | 状态 | 落点 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| `TASK-rectification-dup-question-20260926.md` | `PROGRESS-rectification-dup-question-20260926.md` | **同一轮问题出现两次(BUG-1045,复发自 BUG-585,BUG-969 拼回题干、去重只在刷新路径)+ 同一道选择题连画两张(BUG-1046:提交失败不回滚本地已答 + 兜底问题块条件过宽;H2 漏收回合)**。先于 latency 单 | 已验收(Claude 09-26 直接执行:子代理复现 A 与 B-H1(选择题提交 409 / 网络错误不回滚本地已答);Claude 变基到含 BUG-1043/1044 的 staging 后独立复验 tsc/lint 0、全量 3981 条失败名单与基线逐条一致、四路由 ○、gzip 不变) | `e4c1c7a3`(推 staging 待部署) |
|
||||
| `TASK-rectification-dup-question-20260926.md` | `PROGRESS-rectification-dup-question-20260926.md` | **同一轮问题出现两次(BUG-1045,复发自 BUG-585,BUG-969 拼回题干、去重只在刷新路径)+ 同一道选择题连画两张(BUG-1046:提交失败不回滚本地已答 + 兜底问题块条件过宽;H2 漏收回合)**。先于 latency 单 | 已验收(Claude 09-26 直接执行:子代理复现 A 与 B-H1(选择题提交 409 / 网络错误不回滚本地已答);Claude 变基到含 BUG-1043/1044 的 staging 后独立复验 tsc/lint 0、全量 3981 条失败名单与基线逐条一致、四路由 ○、gzip 不变) | `e4c1c7a3`(已部署 `f1d16405`,health 一致) |
|
||||
| `TASK-rectification-latency-20260926.md` | — | **每轮等待过长(BUG-1047)**:一轮打字回答串行 5 次开思考的模型调用,分类在开流前且无超时。产品定:收尾两步不动、分类保持思考只加 10 秒超时、发出后立即出确定性进度句并按阶段更新;补埋点;服务端无口吻优化须 A/B 逐位一致。排在 dup-question 之后 | 待领取 | — |
|
||||
| `TASK-rectification-session-title-result-20260922.md` | `PROGRESS-rectification-session-title-result-20260922.md` | **校正会话标题改写结果(BUG-1001)**:BUG-988 把副标题改成最后活动时间后,标题里的日期成了重复;而 BUG-929 删掉 `uniquifySessionTitle` 之后,`resolveSessionTitle` 对校正入口只返回 `生时校正 · M月D日`,**同一天多条标题完全相同**(真机截图:9/17 三条同名、9/16 两条同名、9/14 一天 5 条);旧标题的钟点后缀是创建时间、副标题是最后活动时间,同一行两个对不上的时间。**产品 09-22 拍板**:D1 标题改为承载结果——有 `accepted_time`/`confirmed_time` 写 `生时校正 · HH:MM`,否则写 `candidate_range` 的 `生时校正 · HH:MM–HH:MM`(推翻 BUG-929 的日期口径,但「不得再加墙钟去重后缀」保留);D2 存量批量重算(推翻 BUG-929「旧标题不批量改」,先例 `20260916020000_rectification_session_title_repair.sql`);D3 今日节奏保留日期(我判定的例外);D4 只在结果变化时改 title,`open` 路径不动(对 BUG-699 边界的有限扩展)。**红线**:任何写标题的路径都不得 bump `updated_at`(否则 13 条历史会话集体跳顶、毁掉 BUG-988);标题算式必须只有一处实现(一个 SQL 函数,触发器与回填共用)——BUG-987/992 都栽在「两层规则各写一份」。T4 跨层对断不得让步。已 grep 出真正受影响的只有 7 个文件,Python 侧只查裸字符串、无需改。BUG 段 1001 起 | 已验收(Claude 09-25:单一 SQL 函数、不动 updated_at、手改名不覆盖、回填幂等) | `88fe67df`/`a94a1d67`(已部署) |
|
||||
| `TASK-rectification-convergence-20260830.md` | `PROGRESS-rectification-convergence-20260830.md` | 收敛重构 v2 | 已验收 | `3a4396a4`、`86ba17ee` |
|
||||
@@ -121,7 +121,7 @@
|
||||
|
||||
| 任务书 | 进度 | 主题 | 状态 | 落点 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| `TASK-scroll-anchor-hook-fixes-20260926.md` | `PROGRESS-scroll-anchor-hook-fixes-20260926.md` | **滚动锚两处老问题**:直接打开已有会话时监听未挂上(BUG-1043)、校正长回答钉顶后因 96px 阈值被拉到底(BUG-1044)。排在 BUG-1042 合入后。挂载改由容器元素本身驱动(每次提交比对元素 / active / resetKey);钉顶只由用户滚动手势解除 | 已验收(Claude 09-26 直接执行:子代理复现两处根因并修复;Claude 独立复验 tsc/lint 0、全量 3970 条失败名单与基线逐条一致、四路由 ○、gzip 不变;iOS 惯性滚动留真机清单) | `da2613ff`(推 staging 待部署) |
|
||||
| `TASK-scroll-anchor-hook-fixes-20260926.md` | `PROGRESS-scroll-anchor-hook-fixes-20260926.md` | **滚动锚两处老问题**:直接打开已有会话时监听未挂上(BUG-1043)、校正长回答钉顶后因 96px 阈值被拉到底(BUG-1044)。排在 BUG-1042 合入后。挂载改由容器元素本身驱动(每次提交比对元素 / active / resetKey);钉顶只由用户滚动手势解除 | 已验收(Claude 09-26 直接执行:子代理复现两处根因并修复;Claude 独立复验 tsc/lint 0、全量 3970 条失败名单与基线逐条一致、四路由 ○、gzip 不变;iOS 惯性滚动留真机清单) | `da2613ff`(随 `f1d16405` 部署,health 一致) |
|
||||
| `TASK-latest-turn-actions-gap-20260926.md` | — | **最后一轮正文与点赞 / 踩之间空大半屏**:BUG-930 钉顶留白(`min-height: 视口 − 本轮开头`)加在 `.message-assistant` 上,把兄弟节点 `.message-actions` 推到留白之后;改为加在整轮外层,按钮紧贴正文、空白落在后面;不动滚动 hook | 已验收(Claude 09-26 直接执行:子代理实现,Claude 独立复验 tsc/lint 0、全量 3961 条失败名单与基线逐条一致、四路由 ○、gzip 不变;CDP 实测间距 450–600px → 23px,钉顶仍在) | `080ea5ca`(已部署 `509987b9`,health 一致) |
|
||||
| `TASK-starter-home-polish-20260926.md` | `PROGRESS-starter-home-polish-20260926.md` | **首页开场小字与图标**:今日趋势(每日模型生成,非写死)移到问候下方副行;入口下方提示只在有未完成校正或非本人时出现,删两句固定文案并修正已校正仍显示首次文案的分支;今日星语图标 MoonStar、点数图标 Coins。排在 BUG-1038、1040 之后。分支误判实为入口摘要解析读错键名(BUG-1041) | 已验收(Claude 09-26 直接执行:子代理实现并查出 BUG-1041 入口摘要驼峰/下划线字段不一致;Claude 改恢复提示文案为「可以在历史对话里接着做」;独立复验 tsc/lint 0、全量 3960 条失败名单与基线逐条一致、四路由 ○、gzip 不变) | `f04da103`(已部署 `62d4c9c4`,health 一致) |
|
||||
| `TASK-latest-turn-actions-gap-20260926.md` | `PROGRESS-latest-turn-actions-gap-20260926.md` | **末轮回答与点赞一排之间大段空白**:BUG-930 的钉顶留白加在助手行上,把其后的 `.message-actions` 顶到留白之后;改加在整轮外层(`:last-child:has(.message-assistant)` + `align-content: start`),不改 hook。验证中另查出既有 BUG-1043(直接进入普通咨询会话时滚动锚监听未挂上)、BUG-1044(校正长回答钉顶后被拉到底),未修 | 待验收 | `codex/latest-turn-actions-gap-20260926`(BUG-1042) |
|
||||
|
||||
Reference in New Issue
Block a user