From 77645ce25f8316865f9979fdcc3ec8807b63b505 Mon Sep 17 00:00:00 2001 From: Jesse_Chen Date: Sun, 4 Oct 2026 07:15:48 +0800 Subject: [PATCH] docs(tasks): astrologer rulings batch 5 (round-6: Rath dual lord, node dignity, AD direction; year lord no fallback; v5 re-trial) Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE --- docs/tasks/README.md | 1 + ...TASK-astrologer-rulings-batch5-20261004.md | 121 ++++++++++++++++++ 2 files changed, 122 insertions(+) create mode 100644 docs/tasks/TASK-astrologer-rulings-batch5-20261004.md diff --git a/docs/tasks/README.md b/docs/tasks/README.md index ac3eb3fb..0e08c8a4 100644 --- a/docs/tasks/README.md +++ b/docs/tasks/README.md @@ -418,3 +418,4 @@ | `TASK-astrologer-rulings-batch3-20261003.md` | `PROGRESS-astrologer-rulings-batch3-20261003.md` | 占星师第五轮:Mudda 改出生月宿起排(与年主脱钩);年主改 Tajika 正式五分力量;Rath 版 Narayana 按原书 7 级强弱、计都反转、子运起点重做并以三张样表验收,过了再并列展示与 v5 试算(研究分支);土计同宫计都优先(产品选 A);上游两个 bug 记录(BUG 从 1216 起) | 已实现待验收(T1–T4 完成;T3 按修订后红线 3 通过;T5 v5 试算在研究分支,未合入) | 分支 `codex/astrologer-rulings-batch3-20261003`(未推送;BUG-1216~1219;校正分数不变、未升版本);研究分支 `codex/narayana-rath-rectification-trial-20261003`(未推送、不合入) | | `TASK-annual-return-frame-20261003.md` | `PROGRESS-annual-return-frame-20261003.md` | 太阳返照时刻错位:出生太阳与求解器不同参考系(差 15″≈6 分钟)+ 年盘丢秒;243 张年盘里年盘上升变 13、年主变 11;搬上游 7cc6425d/46ed9399 两处,PyJHora 对照 ≤0.5 分钟;排在第三批之后(依据 `docs/research/shared_engine_reuse_audit_2026_10_03.md`) | 已部署 staging `01929bae`(BUG-1220) | 分支 `codex/annual-return-frame-20261003` | | `TASK-astrologer-rulings-batch4-20261003.md` | `PROGRESS-astrologer-rulings-batch4-20261003.md` | Rath 当前大运进全部领域卡(卡预算 12,000→12,500、总 18,000→18,500,修改 BUG-1160/1161 决定);报告年运强度表改 Tajika 五分法(与年主同口径);校正打分不换,等第六轮 | 已实现待验收(T1–T3 完成) | 分支 `codex/astrologer-rulings-batch4-20261003`(未推送;BUG-1221~1222;校正分数不变、未升版本) | +| `TASK-astrologer-rulings-batch5-20261004.md` | `PROGRESS-astrologer-rulings-batch5-20261004.md` | 占星师第六轮:Rath 双主星按 p.43(a)–(e)、罗计尊贵按 Rath Table 9(仅 Narayana 内)、子运方向 p.51 例外与书内分歧标注、Wadiyar 两对标软件特例;年主选不出时不再用 Muntha 主星顶替(对齐上游 03bea6ed);Rath 替换校正 v5 重试算(研究)(BUG 从 1223 起) | 待领取 | 分支 `codex/astrologer-rulings-batch5-20261004` | diff --git a/docs/tasks/TASK-astrologer-rulings-batch5-20261004.md b/docs/tasks/TASK-astrologer-rulings-batch5-20261004.md new file mode 100644 index 00000000..fccd7125 --- /dev/null +++ b/docs/tasks/TASK-astrologer-rulings-batch5-20261004.md @@ -0,0 +1,121 @@ +# TASK:占星师第六轮落地(Rath 双主星、罗计尊贵、子运方向;年主不再顶替)+ v5 重试算 — 2026-10-04 + +## 基线 + +- `origin/staging` 最新(开工时 `git fetch origin --prune` 为准;第四批已部署 `2455b1e4`)。 +- 分支 `codex/astrologer-rulings-batch5-20261004`,工作树 `.worktrees/astrologer-rulings-batch5-20261004`。 +- 依据: + - `docs/research/astrologer_questions_round6_2026_10_03.md`(第六轮问题); + - 占星师第六轮回复(要点见「决策记录」,原文由产品负责人转来,未入库); + - 第三批 `PROGRESS-astrologer-rulings-batch3-20261003.md`; + - `docs/research/narayana_rath_rectification_trial_2026_10_03.md`。 +- 上游参照(只读):`/workspace/yinduzhanxing` `origin/main` = `03bea6ed`。 + +## 事故实证(按符号定位) + +1. **双主星选错两处。** + - `scripts/narayana_rath.py:_lord` 调用的是冻结文件里的 `narayana_dasha._resolve_narayana_lord(…, dual_lord_profile="jaimini_dual_lord_source_v1")`。 + - 原书软件表上的双主星只对上 8/10:Table 23 水瓶原书取土星,我们取罗睺;Table 25 天蝎原书取计都,我们取火星。 +2. **罗计的尊贵不计。** `narayana_rath._occupant_dignity` 对罗睺、计都直接返回 0(注释写的是「no ruling on node dignity」)。 +3. **子运方向。** + - `narayana_rath._ad_order_profile` 已经处理了计都、土星在大运宫的情况,默认方向按子运起点星座的奇偶。 + - 需要核对这一套是否与原书第 51 页的例外完全一致;书里的另外两种说法(第 47 页正文、J.S. 2.4.31–32)还没有在输出中标为分歧。 +4. **年主顶替。** + - `scripts/tajika_year_lord.py` 在 Panchadhikari 选不出年主时,会用 Muntha 主星顶替(`FALLBACK_BASIS = "fallback_muntha_sign_lord_after_panchadhikari_block"`)。 + - 上游 `03bea6ed` 已改为直接标 `blocked`、不输出伪年主(见上游 `docs/research/tajika_shared_entrypoint_repair_2026_10_03.md` 第 3 条)。 + +## 决策记录 + +**占星师第六轮裁定(2026-10-04 转来,附原书页码):** + +| 题 | 裁定 | +|---|---| +| 问 1 | Indira 按「书内例外」处理,与现状一致(p.34–35、65–66、105) | +| 问 2 | 第 3 级比法维持现状;**罗睺、计都的尊贵算**。在 Narayana(Phalita 运)里按 Rath 书 Table 9(p.41–42):
· 本宫:罗睺水瓶、计都天蝎
· Moolatrikona:罗睺处女、计都双鱼
· 旺:Phalita 运用罗睺双子、计都射手(金牛 / 狮子那一组只用于 Ayur 运)
p.67 有原文例句(计都落陷按 Rule 3 弱于火星) | +| 问 3 | 第 2 级的「宫主」,用双主规则选出的那一颗(维持现状) | +| 问 4 | 罗计算「占据星」(维持现状;p.67「罗睺合金星按 Rule 2」) | +| 问 5 | 第 5 级「比宫主度数」保留(p.35 正文);p.36 脚注 27 与正文冲突,在输出里标注 | +| 问 6a | 双主星按 p.43 (d):两颗主星都落在别的星座时,**比较两主各自所落星座的强弱**,强者给出运期;两主同落一宫时,经度高者强(p.116,脚注 95 → p.26)。
她的推算:Table 23 水瓶 → 土星(金牛 3 星 > 处女 1 星);Table 25 天蝎 → 计都(双鱼得木星相位,木星又是双鱼宫主) | +| 问 6b | Wadiyar 的双子 / 射手、处女 / 双鱼两对,是原书软件用了第 7 级 Rule 8,属于软件特例。保持通则输出(射手、双鱼),标「原书软件判定差异」 | +| 问 7 | 子运默认方向看子运起点星座的奇偶;例外按 p.51:土星在大运宫 → 子运一律顺行;计都在大运宫 → 反向。p.50 的 J.S. 1.1.34、J.S. 2.4.31–32 两说与 Table 25 不符,标为书内分歧 | +| 问 8 | Mudda 年长 365.25 天,余额按出生时月亮(维持现状) | + +**产品负责人(2026-10-04):** 同意本任务书。另外两点: +- 年主选不出时不再用 Muntha 主星顶替,与上游对齐; +- 改完后重跑 Rath 版替换校正的 v5 试算(只研究),结果由产品决定是否替换。 + +**作用范围:** 罗计尊贵只在 Rath 版 Narayana 内部生效,不改本命盘庙旺表(第一批 BUG-1211「罗计不设本宫」仍适用于 D1 主路径)。 + +## 硬红线 + +1. 不改冻结身份文件(`production_scoring_files`,含 `scripts/narayana_dasha.py`)。双主星的新规则在 `narayana_rath.py` 里自己实现,不改 `_resolve_narayana_lord`。v5 与改动前逐项相同。 +2. 验收底线,任一项低于现状就停下回报: + - Table 15、17 通则自动复现; + - Table 18 显式起运宫 12/12; + - 软件表强弱不少于 28/30; + - Table 25 子运不少于 24/36。 +3. 双主星目标 10/10。达不到时,逐个写明哪一条规则、哪一页没对上,不要硬凑。 +4. 不改普通对话提示词;卡片单卡不超过 12,500 字;`references/*.json` 字符串要有 `_en` 对照(单独跑 `tests/test_report_english_dictionary.py`)。 +5. 不用 `git stash`,不切换别人的工作树,一次性评测工作树用 `--detach` 建、用完删除,开工前 `df -h /`。 + +## 任务分解 + +### T1 双主星按 p.43 (a)–(e) +- 在 `narayana_rath.py` 实现 Rath 版双主规则:先按 (a)–(c) 的直接情形(以原书 p.43 原文为准,在代码注释和进度记录里逐条写出),再按 (d) 比两主所落星座的强弱(用本模块的 `compare_signs`),最后按 (e) / p.116 的同宫比经度。 +- 输出 `dual_lord_rule` 写明命中第几条。 +- **验收**: + - 软件表双主星 10/10,至少要比 8/10 好; + - 强弱 30 对、三张样表、Table 25 都不低于现状。 + +### T2 罗计尊贵(只在 Rath Narayana 内部) +- `_occupant_dignity` 按决策记录里的 Rath Table 9 给罗计赋值(旺用 Phalita 那一组)。 +- **验收**: + - 新增测试:计都落陷弱于火星(p.67 例句对应的盘或构造盘); + - 底线各项不低于现状; + - 本命庙旺表测试不变。 + +### T3 子运方向核对与分歧标注 +- 核对 `_ad_order_profile` 和 p.51 的两条例外是否一致(土星在大运宫 → 一律顺行;计都在大运宫 → 反向;两者同在时沿用产品已定的「计都优先」)。 +- 输出加 `book_divergence`,列出 J.S. 1.1.34 和 J.S. 2.4.31–32 两说。 +- **验收**:Table 25 金牛大运 12/12(土星例外);新增计都例外的构造盘测试。 + +### T4 Wadiyar 两对标注 +- 双子 / 射手、处女 / 双鱼两对,输出和测试里标 `book_software_rule8_exception`,保持通则结果。 + +### T5 年主选不出时不再顶替 +- `tajika_year_lord.py` 在 Panchadhikari 被 block 时,返回 `status: "blocked"` 和原因,不再输出 Muntha 主星。 +- 卡片和报告的年运段显示「年主暂无法确定(原因)」。 +- Mudda 已与年主脱钩,不受影响。 +- **验收**:新增测试,缺年盘数据时年主为 blocked;正常盘结果不变(9 盘逐项相同)。 + +### T6 v5 重试算(研究分支,不合入) +- 基于本分支 T1–T3,另开 `codex/narayana-rath-rectification-trial-20261004`,沿用第三批 T5 的开关方式(可从 `codex/narayana-rath-rectification-trial-20261003` 的 `e3e9befc` 取开关代码)。 +- 跑 R1(只换大运)、R2(大运和子运都换),v5 三段对比基线和第三批的结果。 +- 更新研究记录 `docs/research/narayana_rath_rectification_trial_2026_10_03.md`,追加「10-04 重跑」一节,放在本分支。 + +### T7 记录 +- BUG_HISTORY(T1–T5,写明「第六轮裁定」和页码);CHANGELOG;PROGRESS(双主星、强弱、样表、子运前后对比表,以及 v5 证据和 T6 结果);README 状态改为「已实现待验收」。 + +## 让步顺序 + +T1 → T5 → T2 → T3 → T4 → T7 → T6。 + +## 开工前置命令 + +```bash +cd /workspace/Jyotisha && git status -sb | head -1 +git fetch origin --prune +git worktree add -b codex/astrologer-rulings-batch5-20261004 .worktrees/astrologer-rulings-batch5-20261004 origin/staging +df -h / +grep -oE "BUG-1[0-9]{3}" docs/BUG_HISTORY.md | sort -u | tail -1 +``` + +## 验收口径 + +- Python:快速门、英文对照、隐私测试、Rath 相关定向测试;v5 逐项相同。 +- 前端:`tsc` 0 错;lint 0 error;`npm test` 失败名单与开工基线逐条相同,确认门测试通过。 +- 不 push,由 Claude 验收后推 staging。 + +## BUG 编号起点 + +BUG-1223(10-04 实测最大号 BUG-1222;开工时再核对)。