Merge pull request 'fix(plans): שם-תצוגה פשוט ("תכנית <מספר>") במשיכת mavat' (#295) from worktree-mavat-display-name-fix into main
All checks were successful
Build & Deploy / build-and-deploy (push) Successful in 1m26s
G12 Leak-Guard / leak-guard (push) Successful in 3s
Lint — undefined names / undefined-names (push) Successful in 10s

This commit was merged in pull request #295.
This commit is contained in:
2026-06-17 12:33:07 +00:00

View File

@@ -122,11 +122,17 @@ def _parse_sv4(sv4: dict, plan_number: str, source_url: str) -> dict:
pd = sv4.get("planDetails") if isinstance(sv4, dict) else None
pd = pd if isinstance(pd, dict) else {}
display_name = _s(pd.get("E_NAME"))
number = _s(pd.get("NUMB")) or plan_number
# display_name is the clean citation surface form — "תכנית <number>". mavat's
# E_NAME is a long descriptive title (the plan's substance), which belongs in
# purpose, NOT in the name block-ט cites. Keep E_NAME only as a purpose
# fallback so its content isn't lost when GOALS is empty.
e_name = _s(pd.get("E_NAME"))
display_name = f"תכנית {number}" if number else e_name
auth = _s(pd.get("AUTH"))
subtype = _s(pd.get("ENTITY_SUBTYPE"))
plan_type = f"{auth} ({subtype})" if auth and subtype else (auth or subtype)
purpose = _s(pd.get("GOALS"))
purpose = _s(pd.get("GOALS")) or e_name
gazette_date, yalkut_number, yalkut_page = "", "", ""
rows = sv4.get("rsInternet") if isinstance(sv4, dict) else None
@@ -160,7 +166,7 @@ def _parse_sv4(sv4: dict, plan_number: str, source_url: str) -> dict:
break
return {
"plan_number": _s(pd.get("NUMB")) or plan_number,
"plan_number": number,
"display_name": display_name,
"plan_type": plan_type,
"purpose": purpose,