Skip to content

Commit

Permalink
fix: update
Browse files Browse the repository at this point in the history
  • Loading branch information
sudo-whodo committed Jan 31, 2025
1 parent 2f88e68 commit bfc31ce
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 27 deletions.
17 changes: 1 addition & 16 deletions entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,5 @@
# Exit on error
set -e

# Check required environment variables
if [ -z "$GITHUB_TOKEN" ]; then
echo "Error: GITHUB_TOKEN environment variable is required"
exit 1
fi

if [ -z "$OPENROUTER_API_KEY" ]; then
echo "Error: OPENROUTER_API_KEY environment variable is required"
exit 1
fi

# Default model if not provided
MODEL=${3:-"anthropic/claude-3.5-sonnet"}

# Run the PR diff analyzer with provided arguments
echo "Running PR analysis for repository: $1, PR: $2, Model: $MODEL"
python /app/pr_diff_analyzer.py --repo "$1" --pr "$2" --model "$MODEL"
python /app/pr_diff_analyzer.py --repo "$1" --pr "$2" --model "$4"
20 changes: 11 additions & 9 deletions pr-diff-bot/pr_diff_analyzer.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,20 +40,21 @@ def __init__(self, github_token: str, openrouter_key: str, model: str = "anthrop
)
self.bot_signature = "<!-- PR-DIFF-BOT-COMMENT -->"

def get_pull_request(self, repo_name: str, pr_number: int) -> PullRequest:
def get_pull_request(self, repo_name: str, pr_number: int) -> Tuple[Repository, PullRequest]:
"""
Get a pull request object from GitHub.
Get a pull request object and its repository from GitHub.
Args:
repo_name (str): Repository name in format 'owner/repo'
pr_number (int): Pull request number
Returns:
PullRequest: GitHub pull request object
Tuple[Repository, PullRequest]: GitHub repository and pull request objects
"""
try:
repo = self.github.get_repo(repo_name)
return repo.get_pull(pr_number)
pr = repo.get_pull(pr_number)
return repo, pr
except Exception as e:
logger.error(f"Error fetching pull request: {str(e)}")
raise
Expand Down Expand Up @@ -110,11 +111,12 @@ def should_analyze_pr(self, pr: PullRequest) -> Tuple[bool, str]:
logger.error(f"Error checking PR analysis status: {str(e)}")
raise

def analyze_diff(self, pr: PullRequest) -> Dict:
def analyze_diff(self, repo: Repository, pr: PullRequest) -> Dict:
"""
Analyze the changes in a pull request.
Args:
repo (Repository): GitHub repository object
pr (PullRequest): GitHub pull request object
Returns:
Expand Down Expand Up @@ -149,7 +151,7 @@ def analyze_diff(self, pr: PullRequest) -> Dict:

if file.status != 'removed':
try:
content = pr.get_repo().get_contents(file.filename, ref=pr.head.sha)
content = repo.get_contents(file.filename, ref=pr.head.sha)
analysis['file_contents'][file.filename] = content.decoded_content.decode('utf-8')
except Exception as e:
logger.warning(f"Could not fetch content for {file.filename}: {str(e)}")
Expand Down Expand Up @@ -352,8 +354,8 @@ def post_analysis(self, repo_name: str, pr_number: int) -> None:
pr_number (int): Pull request number
"""
try:
# Get pull request
pr = self.get_pull_request(repo_name, pr_number)
# Get pull request and repository
repo, pr = self.get_pull_request(repo_name, pr_number)

# Check if we should analyze this PR
should_analyze, current_commit = self.should_analyze_pr(pr)
Expand All @@ -363,7 +365,7 @@ def post_analysis(self, repo_name: str, pr_number: int) -> None:
return

# Analyze the diff
analysis = self.analyze_diff(pr)
analysis = self.analyze_diff(repo, pr)

# Get AI analysis
ai_analysis = self.get_ai_analysis(pr, analysis)
Expand Down
4 changes: 2 additions & 2 deletions test-local.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ fi

# Default values
REPO=${1:-"sudo-whodo/pr-genius"}
PR_NUMBER=${2:-"1"}
PR_NUMBER=${2:-"2"}
MODEL=${3:-"anthropic/claude-3.5-sonnet"}

# Build the container
Expand All @@ -29,4 +29,4 @@ docker run \
-e GITHUB_TOKEN=$GITHUB_TOKEN \
-e OPENROUTER_API_KEY=$OPENROUTER_API_KEY \
pr-diff-analyzer:local \
"$REPO" "$PR_NUMBER" "$MODEL"
"$REPO" "$PR_NUMBER" "--model" "$MODEL"

0 comments on commit bfc31ce

Please sign in to comment.