ad3d51e3e0
llm_gate.py docstring 영구 룰: "MLX primary 호출 경로는 예외 없이 gate 획득 필수". PR #20 이후 classifier (Mac mini 26B 신규) + evidence (triage→Mac mini 26B 통합) 모두 gate 외부 실행 — concurrent 안전성 별 검토 명시. 1주 관찰 결과: race 빈번. 본 PR-Hermes-Docsrv-Search-1 Layer 1 fixture 측정: - 8/10 query "conservative_refuse(no_classifier)" — classifier 가 동시 부하 시 거의 모두 ReadTimeout 또는 wait_for(6s) timeout - evidence ev_ms=15005 — synthesis 와 race 로 15s 누적 영향: - ask total 시간 증가 (parallel race → serialized): query_analyzer 5s + classifier 3-5s + evidence 5s + synthesis 30s ≈ 40-45s 상한 (현실 평균) - 응답률 ↑: race timeout 으로 인한 conservative_refuse 해소 - 사용자 체감: 빠른 거절 → 의미있는 답변. 단 대기 시간 ↑ 후속: - skill `docsrv_ask` curl `--max-time 20` → 60s 상향 필요 (별 PR 또는 본 PR 안의 follow-up) - 본 메모리 `2026-05-21 Mac mini 26B 1주 부하 측정` observation 의 결정 outcome: gate 복귀 (triage 별 작은 모델 재도입 옵션은 보류)