feat(report): drop the report sky cover; docs, checklist and progress for M1–M5 (M5+M3)

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 08:41:27 +08:00
co-authored by Claude Opus 5.5
parent 60b5542b7d
commit 447a19b561
16 changed files with 236 additions and 357 deletions
+3 -7
View File
@@ -1170,15 +1170,11 @@ D40 / D45 / D60 的表格上方,出生时间不是「已校正」时多一句
- 重放层、画布与导出代码都在懒加载 chunk 里(`next/dynamic` + 动态 `import()`,`components/birth-sky/birth-sky-replay.tsx`),首页 `/` 不带它们。按钮本身是星盘页里的一个普通 `<Button>`(只在数据就绪时渲染)。
- 等待:没有等待态。按钮出现时数据与 PNG 已就绪;打开就开始放。
### 位置二:报告封面(2026-09-28 追加,TASK-birth-sky-followup-20260928 F1–F3)
### 位置二:报告封面(2026-09-28 追加;**2026-09-29 已去掉**)
产品选方案 A:报告只在「生成时的出生资料」与「现在的出生资料」一致时才有封面。
产品 2026-09-29 决定去掉报告里的星图封面(TASK-mobile-chart-and-confirmed-edit-20260929 M5,推翻 followup F2 / F3):报告页正文上方没有封面,打印 / PDF 第一页就是正文;`GET /api/reports/:id` 不再下发 `coverSubject`,读报告时也不再为比对去查人物资料。组件 `report-sky-cover.tsx` / `.css` 与 `lib/birth-sky/report-cover.ts` 已删除。
- **绑定:** 新生成的报告在文档 `subject.birthFingerprint` 里记下生成时的出生资料指纹(与星盘页 `profileFingerprint` 同一个函数、同取存储行、在时区补全之前取)。普通报告、分章报告、长报告三条生成路径都写;指纹不进给模型的证据包。旧报告没有这个字段,**永远没有封面**,不补算、不回填;不改表结构。
- **比对在服务端:** `GET /api/reports/:id` 读当前人物的指纹,一致时 `report.coverSubject` = 人物 id(本人为 `"self"`),其余一律 `null`(不一致、缺字段、人物不是自己的、已删除、读不到)。浏览器拿不到指纹,也拿不到任何出生资料。
- **屏幕:** ready 态正文最上方一块 `<figure>`:`night` palette,宽随正文列,3:4,圆角 `--radius-md`,下接正文 `--space-6`。封面下没有按钮。
- **打印 / PDF:** 同一次取数同时画一张 `paper` palette 的图,只在打印时显示;封面独占 A4 第一页(`break-after: page`,高 246mm 居中,恰好放进报告 `@page` 的 186 × 270mm 版心)。不新增打印入口,仍是报告原来的「打印」。
- **取数与等待:** 组件与正文同一次渲染挂载,副作用在正文上屏之后才发请求;两张图都画好才出现。取数、画图任一失败就不显示封面,不留占位、不加等待态,正文不受影响。组件与样式在懒加载 chunk 里(`components/birth-sky/report-sky-cover.tsx`),首页不带。
保留的只有 F1:新生成的报告仍在文档 `subject.birthFingerprint` 记下生成时的出生资料指纹(与星盘页 `profileFingerprint` 同一个函数,不进给模型的证据包,不下发浏览器),schema 里是可选字段,旧报告照常能读。现在没有任何地方读它,留给以后需要「报告对得上资料」时用。
### 位置三:首次建盘群星汇聚过场(2026-09-28 追加,TASK-birth-sky-followup-20260928 F4,替换原弹窗)