Skip to content

[feature] harry 리뷰 룰 자동 제안 job 추가#1787

Merged
seongwon030 merged 3 commits into
develop-fefrom
read-hada-moadong-similarity
Jun 27, 2026
Merged

[feature] harry 리뷰 룰 자동 제안 job 추가#1787
seongwon030 merged 3 commits into
develop-fefrom
read-hada-moadong-similarity

Conversation

@seongwon030

@seongwon030 seongwon030 commented Jun 27, 2026

Copy link
Copy Markdown
Member

작업내용

harry PR 리뷰 워크플로우에 harry-rule-suggest job을 추가했어요. 리뷰에서 발견한 "반복될 만한" 실수 패턴을 harry의 룰 파일(.github/harry-review-rules.md)에 한 줄 추가하는 별도 PR을 자동으로 열어주는 루프예요.

배경: "Claude Code 창시자의 워크플로우" 글의 "코드 리뷰 때 룰을 자동 갱신해 같은 실수 반복을 막는다" 패턴을 모아동에 적용한 거예요.

동작

PR이 새로 열림(opened)
  → harry가 diff + 기존 룰 파일을 읽음
  → 반복될 만한 + 기존 룰에 없는 패턴을 찾음
  → 없으면 종료 (대부분의 PR)
  → 있으면 룰 한 줄 추가한 별도 PR(harry/rule-<번호>)을 염
  → 사람이 검토 후 머지

안전장치

  • opened일 때만 실행 (매 push마다 안 돎 → 비용/노이즈 차단)
  • fork PR 제외 (기존 리뷰 job과 동일 정책)
  • 별도 PR + 사람 머지, 자동 머지 금지
  • base 브랜치에서 새로 따서 룰 PR 생성 → 원본 코드 diff 안 섞임
  • PR 번호/base 브랜치를 env 변수로 전달 → 프롬프트·셸 인젝션 표면 제거

@seongwon030 seongwon030 self-assigned this Jun 27, 2026
@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@vercel

vercel Bot commented Jun 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
moadong Ready Ready Preview, Comment Jun 27, 2026 12:24pm

@github-actions github-actions Bot added the 🚁AI claude, codex 활용 시 label Jun 27, 2026
@coderabbitai

coderabbitai Bot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

@seongwon030, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 54 minutes and 1 second. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0995a41c-d934-4514-afc1-5aa1c9b50f46

📥 Commits

Reviewing files that changed from the base of the PR and between 0ee555c and 87db09e.

📒 Files selected for processing (1)
  • .github/workflows/harry-review.yml

Warning

.coderabbit.yaml has a parsing error

The CodeRabbit configuration file in this repository has a parsing error and default settings were used instead. Please fix the error(s) in the configuration file. You can initialize chat with CodeRabbit to get help with the configuration file.

💥 Parsing errors (1)
Validation error: Invalid regex pattern for base branch. at "reviews.auto_review.base_branches[0]"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch read-hada-moadong-similarity

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@reviewer-harry

reviewer-harry Bot commented Jun 27, 2026

Copy link
Copy Markdown

Claude finished @seongwon030's task in 2m 22s —— View job


harry의 PR 리뷰

  • 리뷰 규칙 파일 읽기
  • PR diff 확인
  • 코드 리뷰 수행
  • 최종 코멘트 업데이트

설계 의도가 명확하고, 안전장치(opened만 실행·fork 제외·사람 머지 필수·env 변수로 인젝션 표면 제거)가 잘 갖춰져 있어요. harry-review job과 구조를 맞춘 것도 일관성 있어 좋아요.

한 가지 아쉬운 점만 인라인으로 남겼어요. --allowedToolsWrite·Edit가 포함돼 있어서, PR diff에 주입 지시가 들어온다면 룰 파일 외의 파일도 건드릴 수 있는 표면이 생겨요. Read,Bash로 좁히는 게 더 안전해요.

@reviewer-harry

reviewer-harry Bot commented Jun 27, 2026

Copy link
Copy Markdown

Claude finished @seongwon030's task in 1m 48s —— View job


harry의 PR 리뷰

리뷰 룰을 PR 리뷰에서 "스스로 키우는" 루프를 더한 게 방향이 좋아요. opened 전용 + 포크 제외 + 별도 PR·사람 머지 + env 변수로 인젝션 표면 차단까지, 안전장치 설계가 기존 리뷰 job 정책과 잘 맞아요. 변경도 한 파일에 한정된 surgical한 추가라 보기 편했어요. 👍

보안 측면(하드코딩 비밀값 없음, 시크릿/토큰 정상 사용, 사용자 입력=PR 번호를 env로 분리)도 깔끔해요.

룰 위반은 없고, 대신 운영 견고성 관점에서 두 가지만 인라인으로 남겼어요. 둘 다 막는 성격이 아니라 "이렇게 하면 더 안전해요" 수준이에요.

  • 룰 PR 브랜치가 PR 번호로만 이름 지어져 re-run/미머지 시 충돌 가능 → concurrency 가드 제안 (line 107)
  • diff 획득 방법이 프롬프트에 안 박혀 있어 실행마다 범위가 달라질 수 있음 → gh pr diff 명시 제안 (line 85-89)

전체적으로 머지해도 무리 없는 변경이에요. 위 두 개는 여유 될 때 반영해 주면 좋아요.


  • 리뷰 규칙 파일 읽기
  • PR diff 확인
  • 코드 리뷰 수행
  • 최종 코멘트 업데이트

Comment thread .github/workflows/harry-review.yml Outdated
Comment thread .github/workflows/harry-review.yml
Comment thread .github/workflows/harry-review.yml
@reviewer-harry

reviewer-harry Bot commented Jun 27, 2026

Copy link
Copy Markdown

Claude finished @seongwon030's task in 51s —— View job


harry의 PR 리뷰

직전 리뷰에서 남긴 세 가지를 이번 푸시에서 모두 반영해 주셨네요. 다시 확인했어요.

  • --allowedToolsRead,Bash로 좁혀서, 룰 파일 외 임의 파일을 편집할 수 있는 표면을 줄였어요. 파일 편집은 셸로 처리하도록 프롬프트에 명시한 것도 일관돼요.
  • ✅ jobs 레벨에 concurrency: harry-rule-${{ github.event.pull_request.number }} 가드를 둬서 같은 PR re-run 시 브랜치/푸시 충돌을 직렬화로 막았어요.
  • ✅ 프롬프트 절차에 gh pr diff "$PR_NUMBER"로 diff 획득 방법을 못박고, diff 분석을 git checkout보다 먼저 끝내도록 순서까지 명시해서 실행마다 결과가 일관되게 됐어요.

보안 측면(하드코딩 비밀값 없음, 시크릿·앱 토큰 정상 사용, 사용자 입력=PR 번호/ base ref를 env로 분리)도 그대로 깔끔하고, 변경도 한 파일에 한정된 surgical한 추가예요.

룰 위반 없어요. 리뷰 룰을 PR 리뷰에서 스스로 키우는 루프, 안전장치까지 잘 마무리됐어요. 머지해도 좋아요 👍
· read-hada-moadong-similarity

@seongwon030 seongwon030 merged commit 9151a70 into develop-fe Jun 27, 2026
6 checks passed
@seongwon030 seongwon030 deleted the read-hada-moadong-similarity branch June 27, 2026 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🚁AI claude, codex 활용 시

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant