feat(bhava-bala): reports use the formal three components; local +2/-1.5 score hidden (T4, BUG-1210)

Astrologer ruling 甲13. shadbala.calc_bhava_bala renamed calc_local_bhava_score and
removed from calc_shadbala's result (it fed the report's Bhava Bala table). New
bhava_bala.bhava_bala_from_chart (Bhavadhipati = lord's Shadbala virupas, Bhava
Dig, Bhava Drishti; equal houses as /api/bhava_bala; total and total_rupas; the
module's invented level bands not shown) drives modules.bhava_bala in the full
reading. Reader table: Bhavadhipati | Dig | Drishti | Total (Virupa) | Total
(Rupa); reference edition table and wealth/summary lines read the formal totals.
Other users of the local score: none outside shadbala.py (remedies and health
narrative read Shadbala rupas only).

Changed assertions (three columns in PROGRESS): test_shadbala_complete local-score
tests renamed; test_report_longform_gaps2 fixture rows and heading.

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:
Jesse_Chen
2026-10-03 12:45:58 +08:00
co-authored by Claude Opus 5.5
parent ea78804b78
commit 6feb1a4aaa
7 changed files with 160 additions and 41 deletions
+10 -3
View File
@@ -168,13 +168,18 @@ def test_auxiliary_dasha_headings_render_from_native_modules() -> None:
},
},
"strengths_and_scores": {
# BUG-1210: formal three-component rows (was the local score row
# with lord_position / occupant / aspect components).
"bhava_bala": {
"houses": [{
"house": 1,
"sign": "Aries",
"lord": "Mars",
"score": 1,
"components": {"lord_position": 1, "occupant_influence": 0, "aspect_influence": 0},
"adhipathi_bala": 420.0,
"dig_bala": 30.0,
"drik_bala": 1.5,
"total": 451.5,
"total_rupas": 7.53,
}],
},
},
@@ -182,7 +187,9 @@ def test_auxiliary_dasha_headings_render_from_native_modules() -> None:
assert "#### Yogini Dasha 周期(本地计算)" in markdown
assert "#### Narayana Rashi Dasha" in markdown
assert "#### Kala Chakra Dasha(本地原始周期,冲突保留)" in markdown
assert "#### Bhava Bala(本地三分量评分)" in markdown
# BUG-1210: was "#### Bhava Bala(本地三分量评分)".
assert "#### Bhava Bala(三分量)" in markdown
assert "| 1 | 白羊座 | 火星 | 420.0 | 30.0 | 1.5 | 451.5 | 7.53 | parameter_sensitive |" in markdown
def test_quality_gate_runs_this_file() -> None: