-
Notifications
You must be signed in to change notification settings - Fork 0
Labels
Milestone
Description
🧾 이슈 개요
제시된 요구사항에 맞춰 PostgresSQL의 테이블(Room, Pt) 스키마를 TypeORM 엔티티로 구현하고, Redis를 캐싱 용도로만 사용하기 위한 연결 설정을 진행합니다.
👤 개발 시나리오
- 서버 실행 시 TypeORM이 DB와 동기화(Synchronize)되어 테이블이 생성된다.
- Redis 연결이 성공적으로 이루어진다.
✅ TODO
- Room 엔티티 구현
room_id(PK, Auto-increment)room_code(Unique) -> NanoID(6)room_password,host_password(Nullable, Hash)host_transfer_policy(Enum: 'no_transfer' | 'auto_transfer')default_role_policy(Enum: 'viewer' | 'editor')created_at,expires_at(Timestamp)
- Pt (Participant) 엔티티 구현
pt_id(PK, UUID)room_id(FK -> Room)role(Enum: 'host' | 'editor' | 'viewer')presence(Enum: 'online' | 'offline')nickname,colorcode-> NanoID(4)created_at,expires_at(Timestamp)
📌 Acceptance Criteria
- 서버 구동 시
Room과Pt테이블이 정확한 컬럼과 타입으로 생성되어야 한다. room_code는 유니크 제약조건이 걸려 있어야 한다.
💬 Remarks
- Redis Cache 는 socket.io 의 메모리를 사용하는 것으로 대체합니다.
- Redis 는 나중에 문서 복원 등을 위해 사용될 수 있습니다.