한신대 피드백 개선팩 반영

This commit is contained in:
Yun Chan 2026-07-03 19:53:14 +09:00
parent 5a9c110c11
commit 6b6241f468
25 changed files with 1247 additions and 94 deletions

View file

@ -210,6 +210,39 @@ class GatewayModelTest(unittest.TestCase):
self.assertEqual(parts.system_prompt, "system one\n\nsystem two")
self.assertEqual(parts.user_payload, "current client")
def test_split_messages_injects_client_history_before_current_counselor_turn(self):
parts = gateway._split_messages(
[
contract.EngineMessage(role="system", content="client persona system"),
contract.EngineMessage(role="user", content="상담자 이전 질문"),
contract.EngineMessage(role="assistant", content="내담자 이전 답변"),
contract.EngineMessage(role="user", content="이번 상담자 발화"),
],
ai_role="client",
)
self.assertEqual(parts.system_prompt, "client persona system")
self.assertIn("[직전 대화]", parts.user_payload)
self.assertIn("상담자: 상담자 이전 질문", parts.user_payload)
self.assertIn("내담자: 내담자 이전 답변", parts.user_payload)
self.assertIn("[이번 상담자 발화]", parts.user_payload)
self.assertTrue(parts.user_payload.rstrip().endswith("이번 상담자 발화"))
def test_split_messages_does_not_inject_history_for_evaluator_requests(self):
parts = gateway._split_messages(
[
contract.EngineMessage(role="system", content="eval system"),
contract.EngineMessage(role="user", content="이전 평가 입력"),
contract.EngineMessage(role="assistant", content="이전 평가 출력"),
contract.EngineMessage(role="user", content="이번 평가 입력"),
],
ai_role="evaluator",
)
self.assertEqual(parts.system_prompt, "eval system")
self.assertEqual(parts.user_payload, "이번 평가 입력")
self.assertNotIn("[직전 대화]", parts.user_payload)
def test_split_messages_preserves_no_user_payload_boundary(self):
parts = gateway._split_messages(
[contract.EngineMessage(role="system", content="system only")]