INNER CODE UNIT · Python
_parse
zachlagden/Pi-hole-Optimized-Blocklists · .github/triage/triage/ai_review.py:305
def _parse(data: dict) -> Review:
recommendation = str(data.get("recommendation", "")).strip().lower()
confidence = str(data.get("confidence", "")).strip().lower()
impact = str(data.get("impact", "")).strip().lower()
return Review(
impact=impact if impact in IMPACT_LABELS else "",
impact_reason=_clean(data.get("impact_reason"), 300),
site=_clean(data.get("site"), 600),
recommendation=recommendation if recommendation in RECOMMENDATIONS else "unclear",
confidence=confidence if confidence in CONFIDENCES else "unclear",
reasons=[_clean(reason, 300) for reason in data.get("reasons", [])[:8]],
suggested_entry=_clean(data.get("suggested_entry"), 120),
questions=[_clean(question, 300) for question in data.get("questions_for_reporter", [])[:5]],
)
def _call(system: str, content: list[dict] | str, api_key: str, timeout: float = 240) -> str:
payload = {