expose formula-only prashna sphuta evidence

This commit is contained in:
732642856
2026-07-14 18:36:50 +08:00
parent e5f7e0ddc0
commit 63f56f9457
6 changed files with 95 additions and 11 deletions
+2 -1
View File
@@ -22,7 +22,8 @@ def test_cli_prashna_uses_question_moment_swiss_context_only():
assert payload["status"] == "computed"
assert payload["chart_source"] == "swiss_ephemeris_backend"
assert payload["supporting_indicators"]["gulika"]["status"] == "partial"
assert "Trisphuta" in payload["blocked_layers"]
assert payload["supporting_indicators"]["sphuta"]["status"] == "partial"
assert "Kunda" in payload["blocked_layers"]
def test_cli_prashna_blocks_legacy_approximation_modes():
+23
View File
@@ -0,0 +1,23 @@
from scripts.prashna_sphuta import calculate_sphuta_evidence
def test_sphuta_formula_evidence_uses_exact_gulika_input() -> None:
result = calculate_sphuta_evidence(
ascendant_longitude=10,
planet_longitudes={"Moon": 20, "Sun": 30, "Rahu": 40},
gulika_longitude=50,
)
assert result["status"] == "partial"
assert result["points"] == {"trisphuta": 80.0, "catusphuta": 110.0, "pancasphuta": 150.0}
def test_sphuta_evidence_blocks_missing_required_planet() -> None:
result = calculate_sphuta_evidence(
ascendant_longitude=10,
planet_longitudes={"Moon": 20, "Sun": 30},
gulika_longitude=50,
)
assert result["status"] == "blocked"
assert result["missing"] == ["Rahu"]