This commit is contained in:
mrT23
2024-10-01 08:20:16 +03:00
parent b42ded61f8
commit da0bd84746
3 changed files with 10 additions and 10 deletions

View File

@ -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>

View File

@ -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

View File

@ -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)