Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
7.7 KiB
7.7 KiB
TASK · 完整数据版报告补齐:解释内容、年运表、英文(2026-10-08)
- 分支:继续在
codex/report-full-data-edition-20261007(远端06028759)上做,不另开分支。 - 基线:
06028759;合入前 rebase 到origin/staging,并且排在TASK-special-lagnas-native-20261008之后。 - 上游参照:
/workspace/yinduzhanxingorigin/main@23be1807。 - BUG 编号:本分支已用到 BUG-1272;特殊上升点修复单从 1273 起。本单开工时核对最大号,再顺延。
- 原任务书
TASK-report-full-data-edition-20261007.md仍有效,本单只改写其中红线 1,并补任务。
1. 验收实证(Claude,2026-10-08,Linux,乔布斯盘,Lahiri)
| 项 | 本分支 | 上游完整数据版 |
|---|---|---|
| 中文正文(按字符,不含标题行) | 99,354 | 526,133 |
| 上游有、本分支没有的章节 | 75 节,合计约 36.6 万字 | — |
| 生成耗时(本机 Linux) | 12.5 秒(排盘 2.1 秒) | 34 秒 |
缺得最多的部分:
| 缺的内容 | 约字数 | 上游从哪里来 |
|---|---|---|
| 每段大运主运 + 子运解释(9 段) | 22 万 | scripts/professional_parity_closure.py 的 build_dasha_interpretation_pack、build_vimshottari_dasha_report_pack |
| Mudda / Patyayini 年运表、Patyayini 结束日期表 | 6.5 万 | 我方年运资料包有 mudda_dasha(partial_verified),渲染器没认出字段名。patyayini_dasha 在我方是 blocked(有无 PyJHora 都一样,引擎不产出),Patyayini 两节写进缺口清单,不补算 |
| Sthira、Drig、Shoola、Navamsha、Niryaana Shoola、Lagna Kendradi 等大运 | 5 万 | 另开一单(见决策 4) |
| 生命周期年度返照、年度北印度图盘、月返照、八年总览 | 1.9 万 | 部分在我方年运资料包里,逐项核对 |
| Sahams、Raman Sahams、Tajika 呈现 / Condition / 格局对照、Tripataki | 0.6 万 | 我方年运资料包有 sahams、tajika_yogas |
| 宫主逐宫解释、Dosha 逐项事实与解释、年度结果解释 | 0.5 万 | build_bhavesh_interpretation_pack、build_dosha_remedy_pack、build_graha_interpretation_pack、build_yoga_interpretation_pack |
| 开篇「重点」 | — | 本分支是固定三句核对清单;上游按当前大运和宫主写 |
其他问题:
- 译名错误:「六维力量 / Bhava 年龄状态 摘要」(Bala 被当成 Baladi 的年龄状态);「Natal / KP Ruling 行星s」。
- 英文清理后仍有汉字(BUG-1272),接口不给英文。
- 生成按钮仍写「大约 10–30 秒」「中英两版」。
2. 根因
原任务书红线 1 写的是「不得因为移植上游渲染器,就把上游的计算函数一起带进来」。执行方照办,于是凡是数据要由上游 professional_parity_closure.py 生成的章节都空着。这条红线是 Claude 写得太宽:解释内容是「模板文字 + 已算好的盘面数值」,不是天文计算。
3. 决策记录(产品 2026-10-08)
- 允许移植上游的解释内容生成器:
build_dasha_interpretation_pack、build_vimshottari_dasha_report_pack、build_graha_interpretation_pack、build_bhavesh_interpretation_pack、build_dosha_remedy_pack、build_yoga_interpretation_pack,以及它们依赖的模板函数。本条改写原任务书红线 1,执行方据此可以搬,不得以原红线拒做。 - 搬过来的模板要逐条核对口径(见红线 2)。
- 英文做好之前不上线:完整数据版的英文必须交付(清理后全文无汉字)才合入 staging。在此之前线上继续用现有的阅读版,中英文都在。
- Sthira、Drig、Shoola、Navamsha、Niryaana Shoola、Lagna Kendradi、Chara 等大运另开一单,放后面。上游有原生模块(
sthira_dasha.py、drig_dasha.py、shoola_dasha.py、navamsha_dasha.py、lagna_kendradi*.py),我方没有。本单不做,报告里这些章节不出现,不写占位。 - 补完之后由 Claude 验收,通过再合入。
4. 硬红线
- 数值只用我方引擎。搬过来的生成器只读我方资料包里已经算好的字段;生成器里凡是自己做天文或大运计算的部分(例如
build_dasha_master_pack里的 PyJHora 回放、sthira/niryaana_shoola调用、*_pyjhora_*档)不搬。运行时不得导入jhora。 - 模板口径核对,以下写法一律改写或删除,并为每条加测试(对中英文全文断言):
- 不断言死亡、寿命长短、疾病诊断、离婚、流产、不孕(AGENTS B4);上游模板里的 death / 疾病 / guarantee / 必然 / 一定会 逐条检查;
- 落陷取消不叫 Raja Yoga(BUG-1205);
- 不写「再婚」「几段关系」(sync4 T1,BUG-1183);不写早夭、过早死亡(sync5,BUG-1192~1198);
- 功能吉凶按我方功能吉凶 v2(BUG-1174~1182);模板里自带的吉凶判断与我方层冲突时,以我方为准;
- 大运解释不得把「主题」写成必然事件,要写成「这段时间可能突出」的口吻(原书模板改写)。
- 原任务书的红线 2(我方报告口径)、红线 3(泄漏检查)、红线 4(不启用视位置 / 拟合偏移)继续有效。
customer_timing_supplement仍不搬。 - 英文:四张盘(乔布斯、奥巴马、虚构盘,再加一张公开 AA 盘替代泰勒)全文无汉字;术语只增不减,不能靠删段落凑「无汉字」。
- 隐私:只用公开名人盘与虚构盘。
5. 任务分解
| # | 内容 | 验收标准 |
|---|---|---|
| T1 | 移植决策 1 的生成器,接到完整数据版 | 乔布斯盘「大运解释」「行星解释」「宫主逐宫」「Dosha 逐项」「瑜伽解释」都出现;红线 2 每条一个测试 |
| T2 | 年运:把我方 annual_tajika_pack 的 mudda_dasha、patyayini_dasha、sahams、tajika_yogas、monthly_windows、solar_return 接到上游对应章节 |
列表对照:上游每个年运章节要么出现,要么写进缺口清单并说明缺哪个字段 |
| T3 | 开篇「重点」按上游逻辑写:当前三级大运 + 事业 / 财富 / 婚恋三宫的宫主落宫、尊贵、功能吉凶(取我方功能吉凶层) | 乔布斯盘「重点」含当前 MD / AD / PD 与三宫宫主行 |
| T4 | 英文 BUG-1272 | 四张盘英文全文汉字数为 0;中英章节数一致 |
| T5 | 译名 | 修掉「Bhava 年龄状态」「KP Ruling 行星s」;加测试:中文版不得出现「英文单词 + 汉字 + s」这类半译词(正则扫) |
| T6 | 生成按钮文案 | 按 staging 部署后实测生成时长改写(对照 frontend/docs/VOICE.md);有英文后保留「中英两版」 |
| T7 | 覆盖度报告 | 对上游 23be1807 同盘导出逐节比对,进度记录列「已有 / 本单不做(附决策号)/ 缺字段」三栏;除决策 4 的大运外,「缺字段」不得超过 10 节 |
| T8 | 测试与门禁 | 在 Linux 或门禁同等环境跑:快速门全过(Windows 上 test_consultation_native_layers 的既有失败不能作为放行依据)、Python 全量失败名单 ⊆ 基线、npm test 失败名单与基线相同、next build / Static、gzip ±2% |
| T9 | 记录 | docs/BUG_HISTORY.md(BUG-1272 更新与新编号)、CHANGELOG.md、进度记录、docs/testing/ 真机清单(生成、旧报告打开、中英切换、跳章节、导出) |
6. 让步顺序
T6 → T3 → T2 中的月返照 / 八年总览。T1、T4、红线 1–2 不让步。
7. 开工前置命令
git fetch origin --prune
git worktree add .worktrees/report-full-data-edition-20261007 codex/report-full-data-edition-20261007 # 已有就直接进
grep -o "^## BUG-[0-9]*" docs/BUG_HISTORY.md | sed 's/## BUG-//' | sort -n | tail -1