fix(ashtakavarga): sum Pinda from the shared Sodhita reduction

Upstream 30b43643. Yoga Pinda multiplied only the bindu in the planet's own sign. It now uses the Trikona and Ekadhipatya rows, with PVR table 28 including Virgo 6. PVR example 43 is 152. BUG-1384.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
jesse-ux
2026-10-18 16:27:18 +08:00
co-authored by Grok (agent loop) Cursor
parent b5eb72343a
commit e8a7f3ac22
4 changed files with 116 additions and 23 deletions
+15
View File
@@ -36548,3 +36548,18 @@
- 相关记录:BUG-1381。
- 复发自:无。
- 修复版本:分支 `codex/upstream-sync8-20261017`。上游提交 `8eec9a54`。
## BUG-1384 | Yoga Pinda 只乘了本座 bindu
- 状态:resolved
- 首次发现 / 最近更新:2026-10-17 / 2026-10-18
- 来源:issue #80,任务书 T4。上游 `30b43643`。检索「calc_yoga_pinda」「rashi_weight」,没有更早的同类记录。BUG-1209 已经有标准削减链,Pinda 没接上。
- 现象:Pinda 只拿行星所在星座的 bindu,乘 4 再乘行星权重。PVR 例 43 应为 152,这条捷径算不出来。强弱排序因此偏掉。
- 触发条件:报告和 Ashtakavarga 接口调用 `calc_yoga_pinda`。
- 根因:没有做三方净化和单宫主净化,也没有把十二座、七曜分别加权。
- 修复:七行齐全时直接复用 `sodhita_chain`。星座权重按 PVR 表 28(处女座 6)。同值且一占一空时清空空宫,这是 Raman 15(c),原削减函数已经这样做。报告表头改成同一口径。
- 验证:`tests/test_ashtakavarga_pinda_source.py`。例 43 的 Mercury 为 77 + 75 = 152。整盘的 Pinda 削减行与 Sodhita 链相同。
- 防复发:上述测试。
- 相关记录:BUG-1209。
- 复发自:无。
- 修复版本:分支 `codex/upstream-sync8-20261017`。上游提交 `30b43643`。