-
Notifications
You must be signed in to change notification settings - Fork 0
docs: team/팀을 retro-room/회고방으로 용어 통일 (#65) #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
## API 명세서 변경 - README.md: 팀(Team) 섹션을 회고방(Retro Room)으로 변경 - 에러 코드 TEAM → RETRO로 통일 - teamId → retroRoomId, teamName → retroRoomName - "팀" → "회고방" 용어 통일 ## 코드 변경 - error.rs: TEAM4004 주석을 RETRO4004로 수정 ## 수정된 파일 - docs/api-specs/README.md - docs/api-specs/012-retrospect-detail.md - docs/api-specs/014-retrospect-participant-create.md - docs/api-specs/015-retrospect-participants-list.md - docs/api-specs/018-retrospect-references-list.md - docs/api-specs/022-retrospect-analysis.md - docs/api-specs/023-retrospect-search.md - docs/api-specs/025-response-like-toggle.md - docs/api-specs/026-response-comments-list.md - docs/api-specs/027-response-comment-create.md Co-Authored-By: Claude Opus 4.5 <[email protected]>
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📝 WalkthroughWalkthroughRenamed analysis field Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~22 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Co-Authored-By: Claude Opus 4.5 <[email protected]>
) - retrospect.rs: team_insight → insight, team_id → retro_room_id - dto.rs: team_insight → insight - service.rs: 관련 필드 및 주석 업데이트 - prompt.rs: AI 프롬프트 JSON 필드명 teamInsight → insight - ai/service.rs: 테스트 코드 필드명 업데이트 Co-Authored-By: Claude Opus 4.5 <[email protected]>
- 016-retrospect-draft-save.md: TEAM4031 → RETRO4031 - 020-retrospect-responses-list.md: TEAM4031 → RETRO4031 - 022-retrospect-analysis.md: teamInsight → insight Co-Authored-By: Claude Opus 4.5 <[email protected]>
- retrospect.rs: retro_room_id 필드 제거 (retrospect_room_id만 유지) - service.rs: 회고 생성 시 retro_room_id 설정 제거 DB 컬럼명은 retrospect_room_id 유지, API에서는 camelCase로 retroRoomId 노출 Co-Authored-By: Claude Opus 4.5 <[email protected]>
- teamId → retroRoomId - team_id → retro_room_id - TEAM4031 → RETRO4031 - TEAM4041 → RETRO4041 - TEAM4004 → RETRO4004 - TeamAccessDenied → RetroRoomAccessDenied Co-Authored-By: Claude Opus 4.5 <[email protected]>
- handler.rs: Swagger 설명 "팀 멤버" → "회고방 멤버" - service.rs: 주석 "팀 멤버십" → "회고방 멤버십" - docs/reviews: 기술 용어 "팀 멤버/접근" → "회고방 멤버/접근" 자연어(팀원, 팀 인사이트 등)는 사용자 facing 콘텐츠로 유지 Co-Authored-By: Claude Opus 4.5 <[email protected]>
- teamName → retroRoomName - team_insight → insight - 팀 소속/정보/내/명/ID → 회고방 소속/정보/내/명/ID - member_team → member_retro_room - TeamNotFound → RetroRoomNotFound "팀원"은 자연어 콘텐츠로 유지 Co-Authored-By: Claude Opus 4.5 <[email protected]>
- teamInsight → insight - 팀 멤버/관리자 → 회고방 멤버/관리자 - 팀 전체/레벨 → 회고방 전체/레벨 - 팀 이름 → 회고방 이름 - 해당 팀의 → 해당 회고방의 Co-Authored-By: Claude Opus 4.5 <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
codes/server/src/domain/retrospect/dto.rs (1)
609-615:⚠️ Potential issue | 🟠 MajorUpdate test file to match AnalysisResponse field rename.
AnalysisResponsefield changed fromteam_insighttoinsight. The test struct incodes/server/tests/ai_analysis_live_test.rs(line 23) still references the old field name and will fail deserialization. Update the struct definition and all field accesses to useinsightinstead.
- prompt.rs: "팀 인사이트" → "인사이트" - reviews: not_team_member → not_retro_room_member - reviews: → team 경로 → → retro_room 경로 - reviews: team 테이블 → retro_room 테이블 Co-Authored-By: Claude Opus 4.5 <[email protected]>
- 005-team-join.md → 005-retro-room-join.md - 010-team-retrospects-list.md → 010-retro-room-retrospects-list.md - team-api.md → retro-room-api.md Co-Authored-By: Claude Opus 4.5 <[email protected]>
- 004-auth-logout.md → 029-auth-logout.md - README.md: API-004 → API-029 참조 수정 - 003-auth-token-refresh.md: API-004 → API-029 참조 수정 Co-Authored-By: Claude Opus 4.5 <[email protected]>
583f719 to
81087cc
Compare
- api-012-retrospect-detail.md → 012-retrospect-detail.md - api-013-retrospect-delete.md → 013-retrospect-delete.md - api-016-retrospect-draft-save.md → 016-retrospect-draft-save.md - api-017-retrospect-submit.md → 017-retrospect-submit.md - api-019-retrospect-storage.md → 019-retrospect-storage.md - api-020-retrospect-responses-list.md → 020-retrospect-responses-list.md - api-021-retrospect-export.md → 021-retrospect-export.md - api-023-retrospect-search.md → 023-retrospect-search.md - api-025-response-like-toggle.md → 025-response-like-toggle.md - api-028-exit-service.md → 028-exit-service.md Co-Authored-By: Claude Opus 4.5 <[email protected]>
- 004-auth-logout.md → 029-auth-logout.md - 010-retro-room-retrospects.md 삭제 (010-retro-room-retrospects-list.md와 중복) Co-Authored-By: Claude Opus 4.5 <[email protected]>
- 회고 룸 생성 API → (API-004) - 회고 룸 참여 API → (API-005) - 회고 생성 API → (API-011) Co-Authored-By: Claude Opus 4.5 <[email protected]>
- handler.rs: Swagger 설명 통일 - dto.rs: 검증 메시지 및 주석 통일 - service.rs: 주석 및 에러 메시지 통일 - error.rs: 에러 설명 통일 Co-Authored-By: Claude Opus 4.5 <[email protected]>
모든 API를 "기능 API (API-XXX)" 형식으로 통일 - API-006: 참여 중인 회고방 목록 조회 → 회고방 목록 조회 API (API-006) - API-007: 회고방 순서 변경 → 회고방 순서 변경 API (API-007) - API-008: 회고방 이름 변경 → 회고방 이름 변경 API (API-008) - API-009: 회고방 삭제 → 회고방 삭제 API (API-009) - API-010: 회고방 내 회고 목록 조회 → 회고방 내 회고 목록 조회 API (API-010) Co-Authored-By: Claude Opus 4.5 <[email protected]>
Auth API 형식 통일: - [API-001] 소셜 로그인 → 소셜 로그인 API (API-001) - [API-002] 회원가입 → 회원가입 API (API-002) - [API-003] 토큰 갱신 → 토큰 갱신 API (API-003) - [API-004] 로그아웃 → 로그아웃 API (API-029) Member API: - [API-028] 서비스 탈퇴 → 서비스 탈퇴 API (API-028) - tag "Member" → "Auth"로 변경 Co-Authored-By: Claude Opus 4.5 <[email protected]>
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
Terraform Format 🖌
|
b8b9413 to
7307b77
Compare
- withdraw API가 Auth로 이동하여 Member 태그 불필요 Co-Authored-By: Claude Opus 4.5 <[email protected]>
jsoonworld
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
코드 리뷰 - team/팀을 retro-room/회고방으로 용어 통일
안녕하세요 준환님! 전체적으로 용어 통일 작업이 체계적으로 잘 진행되었습니다 👍
몇 가지 확인 사항과 제안을 각 파일에 코멘트로 남겼으니 확인 부탁드립니다.
요약
- ✅ 에러 코드 TEAM → RETRO 변경 완료
- ✅ 프롬프트 teamInsight → insight 변경 완료
- ✅ 파일명 정리 및 중복 제거 완료
⚠️ 일부 주석/문서 확인 필요 (아래 코멘트 참조)
수고하셨습니다!
| ## 분석 방법 | ||
|
|
||
| ### 1. 팀 인사이트 (teamInsight) | ||
| ### 1. 인사이트 (insight) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 teamInsight → insight로 변경 잘 되었습니다!
한 가지 확인 부탁드릴 점이 있는데요, dto.rs의 AnalysisResponse 구조체에서도 team_insight 필드가 insight로 변경되었는지 확인해주시면 좋겠습니다.
프롬프트와 DTO 필드명이 일치해야 AI 응답 파싱이 정상적으로 동작할 것 같아요.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
확인 감사합니다! dto.rs의 AnalysisResponse에서도 insight로 변경되어 있습니다. 프롬프트와 DTO가 일치합니다. ✅
| pub struct AnalysisResponse { | ||
| /// 회고방 전체를 위한 AI 분석 메시지 | ||
| pub team_insight: String, | ||
| pub insight: String, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 team_insight → insight로 필드명 변경 잘 되었습니다!
prompt.rs의 JSON 예시("insight": ...)와 일치하도록 수정해주셔서 AI 응답 파싱이 정상적으로 동작할 것 같습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 프롬프트, DTO, 테스트 모두 insight로 통일되어 있습니다. ✅
| } | ||
|
|
||
| // retro_room_orders 필드 검증 실패 시 TEAM4004 반환 | ||
| // retro_room_orders 필드 검증 실패 시 RETRO4004 반환 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ 주석을 RETRO4004로 업데이트 해주셨네요! 에러 코드 통일이 잘 되었습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 에러 코드 통일 확인되었습니다. ✅
| // ============================================ | ||
|
|
||
| /// 회고 룸 생성 API | ||
| /// 회고방 생성 API (API-004) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Swagger 문서 제목 형식 통일 깔끔합니다!
`"기능 API (API-XXX)"` 형식으로 일관되게 정리해주셔서 API 문서 가독성이 좋아졌습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! API 문서 가독성 향상을 위해 형식을 통일했습니다. ✅
| req: RetroRoomCreateRequest, | ||
| ) -> Result<RetroRoomCreateResponse, AppError> { | ||
| // 1. 회고 룸 이름 중복 체크 | ||
| // 1. 회고방 이름 중복 체크 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 주석에서 "회고 룸" → "회고방" 용어 통일 잘 되었습니다!
서비스 레이어의 주석들이 도메인 용어와 일관되게 유지되어 좋네요.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 도메인 용어 일관성을 유지하기 위해 주석도 함께 정리했습니다. ✅
| /// - 답변이 존재하지 않으면 RES4041 (404) 반환 | ||
| /// - 회고방 멤버가 아니면 TEAM4031 (403) 반환 | ||
| /// - 회고방 멤버가 아니면 RETRO4031 (403) 반환 | ||
| async fn find_response_for_member( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ 헬퍼 함수 주석도 `TEAM4031` → `RETRO4031`로 업데이트 해주셨네요!
에러 코드와 주석이 일치하여 코드 가독성이 좋습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 에러 코드와 주석 일치 확인되었습니다. ✅
| } | ||
|
|
||
| /// [API-004] 로그아웃 | ||
| /// 로그아웃 API (API-029) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 확인 요청: 로그아웃 API 번호가 `API-004` → `API-029`로 변경되었는데, 혹시 다른 API가 004번을 사용하게 되어서인지 궁금합니다.
docs/api-specs/에서도 `029-auth-logout.md`로 파일이 있는지 확인해주시면 좋겠습니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
확인 감사합니다! 🙏
docs/api-specs/029-auth-logout.md 파일이 존재하는 것을 확인했습니다. API 번호 체계가 정리되면서 로그아웃이 029번으로 재배정되었습니다. 다른 API들과 번호가 겹치지 않도록 조정된 결과입니다.
| (status = 500, description = "서버 내부 오류", body = ErrorResponse) | ||
| ), | ||
| tag = "Member" | ||
| tag = "Auth" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 탈퇴 API를 `Member` → `Auth` 태그로 이동한 것이 합리적입니다!
인증/계정 관련 기능이 한 곳에 모이게 되어 Swagger UI에서 API 구조가 더 명확해질 것 같습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 인증/계정 관련 기능을 Auth 태그로 통합했습니다. ✅
| assert!(result.is_ok()); | ||
| let analysis = result.unwrap(); | ||
| assert_eq!(analysis.team_insight, "팀이 잘했습니다"); | ||
| assert_eq!(analysis.insight, "팀이 잘했습니다"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 테스트 코드에서도 `team_insight` → `insight`로 일관되게 변경해주셨네요!
DTO, 프롬프트, 테스트가 모두 일치하여 AI 응답 파싱이 정상적으로 동작할 것입니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 추가로 CodeRabbit이 지적한 ai_analysis_live_test.rs 파일도 insight로 변경하여 커밋했습니다. (a5f6d22) ✅
| (status = 400, description = "잘못된 요청 (responseId가 1 미만)", body = ErrorResponse), | ||
| (status = 401, description = "인증 실패", body = ErrorResponse), | ||
| (status = 403, description = "팀 멤버가 아닌 유저가 좋아요 시도", body = ErrorResponse), | ||
| (status = 403, description = "회고방 멤버가 아닌 유저가 좋아요 시도", body = ErrorResponse), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 "팀 멤버" → "회고방 멤버"로 Swagger 에러 설명이 통일되었습니다!
API 문서 전반에 걸쳐 용어가 일관되게 유지되어 좋습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! API 문서 전반에 걸쳐 용어 일관성을 유지하도록 정리했습니다. ✅
codes/server/src/utils/error.rs
Outdated
| Conflict(String), | ||
|
|
||
| /// RETRO4041: 회고 룸 없음 (404) | ||
| /// RETRO4041: 회고 회고방 없음 (404) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💬 사소한 피드백: 주석이 "회고 회고방 없음"으로 되어 있는데, 혹시 "회고방 없음"으로 수정하시면 어떨까요?
```rust
/// RETRO4041: 회고방 없음 (404)
```
타이핑 실수인 것 같아서 말씀드립니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| pub retrospect_id: i64, | ||
| pub title: String, | ||
| pub team_insight: Option<String>, | ||
| pub insight: Option<String>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Entity에서 team_insight → insight 필드명 변경 완료!
team_id 필드도 제거되어 retrospect_room_id만 남게 되었네요. DB 스키마와 코드가 일관되게 정리된 것 같습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! Entity와 DTO가 일관되게 정리되었습니다. ✅
| "message": "회고 분석이 성공적으로 완료되었습니다.", | ||
| "result": { | ||
| "teamInsight": "이번 회고에서 팀은 목표 의식은 분명했지만, 에너지 관리 측면에서 아쉬움이 있었습니다.", | ||
| "insight": "이번 회고에서 팀은 목표 의식은 분명했지만, 에너지 관리 측면에서 아쉬움이 있었습니다.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 API 문서에서도 `teamInsight` → `insight`로 일관되게 변경되었습니다!
코드(DTO, Entity)와 문서가 동기화되어 좋습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 코드와 문서가 동기화되도록 함께 수정했습니다. ✅
| | API-003 | POST | `/api/v1/auth/token/refresh` | 토큰 리프레시 | [003-auth-token-refresh.md](./003-auth-token-refresh.md) | | ||
| | API-004 | POST | `/api/v1/auth/logout` | 로그아웃 | [004-auth-logout.md](./004-auth-logout.md) | | ||
| | API-029 | POST | `/api/v1/auth/logout` | 로그아웃 | [029-auth-logout.md](./029-auth-logout.md) | | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 API 경로 변경 일관성 좋습니다!
`/api/v1/teams` → `/api/v1/retro-rooms`로 엔드포인트가 통일되었고, `teamId` → `retroRoomId`로 Path Parameter도 변경되었네요.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! 엔드포인트와 Path Parameter 모두 통일했습니다. ✅
| | AUTH | 인증 | AUTH4001, AUTH4002, AUTH4003 | | ||
| | TEAM | 팀 | TEAM4001, TEAM4031, TEAM4041, TEAM4091 | | ||
| | RETRO | 회고 | RETRO4001, RETRO4031, RETRO4041 | | ||
| | RETRO | 회고/회고방 | RETRO4001, RETRO4031, RETRO4041, RETRO4091 | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 에러 코드 체계 정리 잘 되었습니다!
`TEAM` 접두사가 제거되고 `RETRO`로 통합되어 에러 코드 도메인이 명확해졌네요:
- `RETRO4001`: 회고방 이름 길이 초과
- `RETRO4031`: 회고방 접근 권한 없음
- `RETRO4041`: 회고/회고방 없음
- `RETRO4091`: 회고방 이름 중복
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
감사합니다! TEAM 접두사를 제거하고 RETRO로 통합하여 에러 코드 도메인을 명확하게 정리했습니다. ✅
- AnalysisResponse 구조체 필드명 변경 - 프롬프트 예시 JSON 키 변경 - 검증 출력 메시지 변경 Co-Authored-By: Claude Opus 4.5 <[email protected]>
|
CodeRabbit이 지적한 변경 내용:
커밋: a5f6d22 |
- "회고 회고방 없음" → "회고방 없음" Co-Authored-By: Claude Opus 4.5 <[email protected]>
|
@jsoonworld 수정해야할 리뷰 모두 완료하였습니다! |
Summary
Changes
README.md
/api/v1/teams→/api/v1/retro-rooms각 API 명세서
코드 (error.rs)
Test plan
closes #65
🤖 Generated with Claude Code
Summary by CodeRabbit
API Changes
Improvements
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.