세션 계약 SSOT 정리

This commit is contained in:
Yun Chan 2026-06-27 18:47:55 +09:00
parent 1881fe50bd
commit 17b114f647
8 changed files with 43 additions and 47 deletions

View file

@ -375,7 +375,8 @@ React 19 + Vite. 라우팅은 `apps/web/src/App.tsx`(react-router-dom).
- 도메인 헬퍼: `sessionApi`(list/get/start/turn/end/review/stream), `personaApi`, `personaReviewApi`,
`adminApi`, `adminEngineApi`, `teacherApi`, `userApi`. 주요 응답 타입은 FastAPI OpenAPI에서 생성한
`src/lib/api.gen.ts``ApiSchema<...>` alias를 사용하고, generated optional 배열은 화면 렌더링 계층에서
빈 배열 fallback으로 흡수한다.
빈 배열 fallback으로 흡수한다. 세션 시작/상세/턴 응답의 stage는 backend `StageLabel`
enum(`라포|탐색|개입|정리`)에서 생성한 union을 `SessionStage`로 사용한다.
- dev 환경: `vite.config``/api``http://127.0.0.1:8000` 프록시(`/api` 프리픽스 제거).
배포 호스트(`vignette.chanpaca.net`, `*.pages.dev`)에서는 `api-vignette.chanpaca.net`을 직접 가리킨다.