docs: changelog, progress and device checklist for the 09-29 evening surface feedback (BUG-1100..1104)

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:
Jesse_Chen
2026-09-29 20:29:32 +08:00
co-authored by Claude Opus 5.5
parent fee9ddc8a1
commit a383cc95b5
4 changed files with 55 additions and 0 deletions
+9
View File
@@ -1,5 +1,14 @@
# 印度占星 Skill 更新日志
## 2026-09-29 — 星盘图标改为气泡说明、星图外框贴合、「那一刻的天空」按钮立即出现、报告卡片文案、新建对话提速(待验收)
- 星盘页:鼠标停在行星、上升、星座编号等标记上,旁边弹出小气泡说明;手机上轻点标记弹出,点别处或 3 秒后自动消失。盘下那句「停在或轻点盘内标记可查看说明。」去掉(BUG-1101)。
- 星盘页:电脑上星图外面的卡片贴合星图,不再是一张宽卡片中间放一张小盘(BUG-1100)。
- 「那一刻的天空」按钮随星盘一起出现,不再晚一秒;加了星星图标和浅色底,更显眼。星空图还没画好时点它,画好就直接开始播放(BUG-1102)。
- 「我的报告」:生成卡片和顶栏之间留出间距;卡片标题改为「完整本命报告」,说明写清 6 章、中英两版,按钮仍是「生成报告」(BUG-1103)。
- 从星盘、星历、报告、档案页第一次点「新建对话」:这些页面空闲时会先在后台把首页要用的数据准备好,点进去不再放两三秒的加载动画(BUG-1104)。
- Skill 版本不 bump。不改数据库结构。
## 2026-09-29 — 个人报告同时有中文版和英文版(待验收)
- 新生成的报告自动带中英两版,不用另外操作。报告页右上角「中文 / English」一键切换,刷新或把链接发给别人时停在同一个版本(地址里带 `?lang=en`)。
@@ -0,0 +1,28 @@
# PROGRESS · 星盘 / 报告 / 新建对话 晚间反馈 · 2026-09-29
> 产品 2026-09-29 晚反馈(截图两张)。执行:Claude 直接执行(第 1~5 条)+ fork 子代理(第 6 条),Claude 合并复验。分支 `codex/surface-feedback-20260929`,基线 `origin/staging` = `0120765f`。BUG-1100~1104。
> 产品选定:报告卡片「标题写内容、按钮写动作」;星图外框「卡片贴合星图」。
| # | 反馈 | 根因 | 修复 | BUG |
|---|---|---|---|---|
| 1 | 星图外框难看 | `64aa0ec2` 把 440px 上限加在外框内的绘图区,外框仍随列拉宽 | 上限移到外框(含内边距与边框),手机不设上限 | 1100 |
| 2 | 悬浮要气泡、手机怎么设计、去掉提示句 | `64aa0ec2` 实现为盘下状态行 + 默认提示句 | 锚定气泡(上方优先 / 近顶翻下 / 左右夹在框内 / 不接收指针);手机轻点出现、点外或 3 秒关;删提示句;等待骨架的文字改为叠在空盘中央,揭幕不跳高 | 1101 |
| 3 | 天空按钮慢一秒、不明显 | 按钮等封面 PNG 画好才渲染 | 星盘就绪即显示;早点击被记下、画好即开播;星芒 + accent 浅底 | 1102 |
| 4 | 卡片贴顶栏 | BUG-1094 漏上外边距 | `--space-6` | 1103 |
| 5 | 标题与按钮重复 | 文案 | 「完整本命报告」+ 说明一句 + 「生成报告」 | 1103 |
| 6 | 新建对话要等两三秒 | BUG-1040 暖快照只在首页冷启动过一次后才有;从次级页开始的标签页第一次必冷启动 | 次级页空闲时只读预取模型目录与校正入口摘要,走冷启动同一套函数写暖快照;本机性能标记 `jyotisha:new-chat` | 1104 |
## 既有断言改动(原值 / 新值 / 原因)
| 文件 | 原值 | 新值 | 原因 |
|---|---|---|---|
| `chart-page-mobile-width-20260929.test.ts` | 桌面 `.chart-page-vedic-plot` max-width 440px;`.chart-page-vedic-stage` 全局不得有 max-width | 桌面外框 `.chart-page-vedic-stage` max-width = 440px + 内边距 + 边框;桌面绘图区不设上限;外框在桌面以外仍不设上限 | BUG-1100 |
| `birth-sky-replay-20260929.test.ts` | `onClose={() => setOpen(false)}` | `onClose={() => setWanted(false)}`,另断言 `open = wanted && cover !== null` | BUG-1102 |
| `sidebar-contract.test.ts`(子代理) | 新建对话点击处理函数名 | 新函数名(记录耗时起点) | BUG-1104,说明写在测试内 |
| 测试宿主 `react-client-lifecycle-test-support.ts` | 无 `getBoundingClientRect` | 返回全零矩形 | 让按矩形定位的组件能在宿主里运行 |
`chart-symbol-help.test.tsx` 原 4 条断言一字未改,全部通过(读屏 `role="status"` 仍给出同一句话)。
## 验证
(Claude 实跑,见下)
+1
View File
@@ -260,6 +260,7 @@
| `TASK-rectification-typed-event-scoring-research-20260929.md` | `PROGRESS-rectification-typed-event-research-20260929.md` | **打字经历按选择题规则计分(离线研究,不上线)**:计分通道不对称 + 已入账年份挡题;R0 学业质量题措辞 / 年精度显示成 1 月(冻结文件,需重新冻结) | 已验收(Claude 2026-09-29 合并验收:全量前端 4302/24 与基线同 24 条环境失败、tsc 0、lint 0 error、`/` Static、gzip +0.16%、快速门 pytest 1001 passed、两份回放复跑一致),待部署核对 | BUG-1088、1089 |
| `TASK-report-reader-polish-20260929.md` | `PROGRESS-report-reader-polish-20260929.md` | **报告页打磨**:生成入口挪进页面主体(删标题栏按钮)、详情页到底部按钮(懒渲染一次到底)、导出按钮带文字、目录一级/二级分层、去掉「字段」与 RL/NL 缩写表头、状态列同义重复去重、报告表格淡底色、分块导出显示真实文件大小 | Claude 直接执行并自验(tsc 0、lint 0 error、全量 fail 与基线同 24 条、`/` Static、gzip +7 B、快速门 Python 1000 passed),已部署 staging `d7772011`,真机欠 | BUG-1092~1094 |
| `TASK-report-english-edition-20260929.md` | `PROGRESS-report-english-edition-20260929.md` | **报告中英两版**:同一次引擎计算渲染 zh/en 两遍(不用模型翻译),瑜伽库 477 条补英文、模板与前端表头英文化;中文逐字节不变、英文零汉字、两版数字序列一致;阅读页 `?lang=en` 切换,导出当前语言 + 「问 AI 建议导出英文版」提示;旧报告不补英文 | Claude 直接执行(含两个 fork 子代理)并自验(tsc 0、lint 0 error、全量 fail 与基线同 24 条、`/` Static、gzip +0.06%、Python 定向全绿),已部署 staging `d7772011`,真机欠 | — |
| —(产品晚间反馈,直接执行) | `PROGRESS-surface-feedback-20260929.md` | **星盘气泡 / 外框 / 天空按钮 / 报告卡片 / 新建对话提速**:图标说明改锚定气泡(手机轻点、3 秒自关)、删提示句;印度盘外框贴合;「那一刻的天空」随星盘出现;报告卡片间距与文案;次级页空闲时预取首页暖快照 | Claude 直接执行 + fork,自验中 | BUG-1100~1104 |
| `TASK-serif-headings-20260928.md` | `PROGRESS-serif-headings-20260928.md` | **全站标题改用自托管宋体、正文保持黑体**:产品推翻 BUG-737「CJK 不用衬线」结论(保留「声明的字体必须可加载」「不落系统宋体」两条);Noto Serif SC SemiBold 按通用规范汉字表 6500 字 unicode-range 切片自托管(改名 Jyotisha Serif SC),swap 不 preload;首页宋体流量 ≤300 KB;先于天空封面单 | 已实现待验收(分支 `codex/serif-headings-20260928`,未推送) | 不开新 BUG;BUG-737 追加说明 |
| `TASK-cend-ui-claude-alignment-20260916.md` | `PROGRESS-cend-ui-r1/r2/r3-20260916.md` | **C 端界面向 claude.ai 产品界面对齐(三轮串行 R1→R2→R3,都动 `globals.css`,不得并行)**:根因是 `frontend/CLAUDE_DESIGN.md` 扒的是 **claude.com 营销官网**,它自己在 Known Gaps 里写明 claude.ai 产品界面不在范围内,而 `DESIGN.md:3` 把它当成了产品界面的实现契约。**R1**:`--font-display` 里 Tiempos Headline / StyreneB **从未加载**(无 `@font-face`、`public/` 无字体、`layout.tsx` 只 vendor 了 Inter),中文标题全站落到 **宋体 / SimSun**,波及 20 处含助手回答的 h2/h3(BUG-737);亮色强调色 `#85432f` 与暗色 `#d78064` 不同源,产品拍板亮色换 **Claude coral `#cc785c`**,**易漏点**是 `globals.css:16` 的 `--color-ring` 硬编码在 `@theme inline` 里不跟随 `:root`,另有第四个 `:root` 亮色块(`:4358`)必须同步(BUG-738);`.composer-footer` 常驻 44px + 顶栏 68px + `--composer-reserve` 148px,每屏固定吃掉 216px,模型选择器移进输入框内部、删掉底栏、顶栏收到 46px 并删「分析对象」副标题。**R2**:空状态是营销落地页(hero 卡 + 两张 132px 入口大卡 + 3 列 156px 主题卡),输入框被压在 **800px 以上**内容之下,重排成「问候 + 居中输入框 + 两枚入口 pill + 一排 chip」。**R3**:侧栏两个 `<details>` 拍平成一条「最近」、星盘的两个入口(侧栏分组 + 账户菜单)收敛到一处、删掉逐条助手头像。**决策记录 D3 推翻 DESIGN.md「报告强调色与应用同源」一句**(报告刻意保留深棕)。原型图 https://claude.ai/code/artifact/da275da6-2954-4f50-99aa-32bb8694d38b(三套画面 + 明暗,页面标题就是建议字体栈的实际渲染)。环境缺口:无登录态无 Chrome,四项真机观感留 `docs/testing/`。BUG 段 737–738 | 待领取 | — |
| `TASK-cend-surfaces-claude-alignment-20260916.md` | `PROGRESS-cend-shell-20260916.md`、`PROGRESS-cend-report-20260916.md`、`PROGRESS-cend-rectification-20260916.md`、`PROGRESS-cend-chart-eph-20260916.md` | **次级页面对齐(上一单的续篇,R4→R5/R6,R7、R8 可并行)**:星盘 `/chart`、星历 `/ephemeris`、报告 `/reports` **各是脱离 app 外壳的独立全屏页**,顶部只有一个「返回对话」链接、侧栏整个消失,且三家各写了一套一模一样的 `*-shell`/`*-topbar`/`*-hero` 骨架——与上一单 E5 同根因(营销站 band 结构被套到产品界面)。**R4** 抽只读导航外壳 `AppNavRail`(只用现成的 `GET /api/sessions` + `GET /api/account`,会话行走 `sessionHref` 跳 `/?c=<uuid>`;**刻意不带**重命名/删除/收藏/归档——那套连着 `Home()` 的乐观更新与回滚,搬过来会撞 useState 增长门禁)。**R5** 星盘五 tab 下划线化 + 参数合表 + 行星表横向滚动;星历日期导航改 `‹ 日期 ›`。**R6** 报告中心卡片网格改行式列表;阅读页加常驻目录。**R7** 生时校正把可信区间从盘面板标题行提成常驻条(窄屏 `.is-compact` 下盘面板是 overlay,现在默认看不到区间),五个 `technique-audit` 折叠块收成两段。**R8** 设置内容区收窄(880px 弹窗里表单铺了 690px)、套餐卡三修饰符收敛成两态。**已解锁**:原挡路的设置单已于 `111b4a84`(BUG-698)合入。**两条不得回退**:BUG-698 的 `@supports (height: 1dvh)` 写法(重复声明回退会被 Lightning CSS 折叠)、BUG-616/617 的报告盘面 grid 实现。默认不占 BUG 号 | **R4–R8 全部已实现并验收合入** | R4:抽出 `AppNavRail`(只读,两个 GET,零写操作)+ `SecondaryShell`,三个次级页并入 app 外壳并删掉各自的 shell/topbar/hero;四个路由渲染标记**完全不变**(`/` `/chart` `/ephemeris` 仍 Static);CSS gzip −0.25%。`/reports/[reportId]` 留给 R6 与目录一起做。两处自身健壮性问题被测试抓到:`usePathname()` 可为 null、`fetch` 可能不存在。差点弄丢 BUG-717 的 eyebrow 文案(已放回)。R8:表单分区收窄到 440px(列表分区不变)、套餐卡三修饰符收敛成互斥的 `is-current` / `is-recommended`,`--highlighted` 删除改为滚动定位;手机端 `order:-1` 改挂 `[data-plan-alias]`(版位不是状态)。测试 3350→3354(净增 4),失败清单与基线逐条一致;`/` 仍 Static;我的干净构建实测 CSS gzip −3 字节。**遗留待产品拍板**:`?plan=` 深链现在完全没有视觉指向,只有滚动位置。R6:报告中心卡片网格改行式列表、阅读页并入外壳并把目录挪到右侧常驻。**任务书 E10 过期**——目录在 `cfcd369d` 就已存在,本轮是挪位置定稿而非从零加。挂外壳带出一个真实打印风险已处理:`.chat-app`/`.chat-panel` 是 `height:100%;overflow:hidden`,裸 `window.print()` 会把九节报告裁成一页,阅读页因此多挂一条只在挂载期生效的 print 样式解锁外壳。「生成中的分节进度」做不了——`REPORT_LIST_COLUMNS` 不返回节数,按 VOICE.md 不许前端编。R7:区间常驻条与盘面折叠收敛。**任务书 E9 也不准确**——对话区顶部早有常驻条 `RectificationTimeline` 且窄屏可见,真正只在盘面标题行的是**代表分钟**;因此没另造第二条,在既有条上补齐代表分钟与已答题数(与盘面同一次 `workingRectificationTime()` 调用)。折叠块实际是 **8 个**不是 5 个。**触发让步顺序第 5 条**:收窄进度未做——服务端无该字段,且 `candidate_range` 会放宽(BUG-572),前端相减会把一次放宽报成收窄,已写进 `BLOCKED.md`。顺带修掉一个**静默失效的旧断言**(`slice(indexOf(A), indexOf(B))` 在 B 改名后变成几乎整份文件,四条 `doesNotMatch` 假通过)|
+17
View File
@@ -0,0 +1,17 @@
# 真机清单 · 星盘气泡 / 外框 / 天空按钮 / 报告卡片 / 新建对话提速(2026-09-29 晚)
电脑(Chrome 或 Safari)和手机(iPhone Safari)各走一遍。
| # | 操作 | 应该看到 | 结果 |
|---|---|---|---|
| 1 | 电脑打开「星盘」 | 星图外面的卡片刚好包住星图,左右没有大片空白;盘下没有「停在或轻点……」那句话 | |
| 2 | 电脑鼠标停在任意行星符号上 | 符号正上方弹出小气泡(如「☉ 太阳 …」);移开就消失;停在最上面一排的符号时气泡出现在下方;停在最左 / 最右的符号时气泡不出界 | |
| 3 | 电脑鼠标停在盘角的数字上 | 气泡说明「N · X座,星座编号,不是宫位编号」 | |
| 4 | 手机打开「星盘」,轻点一个行星 | 符号旁弹出气泡;手指离开后仍在;点盘外空白处消失;不点也会在约 3 秒后消失 | |
| 5 | 手机轻点西洋盘里的一颗行星 | 气泡出现在那颗行星旁;原来的相位筛选照常 | |
| 6 | 进入「星盘」页,看右上角 | 「那一刻的天空」按钮和星盘同时出现,带星星图标和浅色底 | |
| 7 | 星盘一出现就立刻点「那一刻的天空」 | 不报错、不转圈,星空动画很快开始播放 | |
| 8 | 打开「我的报告」 | 卡片和顶部栏之间有间距;卡片标题「完整本命报告」,下面一行说明,按钮「生成报告」 | |
| 9 | 在「星盘」页刷新浏览器,等 3 秒,再点侧栏「新建对话」 | 直接进入首页,不出现加载动画 | |
| 10 | 同上但换成「我的报告」页刷新后等 3 秒再点「新建对话」 | 同上 | |
| 11(可选) | 电脑打开开发者工具 Performance 面板录一次第 9 步 | 能看到 `jyotisha:new-chat (warm)` 标记及耗时 | |