docs(tasks): report language switch leaves the old edition on screen (BUG-1126)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
da3ed2f3ab
commit
5604c11bb4
@@ -15031,3 +15031,17 @@
|
||||
- 防复发:准备阶段里「还不知道」必须是 pending,不得写成 unavailable;首页揭幕后出现的文字一律带进入动效。
|
||||
- 相关记录:BUG-1040(暖快照)、BUG-1104 / 1109 / 1110(今日句库与预取)
|
||||
- 修复版本:分支 `codex/loading-motion-20260930`
|
||||
|
||||
## BUG-1126 | 报告阅读页切换中文 / English 后正文不换
|
||||
|
||||
- 状态:investigating(根因已复现并验证修复方向;待执行,任务书 `docs/tasks/TASK-report-language-switch-stale-20260930.md`)
|
||||
- 首次发现 / 最近更新:2026-09-30 / 2026-09-30
|
||||
- 影响面:`frontend/src/components/personal-report/personal-report-page.tsx`(`PersonalReportPage` markdown-ready 分支);所有带英文版的新报告。
|
||||
- 现象:点 English 后地址栏变为 `?lang=en`、开关显示已选中,但正文和目录仍是中文;带 `?lang=en` 打开后点中文,正文仍是英文。导出的英文版正常。桌面与 iPhone 均复现。
|
||||
- 触发条件:报告同时带核对表(`factTables` / `factTablesEn`,真实报告都有),在阅读页切换语言。
|
||||
- 根因:`PersonalReportMarkdownView` 与 `ReportFactTables` 是同级元素,key 都是 `shown`,发生重复;React 清不掉旧节点,旧语言正文留在最上面,新语言正文追加在后面(Claude 在 staging 线上 JS 上复现:正文区块 1→2→3 份,开发版报 `Encountered two children with the same key`)。响应里没有核对表时不复现,所以只测组件的用例没有拦住。
|
||||
- 修复:待执行(两处 key 改成互不相同;Claude 已在复现环境验证可行)。
|
||||
- 验证:待执行(整页切换回归测试,先红后绿)。
|
||||
- 防复发:同一父级下按语言重新挂载的多个子元素,key 必须带各自前缀;语言切换要有整页测试,数据带齐核对表。
|
||||
- 相关记录:BUG-1106~1108(跨语言保留章节);引入提交 `b2ad772e`
|
||||
- 修复版本:—
|
||||
|
||||
Reference in New Issue
Block a user