Jev 기반 내담자 감정 상태와 응답 일관성 개선

This commit is contained in:
Yun Chan 2026-09-22 21:32:26 +09:00
parent 77f8421818
commit 8344bc2ad2
23 changed files with 3384 additions and 25 deletions

View file

@ -22,6 +22,7 @@ from .db import acquire, close_pool, get_pool, healthcheck, init_pool
from .engine_client import engine_client
from .persona_repository import materialize_seed_personas
from .session_persistence import ensure_review_tables
from .services.jev_client import jev_client
from .runtime_schema import (
CALIBRATION_TRANSFER_SCHEMA_CONTRACT,
CONTINUOUS_IMPROVEMENT_SCHEMA_CONTRACT,
@ -209,6 +210,7 @@ async def lifespan(app: FastAPI):
"DB 풀 초기화 실패 — store 인메모리 폴백으로 degraded 기동: %s", exc
)
await engine_client.startup()
await jev_client.startup()
if measurement_schema_ready:
try:
recovered = await alliance_measurement.recover_pending_alliance_pulses()
@ -231,6 +233,7 @@ async def lifespan(app: FastAPI):
await supervision_research_producer.stop_supervision_research_producer()
session_routes.cancel_missing_session_evaluation_recovery()
await voice_service.shutdown()
await jev_client.shutdown()
await engine_client.shutdown()
try:
await close_pool()
@ -336,6 +339,13 @@ async def health() -> dict[str, object]:
),
"default_engine": engine.get("default_engine"),
"live_client_engine": engine.get("live_client_engine"),
"client_affect_provider": settings.client_affect_provider,
"jev": {
"configured": jev_client.configured,
"live_verified": False,
"provider": settings.jev_provider,
"model": settings.jev_model,
},
"upload_write_freeze": upload_freeze,
"upload_manifest": (
{