회기 무발화 0턴 분리, 자기예측 락 불변식 및 TDD 회귀 검증 완료
Some checks failed
API contract / OpenAPI type drift (push) Failing after 3m27s

This commit is contained in:
Yun Chan 2026-09-08 23:28:06 +09:00
parent a479db7a5a
commit a0311c5957
100 changed files with 4884 additions and 11210 deletions

View file

@ -11,7 +11,7 @@ from unittest.mock import AsyncMock, patch
from fastapi import HTTPException
from .config import settings
from . import session_persistence, turn_runtime
from . import session_evaluation_repository, session_persistence, turn_runtime
from .contracts.engine_gateway import EngineGatewaySseLineDecoder
from .deps import Principal, Role
from .engine_client import EngineError, GenerateResponse
@ -214,7 +214,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
durable_evaluations: dict[str, dict[str, object]] = {}
async def save_evaluation(
write: session_persistence.SessionEvaluationWrite,
write: session_evaluation_repository.SessionEvaluationWrite,
) -> bool:
durable_evaluations[write.session_id] = write.cache_record()
return True
@ -226,7 +226,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(side_effect=asyncio.TimeoutError),
),
patch.object(
sessions.session_persistence,
sessions.session_evaluation_repository,
"save_session_evaluation",
save_evaluation,
),
@ -375,7 +375,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(return_value=old_session),
),
patch.object(
sessions.session_persistence,
sessions.session_evaluation_repository,
"load_session_evaluation",
AsyncMock(return_value=(old_evaluation, True)),
),
@ -415,7 +415,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(side_effect=EngineError("controlled evaluator 500")),
),
patch.object(
eval_routes.session_persistence,
eval_routes.session_evaluation_repository,
"save_session_evaluation",
retry_save,
),
@ -2574,7 +2574,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(return_value=(saved_payload, True)),
),
patch.object(
sessions.session_persistence,
sessions.session_evaluation_repository,
"load_session_evaluation",
AsyncMock(return_value=(None, False)),
),
@ -2681,7 +2681,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(return_value=(None, False)),
),
patch.object(
sessions.session_persistence,
sessions.session_evaluation_repository,
"load_session_evaluation",
AsyncMock(return_value=(raw_record, True)),
),
@ -2721,7 +2721,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
),
]
)
error_record = session_persistence.SessionEvaluationWrite.from_error(
error_record = session_evaluation_repository.SessionEvaluationWrite.from_error(
session_id=sess.session_id,
learner_id=principal.user_id,
scope="session_end",
@ -2741,7 +2741,7 @@ class SessionTurnPersistenceTest(unittest.IsolatedAsyncioTestCase):
AsyncMock(return_value=(None, False)),
),
patch.object(
sessions.session_persistence,
sessions.session_evaluation_repository,
"load_session_evaluation",
AsyncMock(return_value=(error_record, True)),
),