diff --git a/journey/plans/251123_rb8001_계층_분리_리팩토링_계획.md b/journey/plans/251123_rb8001_계층_분리_리팩토링_계획.md index 6a73eec..1af4795 100644 --- a/journey/plans/251123_rb8001_계층_분리_리팩토링_계획.md +++ b/journey/plans/251123_rb8001_계층_분리_리팩토링_계획.md @@ -91,6 +91,37 @@ rb8001의 중복 대화 저장 문제를 해결하고, FastAPI 구조 원칙(311 - 중복 저장 문제 해결 (services 레이어에서 한 번만 저장) - router.py 크기 927줄 → 366줄로 축소 +### Phase 2 Step 3: 폴더 구조 정리 (완료) + +**수정 완료:** +- app/brain/ → app/services/brain/ 이동 +- app/llm/ → app/services/llm/ 이동 +- app/memory/ → app/services/memory/ 이동 +- app/skills/ → app/services/skills/ 이동 +- 모든 import 경로 수정 (28개 파일) +- main.py의 skills import 경로 수정 + +**결과:** +- 서비스 레이어 통합 완료 +- import 경로 일관성 확보 + +### Phase 2 Step 4: DB 접근 정리 (완료) + +**수정 완료:** +- feedback_handler.py: SessionLocal 제거, repository 사용 + - handle_chat_feedback를 async로 변경 + - update_or_create_feedback를 async로 변경 (내부 Session 관리) + - get_conversation_by_id 추가 +- slack_handler.py: SessionLocal 제거, slack_repository 사용 + - get_team_uuid_by_slack_team_id 추가 + - 3곳의 SessionLocal 직접 호출 제거 +- intent_review_endpoint.py: FastAPI Depends 패턴 유지 (허용) + +**결과:** +- router/services에서 SessionLocal 직접 사용 제거 +- repository 패턴으로 통일 +- TDD 테스트 작성 및 통과 확인 + ### Phase 2: 계층 분리 리팩토링 (대규모) #### Step 1: 엔드포인트 분리