fix(birth-sky): print the city for stored 「中国 · 省 · 市」 labels (BUG-1082)
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
cfed06822f
commit
3d0f1cf6eb
@@ -14562,3 +14562,18 @@
|
||||
- 防复发:守卫测试锁住「本人出生资料至少有一个编辑入口,且走共享的 `saveSelfProfile`」;取代某个入口的改动必须在任务书里写明新入口。
|
||||
- 相关记录:BUG-1030/1039(星盘档案)、BUG-018(账户出生资料声明与状态同写)。
|
||||
- 修复版本:分支 `codex/self-edit-avatar-menu-20260928`,未部署。
|
||||
|
||||
## BUG-1082 | 天空封面底部的出生城市对中国出生地一律印不出来
|
||||
|
||||
- 状态:resolved(代码与回归测试;真机待部署后按 `docs/testing/birth-sky-cover-checklist.md` 城市条目复核)
|
||||
- 首次发现 / 最近更新:2026-09-29 / 2026-09-29
|
||||
- 影响面:星盘页「那一刻的天空」图片、报告封面、首次建盘过场底部的 caption(`TASK-birth-sky-polish-20260928` P2,staging `adbb2054` 起)。
|
||||
- 用户现象:中国出生地只印「日期 时刻」,没有「· 城市」。
|
||||
- 触发条件:出生地来自中国地点库(存储标签形如 `中国 · 省 · 市 · 区`)。
|
||||
- 根因:`lib/birth-sky/caption.ts` `birthSkyCity` 从第一段开始按「省 / 直辖市」识别,而存储标签由 `geoapify-location-service.ts` 生成、第一段固定是「中国」,于是每次都判为「取不到可靠城市」。测试夹具手写成不带「中国」的 `省 · 市 · 区`,与真实存储格式不一致,所以单测与样张都显示了城市。执行方在下一单(`TASK-self-edit-avatar-menu-20260928`)读 `people-archive-view.ts` 时发现;Claude 验收 polish 时也只看了夹具样张,未对照真实标签格式。
|
||||
- 修复:识别前先去掉开头的「中国」段,其余规则不变。
|
||||
- 验证:`frontend/tests/birth-sky-caption.test.ts` 新增「stored China labels lead with 「中国 · 」」一条(省市区、省市、直辖市、只到省、只有「中国」、完整 caption);`birth-sky-caption` / `birth-sky-route` / `birth-sky-draw` 22 pass。
|
||||
- 防复发:解析地点标签的测试夹具必须取自 `geoapify-location-service.ts` 的真实生成格式(AGENTS §7.4 golden 原则);新增的地名解析先对照 `people-archive-view.ts` `peopleCityLabel` 已有做法。
|
||||
- 相关记录:BUG-1080
|
||||
- 复发自:无
|
||||
- 修复版本:`codex/self-edit-avatar-menu-20260928` 第 4 个提交
|
||||
|
||||
Reference in New Issue
Block a user