Add self-review checkbox functionality to improve tool and update documentation

This commit is contained in:
mrT23
2024-06-17 20:26:09 +03:00
parent 8d44804f84
commit bc09330a44
4 changed files with 41 additions and 9 deletions

View File

@ -42,6 +42,12 @@ CodiumAI PR-Agent aims to help efficiently review and handle pull requests, by p
## News and Updates
### June 17, 2024
New option for a self-review checkbox is now available for the `/improve` tool, along with the option to demand self-review (💎). See more [here](https://pr-agent-docs.codium.ai/tools/improve/#self-review)
<kbd><img src="https://www.codium.ai/images/pr_agent/self_review_1.png" width="512"></kbd>
### June 6, 2024
New option now available (💎) - **apply suggestions**:
@ -58,15 +64,6 @@ New option now available (💎) - **apply suggestions**:
Check out the new [**PR-Agent Code Fine-tuning Benchmark**](https://pr-agent-docs.codium.ai/finetuning_benchmark/)
### May 23, 2024
We released a new version of [PR-Agent Chrome extension](https://chromewebstore.google.com/detail/pr-agent-chrome-extension/ephlnjeghhogofkifjloamocljapahnl), with two new features:
- PR-Agent filters 🎨
- Code suggestions interactions 🔗
See more [here](https://www.youtube.com/watch?v=v9bJ1frtPcg)
## Overview
<div style="text-align:left;">

View File

@ -59,6 +59,30 @@ auto_extended_mode=true
Note that the extended mode divides the PR code changes into chunks, up to the token limits, where each chunk is handled separately (might use multiple calls to GPT-4 for large PRs).
Hence, the total number of suggestions is proportional to the number of chunks, i.e., the size of the PR.
### Self-review
if you set in a configuration file:
```
[pr_code_suggestions]
demand_code_suggestions_self_review = true
```
The `improve` tool will add a checkbox below the suggestions, asking the user to confirm that they have reviewed the suggestions.
You can control the content of the checkbox text by setting:
```
[pr_code_suggestions]
code_suggestions_self_review_text = "... (your text here) ..."
```
![self_review_1](https://codium.ai/images/pr_agent/self_review_1.png){width=512}
In addition, a configuration flag of:
```
[pr_code_suggestions]
approve_pr_on_self_review = true
```
enables the tool to automatically approve the PR when the user checks the self-review checkbox.
!!! tip "Demanding self-review from the PR author"
If you set the number of required reviewers for a PR to 2, this effectively means that the PR author must click the self-review checkbox before the PR can be merged (in addition to a human reviewer).
![self_review_2](https://codium.ai/images/pr_agent/self_review_2.png){width=512}
## Configuration options

View File

@ -100,6 +100,10 @@ max_number_of_calls = 3
parallel_calls = true
rank_extended_suggestions = false
final_clip_factor = 0.8
# self-review checkbox
demand_code_suggestions_self_review=false # add a checkbox for the author to self-review the code suggestions
code_suggestions_self_review_text= "**Author self-review**: I have reviewed the PR code suggestions, and addressed the relevant ones."
approve_pr_on_self_review=false # Pro feature. if true, the PR will be auto-approved after the author clicks on the self-review checkbox
[pr_add_docs] # /add_docs #
extra_instructions = ""

View File

@ -112,6 +112,13 @@ class PRCodeSuggestions:
pr_body = self.generate_summarized_suggestions(data)
get_logger().debug(f"PR output", artifact=pr_body)
# require self-review
if get_settings().pr_code_suggestions.demand_code_suggestions_self_review:
text= get_settings().pr_code_suggestions.code_suggestions_self_review_text
pr_body += f"\n\n- [ ] {text}"
if get_settings().pr_code_suggestions.approve_pr_on_self_review:
pr_body += ' <!-- approve pr self-review -->'
# add usage guide
if get_settings().pr_code_suggestions.enable_help_text:
pr_body += "<hr>\n\n<details> <summary><strong>💡 Tool usage guide:</strong></summary><hr> \n\n"