fix(rectification): restore classic eight methods and observe KP Placidus cusps

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-08-20 15:58:28 +08:00
parent a1914686e8
commit 84e6191fc2
42 changed files with 1488 additions and 185 deletions
+9 -1
View File
@@ -130,6 +130,10 @@ _LAYER_LABEL = {
"ghati": "Ghati Lagna",
"bhava": "Bhava Lagna",
"pranapada": "Pranapada Lagna",
"kp1": "KP 1宫子主",
"kp4": "KP 4宫子主",
"kp7": "KP 7宫子主",
"kp10": "KP 10宫子主",
}
@@ -152,12 +156,16 @@ def _scan_layer_value(feature: dict[str, Any], layer: str) -> int | None:
"ghati": feature.get("ghati_sign_index"),
"bhava": feature.get("bhava_sign_index"),
"pranapada": feature.get("pranapada_sign_index"),
"kp1": feature.get("kp1_sub_index"),
"kp4": feature.get("kp4_sub_index"),
"kp7": feature.get("kp7_sub_index"),
"kp10": feature.get("kp10_sub_index"),
}.get(layer)
return raw if isinstance(raw, int) else None
def window_scan(built: dict[str, Any]) -> dict[str, Any]:
"""D1/D9/D10/D4/D5/D7/D12/D24/D2/D11/D30 plus display-only pada/Hora/Ghati/Bhava/Pranapada."""
"""D1/D9/D10/D4/D5/D7/D12/D24/D2/D11/D30 plus display-only pada/Hora/Ghati/Bhava/Pranapada/KP."""
counts: dict[str, set[int]] = {layer: set() for layer in _LAYER_LABEL}
transitions: list[dict[str, Any]] = []
previous: dict[str, int | None] | None = None