Files
Jyotisha/scripts/marriage_match_service/cli.py
T
jesse-uxGrok (agent loop)Cursor
300a8842d3 fix(synastry): keep the scripts root file count inside the budget
Move the three local glue modules into scripts/marriage_match_service and point the invocation matrix at marriage_match.py. The upstream engine file stays where it is.

Checked the file-count and oracle contracts, the marriage-match tests, and a Windows full pytest. The 176 failures are python3-missing and path-separator noise; the named contracts passed.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-18 21:33:30 +08:00

21 lines
703 B
Python

"""CLI for snapshot marriage matching. Birth details are not an input."""
from __future__ import annotations
import json
from pathlib import Path
from marriage_match import build_marriage_match_dossier
def run_marriage_match_cli(args) -> dict:
person_a = json.loads(Path(args.person_a).read_text(encoding="utf-8"))
person_b = json.loads(Path(args.person_b).read_text(encoding="utf-8"))
if not isinstance(person_a, dict) or not isinstance(person_b, dict):
raise ValueError("person snapshots must be JSON objects")
return build_marriage_match_dossier(
person_a,
person_b,
profile_id=getattr(args, "profile", None) or "practitioner_consensus_v1",
)