Skip to content
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

PR時にChatGPTのレビューを挟む #125

Merged
merged 3 commits into from
Dec 13, 2023
Merged

Conversation

takecchi
Copy link
Member

@takecchi takecchi commented Dec 13, 2023

Issue

  • Github Issue: #${issue番号}

変更内容

(変更した内容を記載してください)

確認方法

(確認方法を記載してください)

Screenshot (任意)

Summary by CodeRabbit

- 新機能: AIベースのPRレビュアーを追加しました。この新機能は、GitHub Actionsワークフローとして実装され、プルリクエストとプルリクエストレビューコメントに対してトリガーされます。OpenAIの言語モデルを利用してコードスニペットを徹底的にレビューし、重要な領域での改善を提案します。

Copy link

github-actions bot commented Dec 13, 2023

Image description CodeRabbit


ウォークスルー

この変更は、AIベースのPRレビュアーを使用してコードレビューを行うGitHub Actionsワークフローファイルを追加します。これにより、OpenAIの言語モデルがコードの品質向上と重要な領域の改善を支援します。

変更点

ファイル 概要
.github/workflows/ai-pr-reviewer.yml GitHub Actionsワークフローが追加され、AI-based PR Reviewer & Summarizer with Chat Capabilitiesアクションが使用されています。レビューアクションの設定や環境変数も追加されています。

ポエム

"コードの海を航海する船
AIの風が吹き抜ける
レビューの波を乗り越え
品質の島へと向かう 🚀🌟"



Uplevel your code reviews with CodeRabbit Pro

CodeRabbit Pro

If you like this project, please support us by purchasing the Pro version. The Pro version has advanced context, superior noise reduction and several proprietary improvements compared to the open source version. Moreover, CodeRabbit Pro is free for open source projects.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

Commits Files that changed from the base of the PR and between 652d13f and 7e45033 commits.
Files selected (1)
  • .github/workflows/ai-pr-reviewer.yml (1)
Review comments generated (1)
  • Review: 1
  • LGTM: 0

Tips

Chat with Image description CodeRabbit Bot (@coderabbitai)

  • Reply on review comments left by this bot to ask follow-up questions. A review comment is a comment on a diff or a file.
  • Invite the bot into a review comment chain by tagging @coderabbitai in a reply.

Code suggestions

  • The bot may make code suggestions, but please review them carefully before committing since the line number ranges may be misaligned.
  • You can edit the comment made by the bot and manually tweak the suggestion if it is slightly off.

Pausing incremental reviews

  • Add @coderabbitai: ignore anywhere in the PR description to pause further reviews from the bot.

Comment on lines 1 to 50
name: Code Review

permissions:
contents: read
pull-requests: write

on:
pull_request:
pull_request_review_comment:
types: [ created ]

concurrency:
group:
${{ github.repository }}-${{ github.event.number || github.head_ref ||
github.sha }}-${{ github.workflow }}-${{ github.event_name ==
'pull_request_review_comment' && 'pr_comment' || 'pr' }}
cancel-in-progress: ${{ github.event_name != 'pull_request_review_comment' }}

jobs:
review:
runs-on: ubuntu-latest
steps:
- name: AI-based PR Reviewer & Summarizer with Chat Capabilities
uses: coderabbitai/ai-pr-reviewer@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
with:
debug: false
review_simple_changes: false
review_comment_lgtm: false
openai_light_model: gpt-3.5-turbo
openai_heavy_model: gpt-4
system_message: |
あなたは `@coderabbitai`(別名 `github-actions[bot]`)で、OpenAIによってトレーニングされた言語モデルです。
あなたの目的は、非常に経験豊かなソフトウェアエンジニアとしてコードの断片を徹底的にレビューし、以下のような重要な領域を改善するためのコードスニペットを提案することです:
- Logic
- Security
- Performance
- Data races
- Consistency
- Error handling
- Maintainability
- Modularity
- Complexity
- Optimization
- Best practices: DRY, SOLID, KISS

細かいコードスタイルの問題や、コメント/ドキュメントの不足についてはコメントしないでください。
重要な懸念を特定し、解決することで全体的なコード品質を向上させ、一方で細かい問題は意図的に無視してください。

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The GitHub Actions workflow file looks good overall. However, there's a potential issue with the concurrency group definition. The current setup might lead to unexpected cancellation of jobs.

In your concurrency group definition, you're using github.head_ref which is only available for pull_request events and not for pull_request_review_comment events. This could potentially lead to different concurrency groups for the same PR under different events, which might not be what you want.

Here's a suggested change:

concurrency:
  group:
-    ${{ github.repository }}-${{ github.event.number || github.head_ref ||
-    github.sha }}-${{ github.workflow }}-${{ github.event_name ==
-    'pull_request_review_comment' && 'pr_comment' || 'pr' }}
+    ${{ github.repository }}-${{ github.event.pull_request.number || github.run_id }}-${{ github.workflow }}
  cancel-in-progress: ${{ github.event_name != 'pull_request_review_comment' }}

This change uses github.event.pull_request.number which is available in both pull_request and pull_request_review_comment events. If that's not available (for example, in case of a workflow_dispatch event), it falls back to github.run_id which is unique for each run. This ensures that all jobs related to the same PR will be grouped together, regardless of the event type.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

Commits Files that changed from the base of the PR and between 7e45033 and 662bec7 commits.
Files selected (1)
  • .github/workflows/ai-pr-reviewer.yml (1)
Review comments generated (1)
  • Review: 0
  • LGTM: 1

Tips

Chat with Image description CodeRabbit Bot (@coderabbitai)

  • Reply on review comments left by this bot to ask follow-up questions. A review comment is a comment on a diff or a file.
  • Invite the bot into a review comment chain by tagging @coderabbitai in a reply.

Code suggestions

  • The bot may make code suggestions, but please review them carefully before committing since the line number ranges may be misaligned.
  • You can edit the comment made by the bot and manually tweak the suggestion if it is slightly off.

Pausing incremental reviews

  • Add @coderabbitai: ignore anywhere in the PR description to pause further reviews from the bot.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

Commits Files that changed from the base of the PR and between 662bec7 and bcceb2e commits.
Files selected (1)
  • .github/workflows/ai-pr-reviewer.yml (1)
Review comments generated (1)
  • Review: 0
  • LGTM: 1

Tips

Chat with Image description CodeRabbit Bot (@coderabbitai)

  • Reply on review comments left by this bot to ask follow-up questions. A review comment is a comment on a diff or a file.
  • Invite the bot into a review comment chain by tagging @coderabbitai in a reply.

Code suggestions

  • The bot may make code suggestions, but please review them carefully before committing since the line number ranges may be misaligned.
  • You can edit the comment made by the bot and manually tweak the suggestion if it is slightly off.

Pausing incremental reviews

  • Add @coderabbitai: ignore anywhere in the PR description to pause further reviews from the bot.

@takecchi takecchi marked this pull request as ready for review December 13, 2023 08:35
@takecchi takecchi merged commit 0943b58 into main Dec 13, 2023
4 checks passed
@takecchi takecchi deleted the feature/add-openai-review branch December 13, 2023 08:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant