feat(upstream): merge a6f47abd engine, MCP, and orchestrator
Three-way-merge calculation modules and pl9-export into the product fork while keeping commercial API routes, Raman ayanamsa, and the consultation contract as a keypath superset. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -16,7 +16,9 @@ from ayanamsa_utils import (
|
||||
DEFAULT_AYANAMSA_NAME,
|
||||
UnsupportedAyanamsaError,
|
||||
apply_ayanamsa,
|
||||
is_supported_ayanamsa_name,
|
||||
normalize_ayanamsa_name,
|
||||
supported_ayanamsa_names,
|
||||
)
|
||||
from dasha_analyzer import build_dasha_timeline, lon_to_nakshatra
|
||||
from jyotish_engine import SIGNS, compute_chart_data
|
||||
@@ -285,6 +287,10 @@ def compute_transit_longitude(
|
||||
local_dt = datetime.strptime(reference_date[:10], "%Y-%m-%d").replace(hour=12)
|
||||
except (TypeError, ValueError) as exc:
|
||||
raise CalculationError("reference_date must be YYYY-MM-DD") from exc
|
||||
if not is_supported_ayanamsa_name(ayanamsa):
|
||||
raise CalculationError(
|
||||
f"unsupported ayanamsa: {ayanamsa!r}. Supported values: {', '.join(supported_ayanamsa_names())}"
|
||||
)
|
||||
ayanamsa_name = normalize_ayanamsa_name(ayanamsa)
|
||||
with _SWISSEPH_LOCK:
|
||||
apply_ayanamsa(ayanamsa_name, swe)
|
||||
|
||||
Reference in New Issue
Block a user