fix(discord_bot): unified prompt JSON '{' parsing fallback
This commit is contained in:
@@ -74,6 +74,7 @@ Discord 메시지
|
||||
|
||||
## 최근 마일스톤
|
||||
|
||||
- **2026-03-23**: discord_bot unified prompt JSON 문법 누락 대응 로직 추가
|
||||
- **2026-03-22**: debate-agent idle-state 처리 — 대기 규칙 + slug 탐색 + list-debates + handler 시그널 개선
|
||||
- **2026-03-21**: debate-agent 분산 토론 시스템 — Wiki.js 기반 통신, AG 프로젝트 스캐폴딩, handler 리팩토링
|
||||
- **2026-03-20**: AI Debate Room v2 — 파일 기반 자동 토론 + Flash 합의 판정 + Wiki.js 동기화
|
||||
|
||||
@@ -183,3 +183,9 @@
|
||||
- **원인**: Gemini에게 제목 요약 요청 시 `"신용리스크를 측정하는..."` 처럼 따옴표 포함 응답 → `WikiClient.slugify()`가 따옴표 미제거
|
||||
- **해결**: (1) 프롬프트를 영문 2-3단어 키워드로 변경, (2) `.strip('"\'')` + `re.sub(r'[^\w\s-]', '')` 로 특수문자 제거, (3) slug 30자 제한
|
||||
- **주의**: AI 응답을 slug/경로/파일명에 사용 시 **반드시 특수문자 sanitize** 필수. 따옴표, 괄호, 마크다운 기호 등 모두 제거
|
||||
|
||||
### [2026-03-23] unified prompt — JSON 여는 중괄호 누락
|
||||
- **증상**: Gemini 응답에 `{"mode": ...}` 대신 `"mode": ...}`로 출력되어 JSON 파싱이 실패하고 chat 롤백됨
|
||||
- **원인**: 통합 프롬프트 특성상 LLM이 가끔 첫 `{`를 생략하거나 코드문법 없이 바로 출력함
|
||||
- **해결**: `api/discord_bot.py` 의 `_parse_unified_response` 에 `{` 누락 시 `{...}` 로 감싸 재파싱하는 fallback 추가
|
||||
- **주의**: LLM의 JSON 출력 포맷이 항상 완벽할 것이라 가정하지 말고 방어적 파싱 로직 적용 필수
|
||||
|
||||
Reference in New Issue
Block a user