diff --git a/.gemini/config.yaml b/.gemini/config.yaml new file mode 100644 index 0000000..75f52bc --- /dev/null +++ b/.gemini/config.yaml @@ -0,0 +1,21 @@ +have_fun: false + +memory_config: + disabled: true + +ignore_patterns: + - "**/build/**" + - "**/dist/**" + - "**/generated/**" + - "**/*.lock" + - "**/*.md" + +code_review: + disable: false + comment_severity_threshold: HIGH + max_review_comments: 10 + pull_request_opened: + help: false + summary: true + code_review: false + include_drafts: false \ No newline at end of file diff --git a/.gemini/styleguide.md b/.gemini/styleguide.md new file mode 100644 index 0000000..d873632 --- /dev/null +++ b/.gemini/styleguide.md @@ -0,0 +1,62 @@ +# 코드 리뷰 가이드 (Gemini Code Assist 기준) + +## 목적 + +이 문서는 Gemini Code Assist가 이 저장소의 코드를 리뷰할 때 +어떤 기준과 우선순위로 판단해야 하는지를 정의합니다. + +리뷰의 목적은 **사소한 스타일 지적이 아니라, +실제 의미 있는 문제를 발견하는 것**입니다. + +--- + +## 리뷰 우선순위 + +Gemini는 아래 항목을 우선적으로 검토합니다. + +1. 기능 오류 및 잠재적인 버그 +2. 보안 및 민감 정보 처리 +3. 유지보수성과 가독성 +4. 명확한 성능 문제 + +스타일이나 취향 차이에 대한 의견은 +가독성이나 유지보수에 영향이 있는 경우에만 제안합니다. + +--- + +## 가독성과 유지보수성 + +- 하나의 함수는 하나의 책임을 갖는 것을 권장합니다. +- 중첩이 깊은 로직은 이해를 어렵게 하므로 단순화를 권장합니다. +- 축약된 코드보다 명확한 표현을 우선합니다. + +--- + +## 에러 처리 + +- 광범위한 예외(Exception) 처리는 지양합니다. +- 예외는 명확한 의도를 가지고 처리되어야 합니다. +- 실패 상황은 로그를 통해 확인 가능해야 합니다. + +--- + +## 로깅 + +- 로그는 운영 중 문제 원인을 파악하기 위한 수단입니다. +- 실패 원인과 맥락이 드러나도록 작성합니다. +- 민감 정보는 로그에 포함하지 않습니다. + +--- + +## 성능 관련 지침 + +- 명확한 근거가 없는 미세 최적화는 제안하지 않습니다. +- 실제 영향이 있는 경우에만 성능 개선을 제안합니다. + +--- + +## 리뷰 톤 + +- 반복적이거나 사소한 지적은 피합니다. +- 자동 포맷터가 처리하는 영역은 언급하지 않습니다. +- 간결하고 실행 가능한 형태로 의견을 제시합니다.