runner: 프로그램 요약 LLM 호출 실패(HTTP 오류·JSON 아닌 응답)에 전체가 죽지 않고 failed 로 기록 후 계속

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
byeongwook.choi
2026-09-21 16:23:56 +09:00
co-authored by Claude Fable 5.1
parent edb0b111a8
commit 9cdefa1a49
+5
View File
@@ -201,6 +201,11 @@ def ensure_program_summary(con: sqlite3.Connection, llm, p: sqlite3.Row,
except PendingResponse:
# file 백엔드 — 프롬프트만 내놓고 응답을 기다린다. 실패로 기록하지 않는다.
return existing, "pending"
except Exception as e: # noqa: BLE001 — HTTP 오류·JSON 아닌 응답. 이 프로그램만 failed 로 두고 계속
con.execute("UPDATE program SET summary_status='failed' WHERE name=?", (p["name"],))
con.commit()
print(f"[FAIL] program summary {p['name']}: {type(e).__name__}: {e}")
return existing, "failed"
try:
raw["program"] = p["name"]
summary = ProgramSummary.model_validate(raw)