mirror of
https://github.com/qodo-ai/pr-agent.git
synced 2025-07-03 12:20:38 +08:00
dual
This commit is contained in:
@ -81,7 +81,7 @@ We advise users to apply critical analysis and judgment when implementing the pr
|
|||||||
In addition to mistakes (which may happen, but are rare), sometimes the presented code modification may serve more as an _illustrative example_ than a direct applicable solution.
|
In addition to mistakes (which may happen, but are rare), sometimes the presented code modification may serve more as an _illustrative example_ than a direct applicable solution.
|
||||||
In such cases, we recommend prioritizing the suggestion's detailed description, using the diff snippet primarily as a supporting reference.
|
In such cases, we recommend prioritizing the suggestion's detailed description, using the diff snippet primarily as a supporting reference.
|
||||||
|
|
||||||
### Duel publishing mode
|
### Dual publishing mode
|
||||||
Our recommended approach for presenting code suggestions is through a [table](https://qodo-merge-docs.qodo.ai/tools/improve/#overview) (`--pr_code_suggestions.commitable_code_suggestions=false`).
|
Our recommended approach for presenting code suggestions is through a [table](https://qodo-merge-docs.qodo.ai/tools/improve/#overview) (`--pr_code_suggestions.commitable_code_suggestions=false`).
|
||||||
This method significantly reduces the PR footprint and allows for quick and easy digestion of multiple suggestions.
|
This method significantly reduces the PR footprint and allows for quick and easy digestion of multiple suggestions.
|
||||||
|
|
||||||
@ -92,7 +92,7 @@ To activate dual publishing mode, use the following setting:
|
|||||||
|
|
||||||
```toml
|
```toml
|
||||||
[pr_code_suggestions]
|
[pr_code_suggestions]
|
||||||
duel_publishing_score_threshold = x
|
dual_publishing_score_threshold = x
|
||||||
```
|
```
|
||||||
|
|
||||||
Where x represents the minimum score threshold (>=) for suggestions to be presented as commitable PR comments in addition to the table. Default is -1 (disabled).
|
Where x represents the minimum score threshold (>=) for suggestions to be presented as commitable PR comments in addition to the table. Default is -1 (disabled).
|
||||||
@ -238,7 +238,7 @@ Using a combination of both can help the AI model to provide relevant and tailor
|
|||||||
<td>If set to true, the tool will display the suggestions as commitable code comments. Default is false.</td>
|
<td>If set to true, the tool will display the suggestions as commitable code comments. Default is false.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><b>duel_publishing_score_threshold</b></td>
|
<td><b>dual_publishing_score_threshold</b></td>
|
||||||
<td>Minimum score threshold for suggestions to be presented as commitable PR comments in addition to the table. Default is -1 (disabled).</td>
|
<td>Minimum score threshold for suggestions to be presented as commitable PR comments in addition to the table. Default is -1 (disabled).</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -111,7 +111,7 @@ enable_help_text=false
|
|||||||
max_context_tokens=14000
|
max_context_tokens=14000
|
||||||
#
|
#
|
||||||
commitable_code_suggestions = false
|
commitable_code_suggestions = false
|
||||||
duel_publishing_score_threshold=7 # -1 to disable, [0-10] to set the threshold (>=) for publishing a code suggestion both in a table and as commitable
|
dual_publishing_score_threshold=7 # -1 to disable, [0-10] to set the threshold (>=) for publishing a code suggestion both in a table and as commitable
|
||||||
#
|
#
|
||||||
extra_instructions = ""
|
extra_instructions = ""
|
||||||
rank_suggestions = false
|
rank_suggestions = false
|
||||||
|
@ -166,24 +166,24 @@ class PRCodeSuggestions:
|
|||||||
max_previous_comments=get_settings().pr_code_suggestions.max_history_len,
|
max_previous_comments=get_settings().pr_code_suggestions.max_history_len,
|
||||||
progress_response=self.progress_response)
|
progress_response=self.progress_response)
|
||||||
|
|
||||||
# duel publishing mode
|
# dual publishing mode
|
||||||
if int(get_settings().pr_code_suggestions.duel_publishing_score_threshold) > 0:
|
if int(get_settings().pr_code_suggestions.dual_publishing_score_threshold) > 0:
|
||||||
data_above_threshold = {'code_suggestions': []}
|
data_above_threshold = {'code_suggestions': []}
|
||||||
try:
|
try:
|
||||||
for suggestion in data['code_suggestions']:
|
for suggestion in data['code_suggestions']:
|
||||||
if int(suggestion.get('score', 0)) >= int(get_settings().pr_code_suggestions.duel_publishing_score_threshold) \
|
if int(suggestion.get('score', 0)) >= int(get_settings().pr_code_suggestions.dual_publishing_score_threshold) \
|
||||||
and suggestion.get('improved_code'):
|
and suggestion.get('improved_code'):
|
||||||
data_above_threshold['code_suggestions'].append(suggestion)
|
data_above_threshold['code_suggestions'].append(suggestion)
|
||||||
if not data_above_threshold['code_suggestions'][-1]['existing_code']:
|
if not data_above_threshold['code_suggestions'][-1]['existing_code']:
|
||||||
get_logger().info(f'Identical existing and improved code for duel publishing found')
|
get_logger().info(f'Identical existing and improved code for dual publishing found')
|
||||||
data_above_threshold['code_suggestions'][-1]['existing_code'] = suggestion[
|
data_above_threshold['code_suggestions'][-1]['existing_code'] = suggestion[
|
||||||
'improved_code']
|
'improved_code']
|
||||||
if data_above_threshold['code_suggestions']:
|
if data_above_threshold['code_suggestions']:
|
||||||
get_logger().info(
|
get_logger().info(
|
||||||
f"Publishing {len(data_above_threshold['code_suggestions'])} suggestions in duel publishing mode")
|
f"Publishing {len(data_above_threshold['code_suggestions'])} suggestions in dual publishing mode")
|
||||||
self.push_inline_code_suggestions(data_above_threshold)
|
self.push_inline_code_suggestions(data_above_threshold)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
get_logger().error(f"Failed to publish duel publishing suggestions, error: {e}")
|
get_logger().error(f"Failed to publish dual publishing suggestions, error: {e}")
|
||||||
else:
|
else:
|
||||||
if self.progress_response:
|
if self.progress_response:
|
||||||
self.git_provider.edit_comment(self.progress_response, body=pr_body)
|
self.git_provider.edit_comment(self.progress_response, body=pr_body)
|
||||||
|
Reference in New Issue
Block a user