Harden high-rigor Jyotish timing workflow

This commit is contained in:
732642856
2026-07-01 19:15:35 +08:00
parent 6276309d41
commit 5a76abf8d6
87 changed files with 17685 additions and 382 deletions
+17
View File
@@ -15,6 +15,7 @@ from shadbala import (
NAISARGIKA_BALA, MIN_REQUIRED, DIG_BALA_HOUSE,
EXALTATION_DEG, DEBILITATION_DEG, FRIENDSHIP, SHADBALA_CONSTANTS_PATH,
)
from scripts.shadbala_oracle_comparison import compare_case
# Standard test chart data
def _sample_planets():
@@ -70,6 +71,16 @@ class TestSthanaBala:
result = calc_sthana_bala('Sun', 5.0, 'Aries', 1)
assert result['drekkana_bala'] in (0, 15)
def test_sapta_d3_exaltation_branch_is_capped_below_d1_exaltation(self):
result = calc_sthana_bala('Sun', 0.0, 'Aries', 1)
assert result['sapta_d1'] == 50.0
assert result['sapta_d3'] == 45.0
def test_sapta_d3_own_sign_branch_is_capped_below_d1_own_sign(self):
result = calc_sthana_bala('Venus', 30.0, 'Taurus', 2)
assert result['sapta_d1'] == 45.0
assert result['sapta_d3'] == 30.0
def test_total_positive(self):
result = calc_sthana_bala('Jupiter', 105.0, 'Cancer', 5)
assert result['total'] > 0
@@ -124,6 +135,12 @@ class TestDigBala:
def test_midrange_positive(self):
assert 0 < calc_dig_bala('Sun', 7) < 60
def test_dig_bala_jupiter_redacted_place_case_needs_better_than_house_only_linear_model(self):
comparison = compare_case("references/oracle/dasha_shadbala_oracle_cases.json", "template_redacted_place_shadbala_raman")
jupiter_dig_gap = comparison["comparison"]["Jupiter"]["components"]["dig"]["abs_diff_rupa"]
assert jupiter_dig_gap < 3.6348
# ── Kala Bala Tests ─────────────────────────────────────────────────