v4.3.1: 뉴스/소식 게이트 정리 + 미스트랄 tool_choice 강제

- news_search 스키마에 지역코드 안내 부족 버그 수정 (동유럽 country code 예시 추가)
- "소식"을 뉴스 동의어로 게이트에 추가, "무슨 좋은 소식 있어" 같은 개인 안부 관용구는
  PERSONAL_NEWS_IDIOM 예외로 오탐 방지
- 하드코딩 가드 9개 추가 정리: prompt-gates.ts로 통합(isNewsRequest 중복 제거,
  task-intent 6개, isHighStakesFile/requestedFullTemplate/
  shouldForceSessionScopeForTemporalClaim/userRequestedImageEdit 이동), 죽은
  코드 4개 삭제
- 브라우저 자동화 재시도 가드가 dormant된 browser_* 도구를 강제 호출하려던
  사각지대 수정 (도구 가용성 체크로 게이팅)
- tool_choice를 provider 체인 전체에 플러밍, 모델별 프로필에
  forceToolChoiceOnLiveData 플래그 추가 — 미스트랄이 뉴스/사실질의에서 도구
  호출 없이 답변을 지어내던 문제를 라운드 0부터 강제 도구호출로 차단
  (프롬프트 경고만으로는 불충분함을 실측 확인)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
kim
2026-07-25 11:54:40 +09:00
co-authored by Claude Sonnet 5
parent 7bc1b1bb65
commit 98725caff6
10 changed files with 190 additions and 110 deletions
+7 -6
View File
@@ -21,7 +21,7 @@
"providers": {
"ollama": {
"endpoint": "http://localhost:11434",
"model": "gemma4:31b-cloud"
"model": "mistral-large-3:675b-cloud"
},
"lm_studio": {
"endpoint": "http://host.docker.internal:1234",
@@ -45,17 +45,18 @@
}
},
"models": {
"primary": "gemma4:31b-cloud",
"primary": "mistral-large-3:675b-cloud",
"fallback": "kimi-k2.6:cloud",
"roles": {
"manager": "gemma4:31b-cloud",
"executor": "gemma4:31b-cloud",
"verifier": "gemma4:31b-cloud",
"manager": "mistral-large-3:675b-cloud",
"executor": "mistral-large-3:675b-cloud",
"verifier": "mistral-large-3:675b-cloud",
"background_task": ""
},
"profiles": {
"mistral-large-3:675b-cloud": {
"extraSystemPrompt": "You have a documented tendency to skip tool calls and answer fluently and confidently from memory instead — on news, weather, and factual/product questions (specs, prices, versions, comparisons) alike, sometimes inventing specific-sounding numbers or even nonexistent events. Before answering ANYTHING with a checkable real-world fact, call the relevant tool (web_search, weather_kma, etc.) first — do not trust your own confidence as a substitute for checking. If a tool call fails or returns nothing useful, say so plainly instead of filling the gap from memory."
"extraSystemPrompt": "You have a documented tendency to skip tool calls and answer fluently and confidently from memory instead — on news, weather, and factual/product questions (specs, prices, versions, comparisons) alike, sometimes inventing specific-sounding numbers or even nonexistent events. Before answering ANYTHING with a checkable real-world fact, call the relevant tool (web_search, weather_kma, etc.) first — do not trust your own confidence as a substitute for checking. If a tool call fails or returns nothing useful, say so plainly instead of filling the gap from memory.",
"forceToolChoiceOnLiveData": true
},
"kimi-k2.6:cloud": {
"extraSystemPrompt": "You have a documented tendency to massively over-search — observed doing 7+ (once 50+) web_search/web_fetch calls for a single broad request like \"오늘 국제 뉴스 정리\", searching topic-by-topic (Ukraine, Gaza, tariffs, ...) instead of a couple of broad searches. A hard cap now blocks you past 5 web_search/web_fetch calls per turn — but don't rely on the cap. Plan your search angles up front, pick the 1-3 most important ones, and write the answer once you have enough. Exhaustive topic-by-topic coverage is not the goal."