test(report): expect parenthesized karaka names in the full-data table

The Chinese full-data body prints karaka names with parentheses after the glued-phrase pass. The BPHS order test still expected the KARAKA_CN literals and failed the full pytest run. Expect translate_zh_glued_phrases of KARAKA_CN instead of editing KARAKA_CN.

Pytest of the karaka file, the six report contract files, and privacy markers: 154 passed. tsc exit 0. lint 0 errors, 125 warnings.

Co-Authored-By: Grok (agent loop)
This commit is contained in:
jesse-ux
2026-10-13 15:55:56 +08:00
co-authored by Grok (agent loop)
parent 7242648e45
commit 830e5d0267
3 changed files with 25 additions and 2 deletions
+1 -1
View File
@@ -17624,7 +17624,7 @@
- 现象:中文报告里出现 listed、background、native、Custom condition met,以及「木星Jupiter…」这种中英粘在一起的字。星宿、瑜伽名放在括号里是允许的。
- 根因:中文完整数据版是在英文原文上做短词替换。短词先换会把长句切碎;有的格子本身就是英文枚举,中文版原样印出。瑜伽组合在中文路径仍优先取了英文组合句。行星中文名已经带英文,庙旺又紧挨着拼上去,中间没有空格。
- 修复:中文路径先整句、长词,再短词。宫主状态换成「当前运行 / 背景」,listed 换成「已列出」,native 换成「本命」,自定义条件换成「满足自定义条件」。中文瑜伽用中文组合句。不改行星中文名本身,也不改八分法引擎文件;报告层把粘在一起的方法名改成带空格的读法。残留门只数附录之前的正文,图盘围栏不计入:汉字与至少 3 个拉丁字母直接粘连为 0,功能词 of/in/the/and/by/from/with/listed/background/native/condition/met/satisfied/occupied 为 0。括号里的梵文和表头缩写 SAV、BAV、KP、D1–D60 不在这两项里。
- 验证:故意写入「木星Jupiterexalted」时残留门为 fail。虚构日盘、虚构夜盘、一张公开名人盘(爱因斯坦)的中文完整数据版都是粘连 0、功能词 0。`tests/test_report_chart_blank_columns.py` 16 通过。
- 验证:故意写入「木星Jupiterexalted」时残留门为 fail。虚构日盘、虚构夜盘、一张公开名人盘(爱因斯坦)的中文完整数据版都是粘连 0、功能词 0。`tests/test_report_chart_blank_columns.py` 16 通过。打回第 1 次:报告星位表已印成「灵魂星(AK)」这类带括号的名字,`test_reader_report_karaka_table_is_in_bphs_order` 仍按 `KARAKA_CN` 原字面值比对,已改为经 `translate_zh_glued_phrases` 后再比对。`KARAKA_CN` 未改。
- 防复发:`_pl9_markdown_hygiene_receipt(language="zh")` 把上述两项写成违规。
- 相关记录:BUG-1313、BUG-1314。
- 复发自:无。