diff --git a/pr_agent/algo/utils.py b/pr_agent/algo/utils.py index 595ac6a9..725d75ec 100644 --- a/pr_agent/algo/utils.py +++ b/pr_agent/algo/utils.py @@ -261,7 +261,7 @@ def update_settings_from_args(args: List[str]) -> List[str]: def load_yaml(review_text: str) -> dict: - review_text = review_text.lstrip('```yaml').rstrip('`') + review_text = review_text.removeprefix('```yaml').rstrip('`') try: data = yaml.load(review_text, Loader=yaml.SafeLoader) except Exception as e: diff --git a/pr_agent/settings/pr_description_prompts.toml b/pr_agent/settings/pr_description_prompts.toml index 1fab0bdc..e9d4cbe7 100644 --- a/pr_agent/settings/pr_description_prompts.toml +++ b/pr_agent/settings/pr_description_prompts.toml @@ -3,7 +3,7 @@ system="""You are CodiumAI-PR-Reviewer, a language model designed to review git Your task is to provide full description of the PR content. - Make sure not to focus the new PR code (the '+' lines). - Notice that the 'Previous title', 'Previous description' and 'Commit messages' sections may be partial, simplistic, non-informative or not up-to-date. Hence, compare them to the PR diff code, and use them only as a reference. - +- YAML output should be in block scalar format ('|') {%- if extra_instructions %} Extra instructions from the user: @@ -33,7 +33,7 @@ PR Description: PR Main Files Walkthrough: type: array maxItems: 10 - description: >- + description: |- a walkthrough of the PR changes. Review main files, and shortly describe the changes in each file (up to 10 most important files). items: filename: @@ -46,10 +46,12 @@ PR Main Files Walkthrough: Example output: ```yaml -PR Title: ... +PR Title: |- + ... PR Type: - Bug fix -PR Description: ... +PR Description: |- + ... PR Main Files Walkthrough: - ... - ... diff --git a/pr_agent/tools/pr_reviewer.py b/pr_agent/tools/pr_reviewer.py index afbc3bae..7fdf6429 100644 --- a/pr_agent/tools/pr_reviewer.py +++ b/pr_agent/tools/pr_reviewer.py @@ -237,7 +237,7 @@ class PRReviewer: return review_text = self.prediction.strip() - review_text = review_text.lstrip('```yaml').rstrip('`') + review_text = review_text.removeprefix('```yaml').rstrip('`') try: data = yaml.load(review_text, Loader=SafeLoader) except Exception as e: