Final Project Blueprint

기능 요구사항을 백엔드 책임과 검증 기준으로 나눈다

온라인 코드 에디터는 기능 목록보다 인증, 파일 관리, 실시간 협업, 운영 품질을 누가 책임지는지가 먼저 정리되어야 한다.

Auth사용자 컨텍스트

JWT guard와 ownership 검증을 REST와 Gateway에서 공유한다.

Project/File저장 구조

프로젝트, 폴더, 파일, 최근 수정 시각을 repository 계약으로 관리한다.

Collaboration실시간 이벤트

join_file, code_change, cursor_change를 room 단위로 분리한다.

Ops품질과 배포

Redis, 로그, health check, E2E 테스트가 운영 품질을 검증한다.

요구사항 구현 책임 빠지면 생기는 문제 잠글 테스트
회원 인증가입, 로그인, 프로필 AuthService, JwtStrategy, AuthGuard Gateway와 REST의 사용자 기준이 달라짐 토큰 발급, 만료, 보호 API 접근
파일 편집프로젝트와 파일 트리 ProjectService, FileService, repository 다른 사용자 파일 접근, 고아 파일 발생 ownerId 필터와 삭제 트랜잭션
협업 세션코드와 커서 동기화 Gateway room, Redis adapter room 누락, 일부 사용자 메시지 유실 두 클라이언트 이벤트 수신

설계 포인트: 책임 경계를 먼저 잡으면 테이블, DTO, provider, 테스트 범위가 같은 방향으로 정렬된다.