diff --git a/pr_agent/git_providers/git_provider.py b/pr_agent/git_providers/git_provider.py index 0911d2d2..a4a242f3 100644 --- a/pr_agent/git_providers/git_provider.py +++ b/pr_agent/git_providers/git_provider.py @@ -127,6 +127,9 @@ class GitProvider(ABC): def get_commit_messages(self): pass + def get_pr_id(self): + return "" + def get_main_pr_language(languages, files) -> str: """ Get the main language of the commit. Return an empty string if cannot determine. diff --git a/pr_agent/git_providers/github_provider.py b/pr_agent/git_providers/github_provider.py index 0521716b..39a58144 100644 --- a/pr_agent/git_providers/github_provider.py +++ b/pr_agent/git_providers/github_provider.py @@ -446,3 +446,10 @@ class GithubProvider(GitProvider): logging.info(f"Failed adding line link, error: {e}") return "" + + def get_pr_id(self): + try: + pr_id = f"{self.repo}/{self.pr_num}" + return pr_id + except: + return "" diff --git a/pr_agent/git_providers/gitlab_provider.py b/pr_agent/git_providers/gitlab_provider.py index a1d0b334..c88e01bd 100644 --- a/pr_agent/git_providers/gitlab_provider.py +++ b/pr_agent/git_providers/gitlab_provider.py @@ -378,4 +378,10 @@ class GitLabProvider(GitProvider): commit_messages_str = "" if max_tokens: commit_messages_str = clip_tokens(commit_messages_str, max_tokens) - return commit_messages_str \ No newline at end of file + return commit_messages_str + + def get_pr_id(self): + try: + return str(self.pr.id) + except: + return "" diff --git a/pr_agent/tools/pr_description.py b/pr_agent/tools/pr_description.py index d9600a2e..2214f3b6 100644 --- a/pr_agent/tools/pr_description.py +++ b/pr_agent/tools/pr_description.py @@ -29,7 +29,7 @@ class PRDescription: self.main_pr_language = get_main_pr_language( self.git_provider.get_languages(), self.git_provider.get_files() ) - self.pr_id = f"{self.git_provider.repo}/{self.git_provider.pr_num}" + self.pr_id = self.git_provider.get_pr_id() # Initialize the AI handler self.ai_handler = AiHandler()