diff --git a/docs/guides/architecture.md b/docs/guides/architecture.md index 802724b..1a92c3e 100644 --- a/docs/guides/architecture.md +++ b/docs/guides/architecture.md @@ -430,6 +430,9 @@ GET {ENGINE_URL}/ready|/health — readiness/liveness ### 2.12 페르소나 카탈로그 — `app/persona_repository.py` DB `app.persona_card`가 승인 페르소나의 SoR. 이 모듈이 in-proc `PersonaCard`와 DB 행을 잇는 경계다. +브라우저-facing persona catalog/review/draft/source/evidence DTO와 deterministic mapper는 +`app/persona_read_model.py`가 소유한다. `routes/personas.py`는 route/auth, teacher/admin gate, +DB repository 호출, RAG source 등록, LLM draft generation, HTTP error mapping을 유지한다. - `load_file_personas()` / `built_in_personas()` — in-code P1~P3과 저장소 `data/personas/P4~P7.json`을 deterministic catalog로 합친다. - `materialize_seed_personas()` — built-in P1~P7을 초기 승인 카탈로그로 누락분만 insert(admin 롤). `ON CONFLICT DO NOTHING`이므로 교수 편집본을 덮어쓰거나 `archived` 보관본을 재승인하지 않는다.