개선관리 요구사항과 Google 로그인을 완료

This commit is contained in:
Yun Chan 2026-08-28 16:07:09 +09:00
parent cc0a15b7c6
commit 2a39636163
112 changed files with 10166 additions and 527 deletions

View file

@ -4,13 +4,14 @@ from __future__ import annotations
import importlib.util
import unittest
from dataclasses import replace
from pathlib import Path
from typing import Any
from unittest.mock import AsyncMock, patch
from fastapi import HTTPException
from . import persona_generation_contract, persona_repository, session_persistence
from . import persona_generation_contract, persona_read_model, persona_repository, session_persistence
from .deps import Principal, Role
from .engine_client import GenerateResponse
from .persona_repository import PersonaDraftRecord, PersonaReviewItem
@ -247,6 +248,28 @@ def _draft_payload(
class PersonaApprovalBoundaryTest(unittest.IsolatedAsyncioTestCase):
def test_catalog_summary_prefers_complaint_over_surface_condition(self) -> None:
card = replace(
persona_service.SEED_PERSONAS["P1"],
presenting={
"surface": "상담자가 해결책을 서두르지 않을 때 깊은 이야기가 드러남",
"complaint": "학교에 가기 싫고 모든 일이 무의미하게 느껴짐",
},
)
entry = persona_repository.CatalogPersona(
card=card,
persona_id="00000000-0000-0000-0000-000000000031",
version=2,
source="database",
)
summary = persona_read_model.persona_summary(entry)
self.assertEqual(
summary.presenting_summary,
"학교에 가기 싫고 모든 일이 무의미하게 느껴짐",
)
def test_persona_seed_runner_reports_repo_manifest_without_db(self) -> None:
script_path = Path(__file__).resolve().parents[3] / "scripts" / "materialize-persona-seeds.py"
spec = importlib.util.spec_from_file_location("materialize_persona_seeds", script_path)